From c3a7dd476802eec1f5896c4d28b86f9b712cfdd6 Mon Sep 17 00:00:00 2001 From: Amaan Qureshi Date: Sun, 5 Feb 2023 21:28:27 -0500 Subject: feat: improve KDL queries --- README.md | 2 +- lockfile.json | 2 +- lua/nvim-treesitter/parsers.lua | 1 - queries/kdl/folds.scm | 7 ++++++- queries/kdl/highlights.scm | 2 +- queries/kdl/indents.scm | 7 +++++++ queries/kdl/injections.scm | 4 ++++ queries/kdl/locals.scm | 10 ++++++++++ 8 files changed, 30 insertions(+), 5 deletions(-) create mode 100644 queries/kdl/indents.scm create mode 100644 queries/kdl/injections.scm create mode 100644 queries/kdl/locals.scm diff --git a/README.md b/README.md index 94dd25b5f..bbd2b54d2 100644 --- a/README.md +++ b/README.md @@ -249,7 +249,7 @@ We are looking for maintainers to add more parsers and to write query files for - [x] [JSON with comments](https://gitlab.com/WhyNotHugo/tree-sitter-jsonc.git) (maintained by @WhyNotHugo) - [x] [jsonnet](https://github.com/sourcegraph/tree-sitter-jsonnet) (maintained by @nawordar) - [x] [julia](https://github.com/tree-sitter/tree-sitter-julia) (maintained by @theHamsta) -- [x] [kdl](https://github.com/amaanq/tree-sitter-kdl) (experimental, maintained by @amaanq) +- [x] [kdl](https://github.com/amaanq/tree-sitter-kdl) (maintained by @amaanq) - [x] [kotlin](https://github.com/fwcd/tree-sitter-kotlin) (maintained by @SalBakraa) - [x] [lalrpop](https://github.com/traxys/tree-sitter-lalrpop) (maintained by @traxys) - [x] [latex](https://github.com/latex-lsp/tree-sitter-latex) (maintained by @theHamsta, @clason) diff --git a/lockfile.json b/lockfile.json index 8529912b2..0ce5630d1 100644 --- a/lockfile.json +++ b/lockfile.json @@ -231,7 +231,7 @@ "revision": "e2f449e2bcc95f1d07ceb62d67f986005f73a6be" }, "kdl": { - "revision": "f83f3943568c7e7b4f5e0de1b04d722223bd4d80" + "revision": "92fcc2fe21474f9f855617a6f705fe3cdb288bfe" }, "kotlin": { "revision": "e4637037a5fe6f25fe66c305669faa0855f35692" diff --git a/lua/nvim-treesitter/parsers.lua b/lua/nvim-treesitter/parsers.lua index 33196bd8d..67fc7bb36 100644 --- a/lua/nvim-treesitter/parsers.lua +++ b/lua/nvim-treesitter/parsers.lua @@ -757,7 +757,6 @@ list.kdl = { files = { "src/parser.c", "src/scanner.c" }, }, maintainers = { "@amaanq" }, - experimental = true, } list.kotlin = { diff --git a/queries/kdl/folds.scm b/queries/kdl/folds.scm index 04a2ba28e..81acf643e 100644 --- a/queries/kdl/folds.scm +++ b/queries/kdl/folds.scm @@ -1,3 +1,8 @@ ; Folds -(node_children) @fold +[ + (node) + (node_children) + (string) + (multi_line_comment) +] @fold diff --git a/queries/kdl/highlights.scm b/queries/kdl/highlights.scm index 0ef693d5a..35da6ec63 100644 --- a/queries/kdl/highlights.scm +++ b/queries/kdl/highlights.scm @@ -48,7 +48,7 @@ [ (single_line_comment) (multi_line_comment) -] @comment +] @comment @spell (node (node_comment) (#set! "priority" 105)) @comment (node (node_field (node_field_comment) (#set! "priority" 105)) @comment) diff --git a/queries/kdl/indents.scm b/queries/kdl/indents.scm new file mode 100644 index 000000000..3bb1ee66d --- /dev/null +++ b/queries/kdl/indents.scm @@ -0,0 +1,7 @@ +(node (node_children) @indent) + +"}" @indent_end + +[ "{" "}" ] @branch + +[ "(" ")" ] @branch diff --git a/queries/kdl/injections.scm b/queries/kdl/injections.scm new file mode 100644 index 000000000..e8f3c2ea7 --- /dev/null +++ b/queries/kdl/injections.scm @@ -0,0 +1,4 @@ +[ + (single_line_comment) + (multi_line_comment) +] @comment diff --git a/queries/kdl/locals.scm b/queries/kdl/locals.scm new file mode 100644 index 000000000..9190cab69 --- /dev/null +++ b/queries/kdl/locals.scm @@ -0,0 +1,10 @@ +(document) @scope +(node (node_children) @scope) +(node_children (node) @scope) + +(identifier) @reference + +(node_field) @definition.field + +(node (identifier) @definition.type) +(type) @definition.type -- cgit v1.2.3-70-g09d2