aboutsummaryrefslogtreecommitdiff
path: root/runtime/queries/kdl
diff options
context:
space:
mode:
authorcgahr2023-11-03 21:21:54 +0000
committerGitHub2023-11-03 21:21:54 +0000
commit5c325fe342c26f31df495ec478a1d427270e8e42 (patch)
treec49ea54536a6ab5cc8296d29ad062e13d5df02f6 /runtime/queries/kdl
parent70bbbd7d193a7928c9b621af9a7e192ef8251f6b (diff)
replace kdl tree-sitter to fix highlighting (#8652)
* replace kdl tree-sitter * kdl: adopt highlights for new tree-sitter * kdl: add indent queries * kdl: add textobjects * kdl: improve syntax highlighting * kdl: update lang-support * kdl: make indents more concise --------- Co-authored-by: Constantin Gahr <constantin.gahr@ipp.mpg.de>
Diffstat (limited to 'runtime/queries/kdl')
-rw-r--r--runtime/queries/kdl/highlights.scm8
-rw-r--r--runtime/queries/kdl/indents.scm3
-rw-r--r--runtime/queries/kdl/textobjects.scm27
3 files changed, 34 insertions, 4 deletions
diff --git a/runtime/queries/kdl/highlights.scm b/runtime/queries/kdl/highlights.scm
index d83bde19..78e5acf4 100644
--- a/runtime/queries/kdl/highlights.scm
+++ b/runtime/queries/kdl/highlights.scm
@@ -1,12 +1,12 @@
-(comment) @comment
(single_line_comment) @comment
+(multi_line_comment) @comment
(node
- name: (identifier) @function)
+ (identifier) @variable)
+
(prop (identifier) @attribute)
-(type) @type
-(bare_identifier) @variable.other.member
+(type (_) @type) @punctuation.bracket
(keyword) @keyword
diff --git a/runtime/queries/kdl/indents.scm b/runtime/queries/kdl/indents.scm
new file mode 100644
index 00000000..bc2ffc15
--- /dev/null
+++ b/runtime/queries/kdl/indents.scm
@@ -0,0 +1,3 @@
+(node_children) @indent
+
+ "}" @outdent
diff --git a/runtime/queries/kdl/textobjects.scm b/runtime/queries/kdl/textobjects.scm
new file mode 100644
index 00000000..7f9a562c
--- /dev/null
+++ b/runtime/queries/kdl/textobjects.scm
@@ -0,0 +1,27 @@
+(type (_) @test.inside) @test.around
+
+(node
+ children: (node_children)? @class.inside) @class.around
+
+(node
+ children: (node_children)? @function.inside) @function.around
+
+(node (identifier) @function.movement)
+
+[
+ (single_line_comment)
+ (multi_line_comment)
+] @comment.inside
+
+[
+ (single_line_comment)+
+ (multi_line_comment)+
+] @comment.around
+
+[
+ (prop)
+ (value)
+] @parameter.inside
+
+(value (type) ? (_) @parameter.inside @parameter.movement . ) @parameter.around
+