Replacement for scintilla.

Started by Calin Leafshade, Sun 26/01/2014 21:49:01

Previous topic - Next topic

Calin Leafshade

Scintilla.net is old, slow and not very portable.  I propose we change to this:

http://www.codeproject.com/Articles/161871/Fast-Colored-TextBox-for-syntax-highlighting

It's a pure .net(I think) syntax highlighted text box. It's also just a normal winforms control so we can do away with the weird scintilla wrappers.

Thoughts?

BigMc

So is this more portable? Will this work with mono on Linux?

tzachs

I've had big headaches in the past while working with scintilla (including some very ugly hacks while integrating the docking suite with it), so I'm all for it. Especially since the control you linked to looks very nice and feature complete.

Some points of concern:
- Do you know of any big project that uses this control successfully?
- Is the license good for us?
- Know that you will be entering a world of pain if you actually attempt this. It looks like a lot of work configuring and integrating it. You will also need to make a list of all the text editing features AGS currently has, and making sure they all still work.



monkey0506

I'm all for ditching the "weird scintilla wrappers". That was one of the most awkward and frustrating pieces of the editor code I've come across personally. Oh, and the code folding in this looks much, much nicer. Have fun in the world of pain! ;-D

Sslaxx

Quote from: tzachs on Mon 27/01/2014 17:16:22
I've had big headaches in the past while working with scintilla (including some very ugly hacks while integrating the docking suite with it), so I'm all for it. Especially since the control you linked to looks very nice and feature complete.

Some points of concern:
- Do you know of any big project that uses this control successfully?
- Is the license good for us?
- Know that you will be entering a world of pain if you actually attempt this. It looks like a lot of work configuring and integrating it. You will also need to make a list of all the text editing features AGS currently has, and making sure they all still work.
License is Lesser GPL v3. This is GPL compatible, and should be Artistic License compatible too.
Stuart "Sslaxx" Moore.

Alan v.Drake

It enforces spaces over tabssssss! :angry:

- Alan

Crimson Wizard

Quote from: Alan v.Drake on Thu 30/01/2014 17:21:47
It enforces spaces over tabssssss! :angry:
It's open source and LGPL, this may be changed.

monkey0506

Quote from: Alan v.Drake on Thu 30/01/2014 17:21:47
It enforces spaces over tabssssss! :angry:

- Alan

Good, it enforces good style.

Calin Leafshade


RickJ

Tab vs Spaces ... must be a couple of decades since I head that debate.  It's hardly relevant any more since most code editors (including Scite/Scintilla) effortlessly convert back and forth.  I suppose it would be a requirement for any Scintilla replacement lest we end up in "holy war!".  Just saying ...

Calin Leafshade

So I rolled up my sleeves, made a new branch and started:



At this point the dependency on scintilla is completely gone and AGS works minus some features like autocomplete.

Sslaxx

Looking good, Calin! Autocomplete would make it great. Stuff like extra syntax highlighting (take a Lua.Call statement for example - perhaps differentiating a bit between the "Lua" and the "Call") would be a cherry on top.
Stuart "Sslaxx" Moore.

Calin Leafshade

#12
Those particular items dont highlight because the Lua plugin is disabled for that project :-[

It would be highlighted just fine if the plugin were enabled and the script header were injected.  :>

SMF spam blocked by CleanTalk