On 2018-03-21 08:01 PM, Lex Trotman wrote:
On 22 March 2018 at 10:35, Matthew Brush mbrush@codebrainz.ca wrote:
Hi,
Going forward, are we going to use the Scintilla LongTerm3 branch or v4.x releases?
Interesting question. I had been assuming that once Neil settled it down and after the next round of LTS Linuxen were released with C++17 (at least in the repos if not by default) we would go with Scintilla 4, but so far I havn't seen any changes there that excite me greatly.
I would think by the time older LTS distros are up to C++17, that Scintillua/LongTerm3 will have no reason to exist anymore. IIUC it's only the new maintainer of that branch needing to stick to C++11 for his own project(s) for now and so can't use the tip of Scintilla code. I assume that eventually the goal is to have Scintillua into the mainline or some future external library containing all of Scintilla's lexers (see scintilla-interest mailing list).
If LongTerm3, is there any opposition to integrating the new LPeg lexer so we can use/write lexers in Lua/PEG? I might be interested in working on this if it's not going to be controversial.
The downside to this is that we are then stuck on 3 until Mitchell ports Scintillua to 4, and if its in his Scintilla LTS 3 tree he has no incentive to port it to 4. And once its made available in Geany it
See above.
can't be removed. Even if technically it can be removed, once people start using it there will be no going back.
Well yeah, but if one of our dependencies breaks, we break; be it Scintilla or GTK+ or whatever.
And it makes Geany depend on Lua.
Meh, it's small, stable and well maintained. I could imagine it being used for other stuff too, like maybe a core proxy plugin for first class Lua plugins.
And does it compile Lua in, distros will probably not like that?
It can be embedded or linked against a dynamic library, selected at build-time. This is easy to do in the build system.
And will the Lua plugin still work given it has another copy of Lua.
Should work fine. If the Lua versions are compatible, the plugin could even detect and optionally use the version inside Geany (if we exported it), its own, or some external dynamic library.
Regards, Matthew Brush