feat(lang): Add esdl grammar (#3526)

This commit is contained in:
Jaden 2022-08-24 07:51:10 -07:00 committed by GitHub
parent ccae718a67
commit 2b16fd43f9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 88 additions and 0 deletions

View file

@ -24,6 +24,7 @@
| elvish | ✓ | | | `elvish` |
| erb | ✓ | | | |
| erlang | ✓ | ✓ | | `erlang_ls` |
| esdl | ✓ | | | |
| fish | ✓ | ✓ | ✓ | |
| fortran | ✓ | | ✓ | `fortls` |
| gdscript | ✓ | | ✓ | |

View file

@ -1664,3 +1664,16 @@ indent = { tab-width = 4, unit = " " }
[[grammar]]
name = "xit"
source = { git = "https://github.com/synaptiko/tree-sitter-xit", rev = "7d7902456061bc2ad21c64c44054f67b5515734c" }
[[language]]
name = "esdl"
scope = "source.esdl"
injection-regex = "esdl"
file-types = ["esdl"]
comment-token = "#"
indent = { tab-width = 2, unit = " " }
roots = ["edgedb.toml"]
[[grammar]]
name ="esdl"
source = { git = "https://github.com/greym0uth/tree-sitter-esdl", rev = "b840c8a8028127e0a7c6e6c45141adade2bd75cf" }

View file

@ -0,0 +1,74 @@
; Keywords
[
"module"
"using"
"single"
"multi"
"link"
"property"
"constraint"
"tuple"
"annotation"
"abstract"
"scalar"
"type"
"required"
"optional"
"extension"
"function"
] @keyword
(modifier) @keyword
(extending) @keyword
(module name: (identifier) @namespace)
(object_type) @type
(comment) @comment
; Properties
(property) @variable.other.member
(link) @variable.other.member
(annotation) @variable.other.member
(identifier) @variable
(string) @string
(edgeql_fragment) @string
; Builtins
(type) @type
[
"str"
"bool"
"int16"
"int32"
"int64"
"float32"
"float64"
"bigint"
"decimal"
"json"
"uuid"
"bytes"
"datetime"
"duration"
"sequence"
"anytype"
] @type.builtin
(true) @constant.builtin
(false) @constant.builtin
(null) @constant.builtin
; Delimiters
[
";"
","
] @punctuation.delimiter
; Operators
[
"->"
":="
] @operator