New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add lexer and style for LilyPond #1845
Conversation
GNU LilyPond is a text-based music typesetter. Because its concepts are completely different from programming languages, this adds a special-purpose to highlight the special tokens. The SchemeLexer is expanded to gain the ability of detecting when one expression stops. LilyPondLexer subclasses SchemeLexer. Builtins (the most important part) are generated with a script put in external/ (as was already done for Lasso). As part of this change, the CPSALexer is made no longer to inherit from SchemeLexer. The inheritance was unused anyway.
This is now ready for review. |
Is there anything I can do to help this PR move forward? |
No, I just need to find some time to review it :/ |
@Anteru Gentle ping? |
It's on my radar, just busy with other stuff right now -- sorry this is taking that long :( |
Finally got around to this. Merged, thanks! |
Thank you!! |
@Anteru Unfortunately it seems that this PR has broken some checks that have been added in the meantime. I'm on it and will submit a PR very soon. |
I think 2d831c1 fixes the last issues. |
Yeah, you were faster than me :-) Thanks! |
Ok, I still see two quirks:
|
Oh right, the style gallery -- good catch. I think an "exclude" attribute would be indeed the best solution. Could you please prepare a PR for both issues? |
Will do. |
GNU LilyPond is a text-based music typesetter. Because its concepts
are completely different from programming languages, this adds
a special-purpose to highlight the special tokens.
The SchemeLexer is expanded to gain the ability of detecting when
one expression stops. LilyPondLexer subclasses SchemeLexer.
Builtins (the most important part) are generated with a script
put in external/ (as was already done for Lasso).
As part of this change, the CPSALexer is made no longer to
inherit from SchemeLexer. The inheritance was unused anyway.