This repository stores source files, build infrastructure, and tests for Dylan and related syntax definitions.
These definitions are used to generate files that are accepted by:
This work is based heavily upon the work by the Magic Python team and we're grateful for what they've done.
Why do we want to replace the grammars used by our various editor integrations?
- They're all in various states of completeness. Bugfixes haven't been applied everywhere.
- It is annoying to have to maintain 4 different versions of something very similar.
- We can do a much better job, with greater context sensitivity, than the current grammars do. It won't get to the level of having a full parser, but it can be better.
First, install syntaxdev
and any other required packages
by running:
npm install .
Then to generate the syntax definitions:
make generate
Or to run the tests:
make test
Many things are still missing and there's a lot to do! Feel free to dig in!
- Add your name to the
CONTRIBUTORS.rst
file. - Make sure you add tests for your changes.
- Submit a clean pull request (no merge commits, no extra commits, and keep changes restricted to the purpose of the commit). Do ask for help if needed at this stage.
- Syntax definitions from Sublime Text Unofficial Documentation
- Scope naming conventions