Commit 9ce7f17
authored
Add SCSS Grammar (#1)
If an open source Tree-sitter parser is available, we can run `./vendor.sh download` to download the C code thats needed to add a grammar.
I'm using [serenadeai/tree-sitter-scss](https://github.com/serenadeai/tree-sitter-scss) to add the SCSS grammar.
# One time updates
The `vendor.sh` script is using features from the latest version of Bash. MacOS includes an older version of Bash so I updated my system to v5.
# Per Grammar
### Update vendor script
Add grammar: name; version / tag of repo to download; files to download
`["scss"]="v1.0.0;parser.c;scanner.c"`
Add repository
`["scss"]="serenadeai/tree-sitter-scss"`
### Download C code
From root of repo run:
`./vendor.sh download`
### Add Go binding
In new grammar directory add:
- `binding.go`
- `binding_test.go`
Run your test to verify the new grammar works!
# References
- [Install Bash 5 on macOS](https://scriptingosx.com/2019/02/install-bash-5-on-macos/)
- [Creating parsers | Tree-sitter](https://tree-sitter.github.io/tree-sitter/creating-parsers)
- smacker#581 parent e218c58 commit 9ce7f17
File tree
6 files changed
+19622
-1
lines changed- scss
6 files changed
+19622
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
0 commit comments