[Geany] Scintilla 1.75 (Filetype Support and more)

Enrico Tröger enrico.troeger at xxxxx
Thu Jan 31 13:55:14 UTC 2008


On Tue, 29 Jan 2008 18:58:36 -0500, Taylor Venable
<taylor at metasyntax.net> wrote:

> On Tue, 29 Jan 2008 21:54:50 +0100
> Enrico Tröger <enrico.troeger at uvena.de> wrote:
> 
> > The embedded Scintilla component is updated mostly soon after a new
> > Scintilla release is out. And we only remove these lexers we don't
> > need and don't use. No need to carry around unused code.
> 
> > No, adding(or not removing) the lexers in Scintilla isn't a big deal
> > indeed but all other things related to filetypes in Geany is much more
> > work. In highlighting.c, you need to map the Scintilla style names to
> > the style names used in a data/filetype.foo file which you also have
> > to create. You need to add the filetype in filetypes.c and so on.
> 
> OK, I didn't realise that these lexers were being purposefully omitted,
> I thought they were simply not present in whatever version of Scintilla
> was being used.  Although this becomes apparent after checking out
> SciLexer.h which contains the declarations for all the symbols the
> left-out lexers provide.  I suppose it makes sense to remove support
> for file types you can't immediately utilize.
You mean to remove the #defines in SciLexer.h? I don't think this is a
good idea because these #defines doesn't get into the compiled code
unless they are actually used. The only impact is on compilation speed
but it is probably unnoticeable small. But removing them would heavily
increase maintenance work when updating the Scintilla code.

> I'm slightly curious, though, as to the nature of LexOMS (seems to
> provide support for Bash?) which is not part of the Scintilla release.
It's basically a slightly modified LexBash.
The OMS filetype was requested by one of the guys behind
www.omatrix.com. He heavily asked me to add support for their filetype.
So I used LexBash.cxx and modified it a little bit for the OMS format
and the result is LexOMS.cxx. Sometime later, I mailed him multiple
times but he never answered any mail, so I'm thinking in future we
could remove this filetype. But not sure.

> > > about half-an-hour after poking around).  This doesn't provide the
> > Waste of time, sorry.
> 
> Meh, not really.  I did get to read some fairly interesting source
> code.  And now that I'm more familiar with how things work, I can get
> started adding some support for other languages I use (like Smalltalk,
> Lisp, Erlang) which are in Scintilla but not in Geany.  That is, if the
> project is still interested in providing file types in this way?
See below.
 
> > > Scintilla 1.75 also offers several other improvements.  I myself am
> > > partial to the fact that it can render indentation guides over blank
> > > lines.  Does it seem like a good idea to move to this newer version
> > > of
> > Not sure what you mean. Did you try Preferences->Display->Show
> > indentation guides?
> 
> I guess I didn't explain that very well, here's an example:
> 
> [A]
> 
>   if (foo) {
>   |   bar();
> 
>   |   return 0;
>   }
> 
> [B]
> 
>   if (foo) {
>   |   bar();
>   |
>   |   return 0;
>   }
> 
> Older versions of Scintilla worked like [A], but 1.75 can work like
> [B], which I think makes the guide a little more visible (personal
Ok, but the current SVN already does this or am I completely wrong?
I also tried it with the 0.12 release and there it also works, see
attached screenshot.

> Hope my many questions aren't too annoying.  Geany strikes me as an
> awesome opportunity to build an ideal universal lightweight tool for
> programming in any language.  I'm trying to get a feel of how I can
> help it grow, and add the features (like more extensive language
> support) I think are lacking but within easy reach.
Well, adding various languages just to have support for them isn't the
right way, IMO.
See Nick's post(Fri, 25 Jan 2008 13:53:09 +0000) about making the
filetype system more flexible.

Regards,
Enrico

-- 
Get my GPG key from http://www.uvena.de/pub.key
-------------- next part --------------
A non-text attachment was scrubbed...
Name: screen.png
Type: image/png
Size: 49771 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/users/attachments/20080131/e1e26680/attachment.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/users/attachments/20080131/e1e26680/attachment.pgp>


More information about the Users mailing list