Scintilla 4.1.0 is now available from the
scintilla.org web site.
Scintilla 4.1.0 is a major feature release.
An experimental and incomplete feature, bidirectional text (SCI_SETBIDIRECTIONAL), has been added to better support languages like Arabic and Hebrew which are written from right to left. The feature ensures that the selection, caret, and indicators are drawn in the correct places and that mouse events target the correct characters. It is currently implemented on Win32 using DirectWrite and on macOS with Cocoa. It can only be enabled for UTF-8 documents. Some features do not work with bidirectional text or do not work in all circumstances.
The platform interface specified in 4.1.0 will remain stable for the rest of the 4.x series.
Gradient indicators, INDIC_GRADIENT and INDIC_GRADIENTCENTRE, were added. This requires support for drawing gradients in the platform layers which has been done for the bundled platform layers.
Handling of invalid DBCS byte sequences was improved with most invalid bytes displayed as blobs in a similar way to invalid UTF-8.
A C++17 compiler is required. Microsoft Visual C++ 2017.7, GCC 7.1, Clang 4.0, Xcode 9.2 Clang or newer will work. Some slightly older compilers may still work.
Users needing to support old and long term operating systems may be interested in the LongTerm3 branch of Scintilla.
https://scintilla.sourceforge.io/LongTermDownload.html
A list of changes is available on the history page.
http://www.scintilla.org/ScintillaHistory.html
Scintilla uses Mercurial (Hg) for source code control. The repository can be cloned with
hg clone
http://hg.code.sf.net/p/scintilla/code scintilla
Most of the work on bidirectional text was contributed by Uniface and implemented by Raghda Morsy.
Thanks to the contributors of code and documentation and to the testers.
Neil