Recently during integration of UTF-16 support in mdz_containers I came across pretty popular Notepad++ to create text files with different Unicode BOMs. And it seems that Notepad++ (at least last version 7.8.4) lacks a couple of useful things.
- Unicode surrogate characters: if file is UTF-16 (doesn’t matter LE or BE) the characters are shown like this:
If file is UTF-8 everything is ok:
- Other problem is navigation/editing Unicode “grapheme clusters” which should be treated as a single character. Looks like it is possible to navigate inside of them in Notepad++ and consequently break them during editing. It looks like this:
- One more inconvenience happened after I tried to edit ca. 500 MB large text file somewhere in the beginning of it. Notepad++ just hanged without any success.
Maybe these are limitations of Scintilla (editing component which Notepad++ is based on) and not of Notepad++ itself.
This brought me to an idea of writing own text editor/editing component for Windows (“mdzTextEditor” ?), which could be also a good demonstration of mdz_containers abilities concerning texts/data handling correctness and speed…