Many of you have been asking for tutorial videos on NLP++ and here is the first set. More coming soon...
- NLP++ tutorial videos: http://tutorials.visualtext.org
- Analyzers used in the videos: https://github.com/VisualText/nlp-tutorials
- VisualText tutorial videos: http://vttutorials.visualtext.org
The NLP engine is the engine that runs text analyzers writtein in NLP++. The nlp-engine runs on Linux, Windows, and MacOS. It can be called in two different ways:
- Calling the nlp.exe command line executable (this is what the VSCode NLP++ Language Extension does)
- Calling from within C++ or another language that can call c++ functions
You can get help on nlp.exe:
[command arg: --help]
usage: nlp [--version] [--help]
[-INTERP][-COMPILED] INTERP is the default
[-ANA analyzer] name or path to NLP++ analyzer folder
[-IN infile] input text file path
[-OUT outdir] output directory
[-WORK workdir] working directory
[-DEV][-SILENT] -DEV generates logs, -SILENT (default) does not
[infile [outfile]] when no /IN or -OUT specified
Directories in the nlp.exe files:
data nlp engine bootstrap grammar
analyzers default location for nlp++ analyzer folders
visualtext common files for the VisualText IDE
Switch | Function |
---|---|
-INTERP / -COMPILED | Runs NLP++ code interpreted or compiled |
-ANA | name of the analyzer or path to the analyzer folder |
-IN | Input file |
-OUT | Output directory |
-WORK | Working director where the library and executable files are |
-DEV / -SILENT | -DEV generates logs, -SILENT (default) does not |
[infile [outfile]] | when no -IN or -OUT specified |
There is a test directory in the repository that builds a test.exe that calls analyzers using c++ code.
The test directory contains a call to the nlp engine using buffers.
The nlp engine compiles and runs on Linus, Windows, and MacOS. The easist way to compile them is using VSCode using the C++, CMake, and CMake Tools extensions.
To compile the nlp-engine for Linux:
- git clone https://github.com/VisualText/nlp-engine.git
- Install VSCode
- Open the nlp-engine folder in VSCode
- Install the C++, CMake, and CMake Tools extensions into VSCode
- Install the gcc compiler
- Select a "GCC kit" using the bottom status bar
- Click on "Build" in the status bar
To compile the nlp-engine for Windows 10:
- git clone https://github.com/VisualText/nlp-engine.git
- Install VSCode
- Open the nlp-engine folder in VSCode
- Install the C++, CMake, and CMake Tools extensions into VSCode
- Install the community version of VisualStudio 2019
- Select a "Visual Studio Community 2019 Release - x86" kit using the bottom status bar
- Click on "Build" in the status bar
To compile the nlp-engine for the Mac:
- git clone https://github.com/VisualText/nlp-engine.git
- Install VSCode
- Open the nlp-engine folder in VSCode
- Install the C++, CMake, and CMake Tools extensions into VSCode
- Install brew to download mac-specific packages like clang
- Install the clang c++ compiler
- Select the "Clang kit" using the bottom status bar
- Click on "Build" in the status bar
All the dependencies for building nlp engine from source are included in this repository. We use VCPkg to checkout and build ICU from source. We use CMake to build the nlp engine making sure the ICU library is "found" through VCPkg.
git clone --recurse-submodules https://github.com/visualtext/nlp-engine
cd nlp-engine
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg install
cd ..
cmake -DCMAKE_BUILD_TYPE=Debug -B build -S . -DCMAKE_TOOLCHAIN_FILE='./vcpkg/scripts/buildsystems/vcpkg.cmake'
cmake --build build/ --target all
Once the build succeedes, the nlp executable should be in the bin folder along with test-nlp.exe.
git clone --recurse-submodules https://github.com/visualtext/nlp-engine
cd nlp-engine
Make sure VCPkg builds 64 bit binaries (Note: VCPkg is expected to make this the default by Sept 2023 after which this step won't be necessary)
set VCPKG_DEFAULT_TRIPLET=x64-windows
cd vcpkg
bootstrap-vcpkg.bat
vcpkg install
cd ..
cmake -G "Visual Studio 16 2019" -A x64 -B build -S . -DCMAKE_TOOLCHAIN_FILE=./vcpkg/scripts/buildsystems/vcpkg.cmake
cmake --build build --config Debug