From: Neil Hodgson Date: 2001-04-20T08:10:06+09:00 Subject: [ruby-talk:13899] Re: A possible Ruby IDE. Help needed. Guerry Semones: > I downloaded SciTE from the Scintilla site (an editor that demonstrates > Scintilla's capabilities). Anyway, considering some of the notational / > syntactical similarities between python and Ruby, there is already alot > of the color-coding and code-folding that works. I'm going to put up > Ruby in Gvim with color-coding and compare to SciTE and see what's > missing. The LexPython.cxx file with Scintilla should/could be a > starting point. The best starting point for a Ruby lexer is the C/C++/Java/... lexer LexCPP, as it is based on the newer technique of separating the lexing function from the folding function and the folder works on counting block nesting level rather than on indentation as the Python folder does. I had a look at doing a Ruby lexer a while ago but was discouraged by lexical complexity with regular expressions (disambiguating '/' used for division from start of RE), strings with explicitly set delimiters, and here documents and lack of time to handle these. Apart from LexCPP, LexPascal may help in examining keywords to determin nesting. For the abovementioned problem areas, LexPerl is the only lexer that does here documents properly (including stacked here documents) and strings with explicit delimiters but LexPerl is big and complex so shouldn't be read first as it will only serve to discourage. The technique used to disambiguate '/' in JavaScript used in LexCPP will probably be good enoughfor Ruby. Neil