notepad-plus-plus/lexilla
Christian Grasser a6103d5de7 Update to scintilla 5.5.3 & Lexilla 5.4.1
Release 5.5.4 (https://www.scintilla.org/scintilla554.zip)

    Released 18 December 2024.
    Update to Unicode 15.1. Issue #285.
    Improve performance of SCI_BRACEMATCH. Feature #1533.
    Improve performance of DBCS text. Feature #1535.
    Fix wrapping removed lines. Bug #2456.
    Fix moving line down to empty final line and moving empty final line up. Bug #2457.
    On GTK, allow middle click to insert multiple times within a document. Geany Issue #2629.

Release 5.4.2 (https://www.scintilla.org/lexilla542.zip)

    Released 18 December 2024.
    Update to Unicode 15.1. Issue #285.
    Lexer added for Nix "nix". Pull request #282.
    JavaScript: Use correct SCE_HJA_TEMPLATELITERAL style for server-side template literals in HTML instead of client-side style. Issue #286.
    JavaScript: Use correct SCE_HJ_SYMBOLS style for '.' after regex instead of SCE_HJ_WORD. Prevent empty word assertion when non-word character after regex flag. Issue #289.
    PHP: Fix unstable lexing with substyled keyword and unterminated string. Issue #288.
    Rust: Add C string and raw C string literal styles SCE_RUST_CSTRING and SCE_RUST_CSTRINGR. Pull request #292, Issue #268.
    TOML: Don't treat keys without values as errors. Pull request #283.
    Zig: Add SCE_ZIG_IDENTIFIER_STRING for identifiers expressed as strings. Pull request #287.

Fix #15817, fix #10528, fix #15801, close #15982
2025-01-08 07:14:08 +01:00
..
.github/workflows Update to scintilla 5.5.1 & Lexilla 5.3.3 2024-07-23 13:07:50 +02:00
access Update to Scintilla 5.3.3 and Lexilla 5.2.2 2023-02-12 17:11:57 +01: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.5.3 & Lexilla 5.4.1 2025-01-08 07:14:08 +01:00
examples Update to scintilla 5.5.3 & Lexilla 5.4.1 2024-10-20 17:33:07 +02:00
include Update to scintilla 5.5.3 & Lexilla 5.4.1 2025-01-08 07:14:08 +01:00
lexers Update to scintilla 5.5.3 & Lexilla 5.4.1 2025-01-08 07:14:08 +01:00
lexlib Update to scintilla 5.5.3 & Lexilla 5.4.1 2025-01-08 07:14:08 +01:00
scripts Update to scintilla 5.5.2 & Lexilla 5.4.0 2024-08-23 02:59:58 +02:00
src Update to scintilla 5.5.3 & Lexilla 5.4.1 2025-01-08 07:14:08 +01:00
test Update to scintilla 5.5.3 & Lexilla 5.4.1 2025-01-08 07:14:08 +01:00
.gitattributes Update to scintilla 5.5.3 & Lexilla 5.4.1 2025-01-08 07:14:08 +01:00
.gitignore Updated to Scintilla 5.4.2 & Lexilla 5.3.1 2024-03-11 03:58:17 +01: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.5.3 & Lexilla 5.4.1 2024-10-20 17:33:07 +02: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.5.3 & Lexilla 5.4.1 2025-01-08 07:14:08 +01:00
zipsrc.bat Update scintilla 5.3.4 and lexilla 5.2.4 with: 2023-03-13 21:06:09 +01: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