notepad-plus-plus/lexilla
Christian Grasser fc61868cf2 Update to Scintilla 5.3.2 and Lexilla 5.2.1
update to https://www.scintilla.org/scintilla532.zip with:

    Released 6 December 2022.
    Add SCI_REPLACETARGETMINIMAL to change text without causing unchanged prefix and suffix to be marked as modified in change history.
    Draw background colour for EOL annotations with standard and boxed visuals.
    Add SCI_GETSTYLEDTEXTFULL to support 64-bit document positions on Win32 replacing SCI_GETSTYLEDTEXT which is not safe for huge documents. Feature #1455.
    Send SCN_AUTOCCOMPLETED for SCI_AUTOCSHOW triggering insertion because of SCI_AUTOCSETCHOOSESINGLE mode. Feature #1459.
    Change 'paragraph up' commands SCI_PARAUP and SCI_PARAUPEXTEND to go to the start position of the paragraph containing the caret. Only if the caret is already at the start of the paragraph will it go to the start of the previous paragraph. Bug #2363.
    Change release compilation optimization option to favour speed over space. -O2 for MSVC and -O3 for gcc and clang.
    On Win32, avoid blurry display with DirectWrite in GDI scaling mode. Bug #2344.
    On Win32, use the top-level window to find the monitor for DirectWrite rendering parameters. Temporarily switch DPI awareness to find correct monitor in GDI scaling mode. Bug #2344.
    On Qt, implement SCI_SETRECTANGULARSELECTIONMODIFIER for all platforms.
    On Qt, allow string form XPM images for SCI_REGISTERIMAGE.

and https://www.scintilla.org/lexilla521.zip with

    Released 6 December 2022.
    Update to Unicode 14. Feature #1461.
    Change default compilation optimization option to favour speed over space. -O2 for MSVC and -O3 for gcc and clang.
    Batch: Fix comments starting inside strings. Issue #115.
    F#: Lex signed numeric literals more accurately. Issue #110, Issue #111.
    F#: Add specifiers for 64-bit integer and floating point literals. Issue #112.
    Markdown: Stop styling numbers at line start in PRECHAR style. Issue #117.
    PowerShell: Recognise numeric literals more accurately. Issue #118.

Close #12624
2022-12-15 13:11:17 +01:00
..
.github/workflows Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
access Update Scintilla from 5.2.1 to 5.2.2 and Lexilla from 5.1.5 to 5.1.6 2022-04-28 23:27:54 +02:00
bin Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
doc Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
examples Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
include Update to scintilla 5.3.1 and lexilla 5.2.0 2022-10-31 00:45:13 +01:00
lexers Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
lexlib Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
scripts Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
src Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
test Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
.gitattributes Update to scintilla 5.3.1 and lexilla 5.2.0 2022-10-31 00:45:13 +01:00
.gitignore Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
.travis.yml Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
CONTRIBUTING Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
License.txt Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
README Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
cppcheck.suppress Update to scintilla 5.3.1 and lexilla 5.2.0 2022-10-31 00:45:13 +01:00
delbin.bat Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
tgzsrc Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00
version.txt Update to Scintilla 5.3.2 and Lexilla 5.2.1 2022-12-15 13:11:17 +01:00
zipsrc.bat Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5 2022-03-27 17:12:53 +02:00

README

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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