mirror of
				https://github.com/notepad-plus-plus/notepad-plus-plus.git
				synced 2025-10-31 03:24:04 +01:00 
			
		
		
		
	Update with https://www.scintilla.org/scintilla521.zip https://www.scintilla.org/lexilla515.zip - fix setting to bring Scintilla::PositionCR from ScintillaStructures.h inline with Sci_Position.h Sci_PositionCR - add workaround to enable lexer for searchResult commented out SCI_SETILEXER call on searchResult to get one result which is correctly handled by the lexer, added comment about the current problem with property @MarkingsStruct which seems to disappear after call to SCI_SETILEXER or CreateLexer - corrected usage of ObjC lexer - removed unnecessary filter stuff - use own sections for scintilla and lexilla build targets and allow parallel builds - as libscilex is no longer existing, changed to libscintilla - adapt makefiles and cmake - use VS2019 - started simple changes for createlexer adaptations, nullpointercheck missing on return of lexer name from deprecated LexerNameFromID -> undefined behaviour - movement from id -> lexer name, mostly done via LexerNameFromID + switching off corresponding compiler warning - changed to SCI_SETILEXER from SCI_SETLEXER, SCI_SETLEXERLANGUAGE needs to be corrected, see Scintilla5Migration.html - just commented out: SCI_LOADLEXERLIBRARY Fix #10504, close #11419
		
			
				
	
	
		
			50 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.8 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/test/makefile:
 | |
| 	make CLANG=1
 | |
| On macOS, CLANG is set automatically so this can just be
 | |
| 	make
 | |
| 
 | |
| To use MSVC, run lexilla/test/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
 |