diff options
| author | Christian Clason <c.clason@uni-graz.at> | 2023-06-12 09:54:30 -0600 |
|---|---|---|
| committer | Christian Clason <c.clason@uni-graz.at> | 2025-05-12 18:43:40 +0200 |
| commit | 692b051b09935653befdb8f7ba8afdb640adf17b (patch) | |
| tree | 167162b6b129ae04f68c5735078521a72917c742 /runtime/queries/yang | |
| parent | feat(c-family): inherit injections (diff) | |
| download | nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.gz nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.bz2 nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.lz nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.xz nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.zst nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.zip | |
feat!: drop modules, general refactor and cleanup
Diffstat (limited to 'runtime/queries/yang')
| -rw-r--r-- | runtime/queries/yang/folds.scm | 1 | ||||
| -rw-r--r-- | runtime/queries/yang/highlights.scm | 79 | ||||
| -rw-r--r-- | runtime/queries/yang/indents.scm | 20 | ||||
| -rw-r--r-- | runtime/queries/yang/injections.scm | 10 |
4 files changed, 110 insertions, 0 deletions
diff --git a/runtime/queries/yang/folds.scm b/runtime/queries/yang/folds.scm new file mode 100644 index 000000000..fd7d23999 --- /dev/null +++ b/runtime/queries/yang/folds.scm @@ -0,0 +1 @@ +(block) @fold diff --git a/runtime/queries/yang/highlights.scm b/runtime/queries/yang/highlights.scm new file mode 100644 index 000000000..1fb588af1 --- /dev/null +++ b/runtime/queries/yang/highlights.scm @@ -0,0 +1,79 @@ +(comment) @comment @spell + +; Module / submodule +[ + "module" + "submodule" +] @keyword + +; Keywords +(statement_keyword) @keyword + +(statement_keyword + "import") @keyword.import + +(extension_keyword) @function + +; Arguments +(built_in_type) @type.builtin + +(number) @number + +(boolean) @boolean + +(date) @number + +(range + (_ + ".." @punctuation.special)) + +(range + (_ + "|" @punctuation.special)) + +(quoted_range + "\"" @string.special) + +(quoted_range + "'" @string.special) + +(yang_version) @constant.builtin + +(identifier) @variable + +(node_identifier) @variable + +(string) @string + +(string + (escape_sequence) @string.escape) + +(unquoted_string) @string + +(keypath) @string.special.path + +; Always highlight the value of an enum statement as a constant +(enum_value) @constant + +; Highlight xpath and pattern strings differently from plain strings +(statement + (statement_keyword + "must") + (argument + (string) @string.special)) + +(statement + (statement_keyword + "pattern") + (argument + (string) @string.regexp)) + +; Punctuation +(plus_symbol) @operator + +[ + "{" + "}" +] @punctuation.bracket + +";" @punctuation.delimiter diff --git a/runtime/queries/yang/indents.scm b/runtime/queries/yang/indents.scm new file mode 100644 index 000000000..cc4b3caee --- /dev/null +++ b/runtime/queries/yang/indents.scm @@ -0,0 +1,20 @@ +(module) @indent.begin + +(submodule) @indent.begin + +(statement) @indent.begin + +(extension_statement) @indent.begin + +(statement + ";" @indent.end) + +(extension_statement + ";" @indent.end) + +(block + "}" @indent.end @indent.branch) + +((string) @indent.align + (#set! indent.open_delimiter "\"") + (#set! indent.close_delimiter "\"")) diff --git a/runtime/queries/yang/injections.scm b/runtime/queries/yang/injections.scm new file mode 100644 index 000000000..4219eb30a --- /dev/null +++ b/runtime/queries/yang/injections.scm @@ -0,0 +1,10 @@ +((comment) @injection.content + (#set! injection.language "comment")) + +((statement + (statement_keyword + "pattern") + (argument + (string) @injection.content)) + (#set! injection.language "regex") + (#offset! @injection.content 0 1 0 -1)) |
