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/ninja | |
| 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/ninja')
| -rw-r--r-- | runtime/queries/ninja/folds.scm | 1 | ||||
| -rw-r--r-- | runtime/queries/ninja/highlights.scm | 101 | ||||
| -rw-r--r-- | runtime/queries/ninja/indents.scm | 5 | ||||
| -rw-r--r-- | runtime/queries/ninja/injections.scm | 2 |
4 files changed, 109 insertions, 0 deletions
diff --git a/runtime/queries/ninja/folds.scm b/runtime/queries/ninja/folds.scm new file mode 100644 index 000000000..341a8b8c1 --- /dev/null +++ b/runtime/queries/ninja/folds.scm @@ -0,0 +1 @@ +(body) @fold diff --git a/runtime/queries/ninja/highlights.scm b/runtime/queries/ninja/highlights.scm new file mode 100644 index 000000000..8323ee9e9 --- /dev/null +++ b/runtime/queries/ninja/highlights.scm @@ -0,0 +1,101 @@ +[ + "default" + "pool" + "rule" + "build" +] @keyword + +[ + "include" + "subninja" +] @keyword.import + +":" @punctuation.delimiter + +[ + "=" + "|" + "||" + "|@" +] @operator + +[ + "$" + "{" + "}" +] @punctuation.special + +; +; Names +; ===== +(pool + name: (identifier) @type) + +(rule + name: (identifier) @function) + +(let + name: (identifier) @constant) + +(expansion + (identifier) @constant) + +(build + rule: (identifier) @function) + +; +; Paths and Text +; ============== +(path) @string.special.path + +(text) @string + +; +; Builtins +; ======== +(pool + name: (identifier) @type.builtin + (#any-of? @type.builtin "console")) + +(build + rule: (identifier) @function.builtin + (#any-of? @function.builtin "phony" "dyndep")) + +; Top level bindings +; ------------------ +(manifest + (let + name: ((identifier) @constant.builtin + (#any-of? @constant.builtin "builddir" "ninja_required_version")))) + +; Rules bindings +; ----------------- +(rule + (body + (let + name: (identifier) @constant.builtin + (#not-any-of? @constant.builtin + "command" "depfile" "deps" "msvc_deps_prefix" "description" "dyndep" "generator" "in" + "in_newline" "out" "restat" "rspfile" "rspfile_content" "pool")))) + +; +; Expansion +; --------- +(expansion + (identifier) @constant.macro + (#any-of? @constant.macro "in" "out")) + +; +; Escape sequences +; ================ +(quote) @string.escape + +; +; Others +; ====== +[ + (split) + (comment) +] @comment + +(comment) @spell diff --git a/runtime/queries/ninja/indents.scm b/runtime/queries/ninja/indents.scm new file mode 100644 index 000000000..80344cdfb --- /dev/null +++ b/runtime/queries/ninja/indents.scm @@ -0,0 +1,5 @@ +[ + (pool) + (rule) + (build) +] @indent.begin diff --git a/runtime/queries/ninja/injections.scm b/runtime/queries/ninja/injections.scm new file mode 100644 index 000000000..2f0e58eb6 --- /dev/null +++ b/runtime/queries/ninja/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) |
