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/wit | |
| 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/wit')
| -rw-r--r-- | runtime/queries/wit/folds.scm | 12 | ||||
| -rw-r--r-- | runtime/queries/wit/highlights.scm | 166 | ||||
| -rw-r--r-- | runtime/queries/wit/injections.scm | 2 |
3 files changed, 180 insertions, 0 deletions
diff --git a/runtime/queries/wit/folds.scm b/runtime/queries/wit/folds.scm new file mode 100644 index 000000000..7f84ddd2e --- /dev/null +++ b/runtime/queries/wit/folds.scm @@ -0,0 +1,12 @@ +[ + (world_items) + (world_body) + (interface_items) + (interface_body) +] @fold + +(world_items + [ + (use_item) + (import_item) + ])+ @fold diff --git a/runtime/queries/wit/highlights.scm b/runtime/queries/wit/highlights.scm new file mode 100644 index 000000000..1f4b01cce --- /dev/null +++ b/runtime/queries/wit/highlights.scm @@ -0,0 +1,166 @@ +(comment) @comment @spell + +(ty + (id)) @type + +(package_decl + (id) @module) + +(valid_semver) @string.special + +(world_item + name: (id) @module) + +(interface_item + name: (id) @module) + +(import_item + name: (id) @module + (extern_type + (interface_body))) + +(import_item + name: (id) @function + (extern_type + (func_type))) + +(export_item + name: (id) @module + (extern_type + (interface_body))) + +(export_item + name: (id) @function + (extern_type + (func_type))) + +(type_item + alias: (id) @type.definition) + +(func_item + name: (id) @function.method) + +(handle + (id) @type) + +(named_type + name: (id) @variable.parameter) + +(record_item + name: (id) @type) + +(record_field + name: (id) @variable.member) + +(flags_items + name: (id) @type) + +(flags_body + (id) @variable.member) + +(variant_items + name: (id) @type) + +(variant_case + name: (id) @constant) + +(enum_items + name: (id) @type) + +(enum_case + name: (id) @constant) + +(resource_item + name: (id) @type) + +(resource_method + (id) @function.method) + +(resource_method + "constructor" @constructor) + +(toplevel_use_item + "use" @keyword.import) + +(toplevel_use_item + alias: (id) @module) + +(use_item + "use" @keyword.import) + +(use_path + (id) @module) + +(use_names_item + (id) @module) + +"func" @keyword.function + +[ + "type" + "interface" + "world" + "package" + "resource" + "record" + "enum" + "flags" + "variant" +] @keyword.type + +"static" @keyword.modifier + +[ + "include" + "import" + "export" + "as" +] @keyword.import + +[ + "u8" + "u16" + "u32" + "u64" + "s8" + "s16" + "s32" + "s64" + "f32" + "f64" + "float32" ; deprecated + "float64" ; deprecated + "char" + "bool" + "string" + "tuple" + "list" + "option" + "result" + "borrow" +] @type.builtin + +[ + "@" + "_" +] @punctuation.special + +[ + "/" + ";" + ":" + "," + "." + "->" +] @punctuation.delimiter + +[ + "{" + "}" + "(" + ")" + ">" + "<" +] @punctuation.bracket + +"=" @operator diff --git a/runtime/queries/wit/injections.scm b/runtime/queries/wit/injections.scm new file mode 100644 index 000000000..2f0e58eb6 --- /dev/null +++ b/runtime/queries/wit/injections.scm @@ -0,0 +1,2 @@ +((comment) @injection.content + (#set! injection.language "comment")) |
