Wednesday, August 17, 2011

Wx::Scintilla - Latest Scintilla in a box

Back in March 2011, I started a project called Wx::Scintilla in Padre's subversion repository after being encouraged to do that. The idea was to back port the latest and greatest in the awesome Scintilla source editing component for wxPerl-ers and Perl editor users. wxWidgets has a very slow release process given the number of mind-boggling platforms it supports. You cannot reasonably expect to have Scintilla latest stable in stable wxWidgets all the time. When I started the project, I was starting to plan for my future married life, my Perl XS skills were literally-noobish-perlxstut-level and I did not tackle any big C/C++ code for years while I was in Java happy and fertile land. wxWidgets 2.8.x (stable) contained Scintilla 1.70 as Wx::STC while wxWidget 2.9.x (development) had Scintilla 2.03. We needed Perl 5.10 defined-or // operator highlighting in Padre and that was in 1.76 so after getting a big OS compatibility patch from Mark Dootson, Wx::Scintilla 0.11 was released with windows, Linux and MacOS X  32-bit and 64-bit support. Later in July, I got happily married and when I was back, I started working again on backporting wxWidgets 2.9.x Wx::STC back into Wx::Scintilla. I released Wx::Scintilla 0.20 with the optional --stc2 argument release on the same day that Scintilla 2.28 got released with Scintilla 1.7x as default with the optional 2.x. Afterwards, I started releasing a number of Scintilla 2.x-only developer releases to stabilize Scintilla 2.x with properly integrate it with Padre while getting #padre community feedback. The end result is Wx::Scintilla 0.22 (stable). We now have the latest Scintilla 2.28. We even have an updated string variable interpolation Perl lexer that is going to be in Scintilla 2.28+ (Thanks to Kein-Hong Man). I also added an experimental noobish Perl 6 lexer. And Padre.next now requires Wx::Scintilla to install.

So what's next in my big TODO list? Perl World domination next? :)

No comments: