Re: LilyPond parser for Canorus
How does JEdit and JLilyTool solve autocompletion for example? 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. 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 not. Bert What 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 :) Regards. - Matevž Canorus development team http://www.canorus.org ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel
LilyPond parser for Canorus
Hello Lily developers, I'm writing/extending the LilyPond parser for Canorus. The idea (as mentioned a few times before on Canorus and LilyPond MLs) is to have a built-in capabilities in Canorus for editing the current score in LilyPond syntax as well as importing the external LilyPond file of course. Currently I'm writing lots of facilities for parsing the basic Lily elements manually. However, I'd like to know if I could somehow combine the original Lily parser and Canorus, but I don't know wher to start (is LilyPond parser separated as a library)? I'm thinking mostly in terms of GUI like syntax errors/warnings, autocompletion and finally parsing the pretty sophisticated LilyPond syntax itself. I didn't look at LilyPond parser yet. How does JEdit and JLilyTool solve autocompletion for example? What 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 :) Regards. - Matevž Canorus development team http://www.canorus.org signature.asc Description: OpenPGP digital signature ___ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel