diff options
| author | Amaan Qureshi <amaanq12@gmail.com> | 2023-02-21 02:13:55 -0500 |
|---|---|---|
| committer | ObserverOfTime <chronobserver@disroot.org> | 2023-02-23 08:35:27 +0200 |
| commit | 454876fc6d25a699178cb66aeda4014dedb765f3 (patch) | |
| tree | cdb13470b93aa001c6dd5a445200c816dd386514 | |
| parent | ci: add release workflow for luarocks upload (#4109) (diff) | |
| download | nvim-treesitter-454876fc6d25a699178cb66aeda4014dedb765f3.tar nvim-treesitter-454876fc6d25a699178cb66aeda4014dedb765f3.tar.gz nvim-treesitter-454876fc6d25a699178cb66aeda4014dedb765f3.tar.bz2 nvim-treesitter-454876fc6d25a699178cb66aeda4014dedb765f3.tar.lz nvim-treesitter-454876fc6d25a699178cb66aeda4014dedb765f3.tar.xz nvim-treesitter-454876fc6d25a699178cb66aeda4014dedb765f3.tar.zst nvim-treesitter-454876fc6d25a699178cb66aeda4014dedb765f3.zip | |
feat(capnp): improve queries
| -rw-r--r-- | lockfile.json | 2 | ||||
| -rw-r--r-- | queries/capnp/highlights.scm | 44 | ||||
| -rw-r--r-- | queries/capnp/indents.scm | 34 | ||||
| -rw-r--r-- | queries/capnp/injections.scm | 1 | ||||
| -rw-r--r-- | queries/capnp/locals.scm | 90 |
5 files changed, 150 insertions, 21 deletions
diff --git a/lockfile.json b/lockfile.json index 6e35a7187..87af984c8 100644 --- a/lockfile.json +++ b/lockfile.json @@ -33,7 +33,7 @@ "revision": "5b6c4d0d19d79b05c69ad752e11829910e3b4610" }, "capnp": { - "revision": "cb85cddfdf398530110c807ba046822dbaee6afb" + "revision": "9ed3aa8c212cddc94dca087cfe2c30d43234c867" }, "chatito": { "revision": "3baf22e7e507cedf15d1dbc03df8afa50a625586" diff --git a/queries/capnp/highlights.scm b/queries/capnp/highlights.scm index 1fe814b50..8dfb2ba91 100644 --- a/queries/capnp/highlights.scm +++ b/queries/capnp/highlights.scm @@ -1,4 +1,4 @@ -; Preproc (?) +; Preproc (unique_id) @preproc (top_level_annotation_body) @preproc @@ -13,18 +13,12 @@ (import_path) @string -; Types - -(primitive_type) @type.builtin +; Builtins [ - "annotation" - "enum" - "group" - "interface" - "struct" - "union" -] @keyword + (primitive_type) + "List" +] @type.builtin ; Typedefs @@ -52,10 +46,6 @@ (param_identifier) @parameter (return_identifier) @parameter -; Variables - -(identifier) @variable - ; Constants (const_identifier) @constant @@ -68,8 +58,6 @@ (enum_identifier) @type (extend_type) @type -(field_type) @type -(generic_identifier) @type (type_identifier) @type ; Attributes @@ -86,6 +74,16 @@ ; Keywords + +[ + "annotation" + "enum" + "group" + "interface" + "struct" + "union" +] @keyword + [ "extends" "namespace" @@ -95,11 +93,16 @@ ; Literals -(string_literal) @string -(block_text) @string +[ + (string) + (concatenated_string) + (block_text) + (namespace) +] @string + +(escape_sequence) @string.escape (data_string) @string.special -(namespace) @string.special (number) @number @@ -116,6 +119,7 @@ [ "*" "$" + ":" ] @punctuation.special ["{" "}"] @punctuation.bracket diff --git a/queries/capnp/indents.scm b/queries/capnp/indents.scm new file mode 100644 index 000000000..362cc7da0 --- /dev/null +++ b/queries/capnp/indents.scm @@ -0,0 +1,34 @@ +[ + (annotation_targets) + (const_list) + (enum) + (interface) + (implicit_generics) + (generics) + (group) + (method_parameters) + (named_return_types) + (struct) + (struct_shorthand) + (union) +] @indent + +((struct_shorthand (property)) @aligned_indent + (#set! "delimiter" "()")) + +((const_list (const_value)) @aligned_indent + (#set! "delimiter" "[]")) + +[ + "}" + ")" +] @indent_end + +[ "{" "}" ] @branch + +[ "(" ")" ] @branch + +[ + (ERROR) + (comment) +] @auto diff --git a/queries/capnp/injections.scm b/queries/capnp/injections.scm new file mode 100644 index 000000000..4bb7d675d --- /dev/null +++ b/queries/capnp/injections.scm @@ -0,0 +1 @@ +(comment) @comment diff --git a/queries/capnp/locals.scm b/queries/capnp/locals.scm new file mode 100644 index 000000000..fb436bf06 --- /dev/null +++ b/queries/capnp/locals.scm @@ -0,0 +1,90 @@ +[ + (message) + (annotation_targets) + (const_list) + (enum) + (interface) + (implicit_generics) + (generics) + (group) + (method_parameters) + (named_return_types) + (struct) + (struct_shorthand) + (union) +] @scope + +[ + (extend_type) + (field_type) +] @reference +(custom_type (type_identifier) @reference) +(custom_type + (generics + (generic_parameters + (generic_identifier) @reference))) + +(annotation_definition_identifier) @definition + +(const_identifier) @definition.constant + +(enum (enum_identifier) @definition.enum) + +[ + (enum_member) + (field_identifier) +] @definition.field + +(method_identifier) @definition.method + +(namespace) @definition.namespace + +[ + (param_identifier) + (return_identifier) +] @definition.parameter + +(group (type_identifier) @definition.type) + +(struct (type_identifier) @definition.type) + +(union (type_identifier) @definition.type) + +(interface (type_identifier) @definition.type) + +; Generics Related (don't know how to combine these) + +(struct + (generics + (generic_parameters + (generic_identifier) @definition.parameter))) + +(interface + (generics + (generic_parameters + (generic_identifier) @definition.parameter))) + +(method + (implicit_generics + (implicit_generic_parameters + (generic_identifier) @definition.parameter))) + +(method + (generics + (generic_parameters + (generic_identifier) @definition.parameter))) + +(annotation + (generics + (generic_parameters + (generic_identifier) @definition.type))) + +(replace_using + (generics + (generic_parameters + (generic_identifier) @definition.type))) + +(return_type + (generics + (generic_parameters + (generic_identifier) @definition.type))) |
