Autocompletion is very simple - only finds a regex at the cursor
position, and then finds the possible choices only based on the
Documentation. So if you move an engraver to an other context, the
autocompletion will not find it. This is a place for enhancement.
How does JEdit and JLilyTool solve autocompletion for example?
There is also a simple parser that is a rewrite of LilyPond's lexer and
parser in ANTLR. The rewrite is not trivial, as LilyPond uses lex and
bison, i.e. LALR parsing, while ANTLR is LL(k)
Actually I think that if you want to create a complete LilyPond parser,
you would rewrite LilyPond itself. Just think of that you need to parse
all the Scheme code, just to find if a command is a markup command or
I'd like to is to share the most code as possible for easier
maintainence and for being up-to-date.
What do you think? Shared visions welcome :)
Canorus development team
lilypond-devel mailing list