Add highlight support for tree-sitter-query language (tsq) (#845)

* add submodule on tree-sitter/tree-sitter-tsq

mark tsq submodule as shallow

* add tree-sitter-tsq to languages

* add highlight queries for tsq

* Update .gitmodules

Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
pull/853/head
Michael Davis 3 years ago committed by GitHub
parent 43465926be
commit e069fb9dea
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

4
.gitmodules vendored

@ -126,3 +126,7 @@
path = helix-syntax/languages/tree-sitter-vue path = helix-syntax/languages/tree-sitter-vue
url = https://github.com/ikatyang/tree-sitter-vue url = https://github.com/ikatyang/tree-sitter-vue
shallow = true shallow = true
[submodule "helix-syntax/languages/tree-sitter-tsq"]
path = helix-syntax/languages/tree-sitter-tsq
url = https://github.com/tree-sitter/tree-sitter-tsq
shallow = true

@ -0,0 +1 @@
Subproject commit b665659d3238e6036e22ed0e24935e60efb39415

@ -328,3 +328,11 @@ language-server = { command = "swipl", args = [
"-g", "use_module(library(lsp_server))", "-g", "use_module(library(lsp_server))",
"-g", "lsp_server:main", "-g", "lsp_server:main",
"-t", "halt", "--", "stdio"] } "-t", "halt", "--", "stdio"] }
[[language]]
name = "tsq"
scope = "source.tsq"
file-types = ["scm"]
roots = []
comment-token = ";"
indent = { tab-width = 2, unit = " " }

@ -0,0 +1,46 @@
; mark the string passed #match? as a regex
(((predicate_name) @function
(capture)
(string) @string.regexp)
(#eq? @function "#match?"))
; highlight inheritance comments
((query . (comment) @keyword.directive)
(#match? @keyword.directive "^;\ +inherits *:"))
[
"("
")"
"["
"]"
] @punctuation.bracket
":" @punctuation.delimiter
[
(one_or_more)
(zero_or_one)
(zero_or_more)
] @operator
[
(wildcard_node)
(anchor)
] @constant.builtin
[
(anonymous_leaf)
(string)
] @string
(comment) @comment
(field_name) @property
(capture) @label
(predicate_name) @function
(escape_sequence) @escape
(node_name) @variable
Loading…
Cancel
Save