On 2016-08-31 08:42 PM, Lex Trotman wrote:
On 31 August 2016 at 11:27, Matthew Brush mbrush@codebrainz.ca wrote:
On 2016-08-30 06:43 AM, Colomban Wendling wrote:
[...]
Having our own callback means one more indirection, and changing the SciLexer to CONTAINER anyway, so I don't see much advantage just now.
With the `LexClang.so` dynamic lexer I made, dynamic lexers seemed not to fit well (too isolated, too many assumptions that it's a simple dumb lexer and not a semantic-based on, etc) . All I really wanted was a way to disable Scintilla's lexer (ie. switch it to `SCLEX_CONTAINER`) without changing the filetype in Geany, and without doing it behind Geany's back from the plugin.
Agree with Matthew.
The point of not using the standard Scintilla lexer [...]
I wouldn't even call it "standard" lexer. Though it conforms to the same C++ interface as a few other modern, well-maintained lexers, AFAIK only handful of Scintilla's lexers (ex. LexCpp) are actually able to compile as dynamic libraries.
One of the few useful dynamic lexers I've ever seen is Scintillua[0] and it actually makes some kind of sense to be a generic dynamic lexer here since it can proxy for other lexers using a completely different non-Scintilla mechanisms internally (ie. Lua and PEGs).
Cheers, Matthew Brush