git-subtree-dir: vendored_parsers/tree-sitter-sfapex git-subtree-mainline: |
||
|---|---|---|
| .. | ||
| .github/workflows | ||
| apex | ||
| bindings | ||
| common | ||
| docs | ||
| scripts | ||
| soql | ||
| sosl | ||
| .gitignore | ||
| Cargo.toml | ||
| LICENSE | ||
| README.md | ||
| binding.gyp | ||
| nvim-treesitter-setup.md | ||
| package-lock.json | ||
| package.json | ||
README.md
tree-sitter-sfapex
Salesforce grammars for tree-sitter, including Apex, SOQL, and SOSL languages.
Try it out using our playground
If you are a Neo-vim user, the parsers and syntax highlights are part of nvim-treesitter plugin already, guidance.
Status
Most of the parsers are built and tested on large corpus of Apex, I still intend to write automated tests that parse large Apex libraries as part of evaluating the grammar.
Apex
- grammar
- grammar tests
- highlighting queries
- highlighting tests
- tags queries
- tags tests (could use more)
- locals queries
- locals tests (using highlighting)
Anonymous Apex
- grammar
- grammar tests
- highlighting queries
- highlighting tests
- tags queries
- tags tests (could use more)
- locals queries
- locals tests (using highlighting)
This won't be difficult, I just haven't tackled it yet, will largely reuse the Apex grammar with some different construction rules.
SOQL
- grammar
- grammar tests
- highlighting queries
- highlighting tests
SOSL
- grammar
- grammar tests
- highlighting queries
- highlighting tests
(not sure tags and locals are relevant to query grammars)
Questions/Issues
Please open an issue on this repo and we'll work through it.
Contributing
Still figuring this out. By far the most useful contributions would be tests, if you have a scenario that doesn't work you can just provide the example or open a PR with a new failing test and I can figure out what to do about it.