Notepad4 (Notepad2⨯2, Notepad2++) is a light-weight Scintilla based text editor for Windows with syntax highlighting, code folding, auto-completion and API list for many programming languages and documents, bundled with file browser plugin matepath.
Current source contains a simplified implementation (not enabled), for people who need this function (before implemented in Scintilla), please follow following steps:
See https://sourceforge.net/p/scintilla/feature-requests/1417/ and https://www.unicode.org/reports/tr29/#Grapheme_Cluster_Boundaries, without this some text (combining characters, emoji sequences, Hangul syllables, etc.) may not be rendered correctly.
Current source contains a simplified implementation (not enabled), for people who need this function (before implemented in Scintilla), please follow following steps:
scintilla\scripts
folder: a. https://www.unicode.org/Public/UCD/latest/ucd/emoji/emoji-data.txt b. https://www.unicode.org/Public/UCD/latest/ucd/auxiliary/GraphemeBreakProperty.txt c. https://www.unicode.org/Public/emoji/latest/emoji-zwj-sequences.txt d. https://www.unicode.org/Public/UCD/latest/ucd/auxiliary/GraphemeBreakTest.txtscintilla\scripts
folder, runGenerateGraphemeBreak.py
, which will generatescintilla\src\GraphemeBreak.h
scintilla\src\Document.cxx
, searchGraphemeBreak
, enable related line and code blockHowever, when word wrapping is enabled (the default), Unicode Line Breaking is also needed (issue #61), which requires large changes in Scintilla.