50 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
README for Lexilla library.
 | 
						|
 | 
						|
The Lexilla library contains a set of lexers and folders that provides support for
 | 
						|
programming, mark-up, and data languages for the Scintilla source code editing
 | 
						|
component.
 | 
						|
 | 
						|
Lexilla is made available as both a shared library and static library.
 | 
						|
The shared library is called liblexilla.so / liblexilla.dylib / lexilla.dll on Linux / macOS /
 | 
						|
Windows.
 | 
						|
The static library is called liblexilla.a when built with GCC or Clang and liblexilla.lib
 | 
						|
when built with MSVC.
 | 
						|
 | 
						|
Lexilla is developed on Windows, Linux, and macOS and requires a C++17 compiler.
 | 
						|
It may work on other Unix platforms like BSD but that is not a development focus.
 | 
						|
MSVC 2019.4, GCC 9.0, Clang 9.0, and Apple Clang 11.0 are known to work.
 | 
						|
 | 
						|
MSVC is only available on Windows.
 | 
						|
 | 
						|
GCC and Clang work on Windows and Linux.
 | 
						|
 | 
						|
On macOS, only Apple Clang is available.
 | 
						|
 | 
						|
Lexilla requires some headers from Scintilla to build and expects a directory named
 | 
						|
"scintilla" containing a copy of Scintilla 5+ to be a peer of the Lexilla top level
 | 
						|
directory conventionally called "lexilla".
 | 
						|
 | 
						|
To use GCC, run lexilla/src/makefile:
 | 
						|
	make
 | 
						|
 | 
						|
To use Clang, run lexilla/src/makefile:
 | 
						|
	make CLANG=1
 | 
						|
On macOS, CLANG is set automatically so this can just be
 | 
						|
	make
 | 
						|
 | 
						|
To use MSVC, run lexilla/src/lexilla.mak:
 | 
						|
	nmake -f lexilla.mak
 | 
						|
 | 
						|
To build a debugging version of the library, add DEBUG=1 to the command:
 | 
						|
	make DEBUG=1
 | 
						|
	
 | 
						|
The built libraries are copied into lexilla/bin.
 | 
						|
 | 
						|
Lexilla relies on a list of lexers from the lexilla/lexers directory. If any changes are
 | 
						|
made to the set of lexers then source and build files can be regenerated with the
 | 
						|
lexilla/scripts/LexillaGen.py script which requires Python 3 and is tested with 3.7+.
 | 
						|
Unix:
 | 
						|
	python3 LexillaGen.py
 | 
						|
Windows:
 | 
						|
	pyw LexillaGen.py
 |