diff options
| author | ObserverOfTime <chronobserver@disroot.org> | 2024-01-10 18:05:37 +0200 |
|---|---|---|
| committer | Christian Clason <c.clason@uni-graz.at> | 2024-01-19 16:58:37 +0100 |
| commit | fa38f4e6f94b4e67fb80af21178dba3b422efb12 (patch) | |
| tree | f28ad35e6a65f177f33c10091175fb75549f2d8c | |
| parent | fix(highlights): improve consistency (diff) | |
| download | nvim-treesitter-fa38f4e6f94b4e67fb80af21178dba3b422efb12.tar nvim-treesitter-fa38f4e6f94b4e67fb80af21178dba3b422efb12.tar.gz nvim-treesitter-fa38f4e6f94b4e67fb80af21178dba3b422efb12.tar.bz2 nvim-treesitter-fa38f4e6f94b4e67fb80af21178dba3b422efb12.tar.lz nvim-treesitter-fa38f4e6f94b4e67fb80af21178dba3b422efb12.tar.xz nvim-treesitter-fa38f4e6f94b4e67fb80af21178dba3b422efb12.tar.zst nvim-treesitter-fa38f4e6f94b4e67fb80af21178dba3b422efb12.zip | |
fix(highlights): improve member/property distinction
34 files changed, 106 insertions, 95 deletions
diff --git a/queries/chatito/highlights.scm b/queries/chatito/highlights.scm index 0c2dd795a..be17f3457 100644 --- a/queries/chatito/highlights.scm +++ b/queries/chatito/highlights.scm @@ -33,12 +33,12 @@ (variation) @type.qualifier -(alias) @property +(alias) @keyword.directive (number) @number (argument - key: (string) @label + key: (string) @property value: (string) @string) (escape) @string.escape diff --git a/queries/cpon/highlights.scm b/queries/cpon/highlights.scm index 531b3961f..15240d7ae 100644 --- a/queries/cpon/highlights.scm +++ b/queries/cpon/highlights.scm @@ -16,7 +16,7 @@ (_) @string.special) (_ - key: (_) @label) + key: (_) @property) (number) @number diff --git a/queries/ecma/highlights.scm b/queries/ecma/highlights.scm index 223198410..8e62fd1f6 100644 --- a/queries/ecma/highlights.scm +++ b/queries/ecma/highlights.scm @@ -6,11 +6,11 @@ ; Properties ;----------- -(property_identifier) @property +(property_identifier) @variable.member -(shorthand_property_identifier) @property +(shorthand_property_identifier) @variable.member -(private_property_identifier) @property +(private_property_identifier) @variable.member (variable_declarator name: diff --git a/queries/facility/highlights.scm b/queries/facility/highlights.scm index 01f1bab19..553550a70 100644 --- a/queries/facility/highlights.scm +++ b/queries/facility/highlights.scm @@ -33,7 +33,7 @@ service_name: (identifier) @type) (error_set - (identifier) @property) + (identifier) @variable.member) (error_set name: (identifier) @type) @@ -70,10 +70,10 @@ ] @attribute.builtin (parameter - name: (identifier) @property) + name: (identifier) @variable.parameter) (field - name: (identifier) @variable) + name: (identifier) @variable.member) (method name: (identifier) @function.method) diff --git a/queries/fortran/highlights.scm b/queries/fortran/highlights.scm index c88ad9cec..86634e903 100644 --- a/queries/fortran/highlights.scm +++ b/queries/fortran/highlights.scm @@ -235,7 +235,7 @@ ; Properties (derived_type_member_expression - (type_member) @property) + (type_member) @variable.member) ; Operators [ diff --git a/queries/gleam/highlights.scm b/queries/gleam/highlights.scm index 5c34dde7a..e338115ac 100644 --- a/queries/gleam/highlights.scm +++ b/queries/gleam/highlights.scm @@ -128,20 +128,20 @@ arguments: (arguments (argument - label: (label) @property)?)) + label: (label) @variable.member)?)) (record_pattern_argument - label: (label) @property) + label: (label) @variable.member) (record_update_argument - label: (label) @property) + label: (label) @variable.member) (field_access record: (identifier) @variable - field: (label) @property) + field: (label) @variable.member) (data_constructor_argument - (label) @property) + (label) @variable.member) ; Types [ diff --git a/queries/glimmer/highlights.scm b/queries/glimmer/highlights.scm index cfb1af15f..1f2c4ed8a 100644 --- a/queries/glimmer/highlights.scm +++ b/queries/glimmer/highlights.scm @@ -8,7 +8,7 @@ ((tag_name) @constructor (#lua-match? @constructor "^%u")) -(attribute_name) @property +(attribute_name) @attribute (string_literal) @string diff --git a/queries/hurl/highlights.scm b/queries/hurl/highlights.scm index 7dd08ec64..70b220985 100644 --- a/queries/hurl/highlights.scm +++ b/queries/hurl/highlights.scm @@ -1,5 +1,10 @@ ; highlights.scm [ + (key_string) + (json_key_string) +] @property + +[ "[QueryStringParams]" "[FormParams]" "[MultipartFormData]" @@ -8,9 +13,7 @@ "[Asserts]" "[Options]" "[BasicAuth]" - (key_string) - (json_key_string) -] @property +] @module [ "\\" diff --git a/queries/json/highlights.scm b/queries/json/highlights.scm index 17365ed34..ce5be98ae 100644 --- a/queries/json/highlights.scm +++ b/queries/json/highlights.scm @@ -8,7 +8,7 @@ (number) @number (pair - key: (string) @label) + key: (string) @property) (pair value: (string) @string) diff --git a/queries/kotlin/highlights.scm b/queries/kotlin/highlights.scm index 2e5c349d2..b09cb75b9 100644 --- a/queries/kotlin/highlights.scm +++ b/queries/kotlin/highlights.scm @@ -25,17 +25,17 @@ "@" @variable.builtin) (class_parameter - (simple_identifier) @property) + (simple_identifier) @variable.member) (class_body (property_declaration (variable_declaration - (simple_identifier) @property))) + (simple_identifier) @variable.member))) ; id_1.id_2.id_3: `id_2` and `id_3` are assumed as object properties (_ (navigation_suffix - (simple_identifier) @property)) + (simple_identifier) @variable.member)) ; SCREAMING CASE identifiers are assumed to be constants ((simple_identifier) @constant diff --git a/queries/matlab/highlights.scm b/queries/matlab/highlights.scm index 7a1b6c40a..d92808078 100644 --- a/queries/matlab/highlights.scm +++ b/queries/matlab/highlights.scm @@ -86,14 +86,14 @@ (superclass "." - (identifier) @property) + (identifier) @variable.member) (property_name "." - (identifier) @property) + (identifier) @variable.member) (property - name: (identifier) @property) + name: (identifier) @variable.member) ; Types (class_definition diff --git a/queries/objc/highlights.scm b/queries/objc/highlights.scm index dfb513a07..5c56625b8 100644 --- a/queries/objc/highlights.scm +++ b/queries/objc/highlights.scm @@ -229,10 +229,10 @@ ; Properties (property_implementation "@synthesize" - (identifier) @property) + (identifier) @variable.member) -((identifier) @property - (#has-ancestor? @property struct_declaration)) +((identifier) @variable.member + (#has-ancestor? @variable.member struct_declaration)) ; Parameters (method_parameter diff --git a/queries/ocaml/highlights.scm b/queries/ocaml/highlights.scm index ee6127650..3eba55f29 100644 --- a/queries/ocaml/highlights.scm +++ b/queries/ocaml/highlights.scm @@ -76,13 +76,16 @@ ((value_name) @function.builtin (#any-of? @function.builtin "raise" "raise_notrace" "failwith" "invalid_arg")) -; Properties -;----------- +; Fields +;------- [ - (label_name) (field_name) (instance_variable_name) -] @property +] @variable.member + +; Labels +; ------ +(label_name) @label ; Constants ;---------- @@ -306,7 +309,7 @@ ; Attributes ;----------- -(attribute_id) @property +(attribute_id) @attribute ; Comments ;--------- diff --git a/queries/pascal/highlights.scm b/queries/pascal/highlights.scm index f8788a056..5849a167b 100644 --- a/queries/pascal/highlights.scm +++ b/queries/pascal/highlights.scm @@ -325,10 +325,10 @@ name: (identifier) @function) (declProp - getter: (identifier) @property) + getter: (identifier) @variable.member) (declProp - setter: (identifier) @property) + setter: (identifier) @variable.member) ; -- Function parameters (declArg @@ -399,26 +399,26 @@ ; -- Fields (exprDot - rhs: (identifier) @property) + rhs: (identifier) @variable.member) (exprDot - rhs: (exprDot) @property) + rhs: (exprDot) @variable.member) (declClass (declField - name: (identifier) @property)) + name: (identifier) @variable.member)) (declSection (declField - name: (identifier) @property)) + name: (identifier) @variable.member)) (declSection (declVars (declVar - name: (identifier) @property))) + name: (identifier) @variable.member))) (recInitializerField - name: (identifier) @property) + name: (identifier) @variable.member) ; ---------------------------------------------- ;;; ; EVERYTHING BELOW THIS IS OF QUESTIONABLE VALUE ;;; diff --git a/queries/phpdoc/highlights.scm b/queries/phpdoc/highlights.scm index 076a7d528..5e96e93cc 100644 --- a/queries/phpdoc/highlights.scm +++ b/queries/phpdoc/highlights.scm @@ -8,7 +8,7 @@ (tag (tag_name) @_tag (#eq? @_tag "@property") - (variable_name) @property) + (variable_name) @variable.member) (tag (tag_name) @_tag diff --git a/queries/puppet/highlights.scm b/queries/puppet/highlights.scm index 8e99f1268..cebb15e74 100644 --- a/queries/puppet/highlights.scm +++ b/queries/puppet/highlights.scm @@ -36,14 +36,14 @@ (default_case "default" @keyword.conditional) -; Properties +; Attributes (attribute - name: (identifier) @property) + name: (identifier) @attribute) (attribute name: (variable - (identifier) @property)) + (identifier) @attribute)) ; Parameters (lambda diff --git a/queries/rbs/highlights.scm b/queries/rbs/highlights.scm index a627c256b..a40b5957b 100644 --- a/queries/rbs/highlights.scm +++ b/queries/rbs/highlights.scm @@ -53,7 +53,7 @@ [ (ivar_name) (cvar_name) -] @property +] @variable.member (alias_member (method_name) @function) @@ -80,7 +80,7 @@ (const_name (constant) @constant) -(global_name) @property +(global_name) @variable.global ; Standard Arguments (parameter diff --git a/queries/ron/highlights.scm b/queries/ron/highlights.scm index 0cdfe4404..96507323b 100644 --- a/queries/ron/highlights.scm +++ b/queries/ron/highlights.scm @@ -3,7 +3,7 @@ (enum_variant) @constant (struct_entry - (identifier) @property) + (identifier) @variable.member) (struct_entry (enum_variant diff --git a/queries/ruby/highlights.scm b/queries/ruby/highlights.scm index 8116a503e..4e619a772 100644 --- a/queries/ruby/highlights.scm +++ b/queries/ruby/highlights.scm @@ -122,7 +122,7 @@ [ (class_variable) (instance_variable) -] @label +] @variable.member ((identifier) @constant.builtin (#any-of? @constant.builtin "__callee__" "__dir__" "__id__" "__method__" "__send__" "__ENCODING__" "__FILE__" "__LINE__")) @@ -176,7 +176,7 @@ [ (heredoc_beginning) (heredoc_end) -] @constant +] @label [ (bare_symbol) diff --git a/queries/scala/highlights.scm b/queries/scala/highlights.scm index 5b4ee7b1b..711cd36a0 100644 --- a/queries/scala/highlights.scm +++ b/queries/scala/highlights.scm @@ -123,7 +123,7 @@ ; expressions (field_expression - field: (identifier) @property) + field: (identifier) @variable.member) (field_expression value: (identifier) @type diff --git a/queries/smali/highlights.scm b/queries/smali/highlights.scm index 2771a1452..3220b19f2 100644 --- a/queries/smali/highlights.scm +++ b/queries/smali/highlights.scm @@ -73,7 +73,7 @@ ; Fields (field_identifier) @variable.member -(annotation_key) @attribute +(annotation_key) @variable.member ((field_identifier) @constant (#lua-match? @constant "^[%u_]*$")) diff --git a/queries/soql/highlights.scm b/queries/soql/highlights.scm index f54a2f960..5356b8a7f 100644 --- a/queries/soql/highlights.scm +++ b/queries/soql/highlights.scm @@ -1,33 +1,33 @@ (field_identifier - (identifier) @property) + (identifier) @variable.member) (field_identifier (dotted_identifier - (identifier) @property)) + (identifier) @variable.member)) (type_of_clause - (identifier) @property) + (identifier) @variable.member) (when_expression (identifier) @type) (when_expression (field_list - (identifier) @property)) + (identifier) @variable.member)) (when_expression (field_list (dotted_identifier - (identifier) @property))) + (identifier) @variable.member))) (else_expression (field_list - (identifier) @property)) + (identifier) @variable.member)) (else_expression (field_list (dotted_identifier - (identifier) @property))) + (identifier) @variable.member))) (alias_expression (identifier) @label) diff --git a/queries/squirrel/highlights.scm b/queries/squirrel/highlights.scm index 66bc2247c..b33aa41ec 100644 --- a/queries/squirrel/highlights.scm +++ b/queries/squirrel/highlights.scm @@ -85,16 +85,16 @@ (deref_expression "." . - (identifier) @property) + (identifier) @variable.member) (member_declaration - (identifier) @property + (identifier) @variable.member . "=") ((table_slot . - (identifier) @property + (identifier) @variable.member . [ "=" diff --git a/queries/swift/highlights.scm b/queries/swift/highlights.scm index f3387dbef..9b8c25073 100644 --- a/queries/swift/highlights.scm +++ b/queries/swift/highlights.scm @@ -95,18 +95,18 @@ (class_body (property_declaration (pattern - (simple_identifier) @property))) + (simple_identifier) @variable.member))) (protocol_property_declaration (pattern - (simple_identifier) @property)) + (simple_identifier) @variable.member)) (navigation_expression (navigation_suffix - (simple_identifier) @property)) + (simple_identifier) @variable.member)) (value_argument - name: (value_argument_label) @property) + name: (value_argument_label) @variable.member) (import_declaration "import" @keyword.import) diff --git a/queries/tiger/highlights.scm b/queries/tiger/highlights.scm index e77d80229..1d75a7028 100644 --- a/queries/tiger/highlights.scm +++ b/queries/tiger/highlights.scm @@ -110,7 +110,7 @@ (type_identifier) @type -(field_identifier) @property +(field_identifier) @variable.member (identifier) @variable diff --git a/queries/toml/highlights.scm b/queries/toml/highlights.scm index 4e3c41f97..e319f5ef2 100644 --- a/queries/toml/highlights.scm +++ b/queries/toml/highlights.scm @@ -7,6 +7,10 @@ (pair (bare_key)) @property +(pair + (dotted_key + (bare_key) @property)) + ; Literals ;--------- (boolean) @boolean diff --git a/queries/vim/highlights.scm b/queries/vim/highlights.scm index 67f8546b0..54832ffa5 100644 --- a/queries/vim/highlights.scm +++ b/queries/vim/highlights.scm @@ -257,7 +257,7 @@ ] @label (literal_dictionary - (literal_key) @label) + (literal_key) @property) ((scoped_identifier (scope) @_scope diff --git a/queries/wing/highlights.scm b/queries/wing/highlights.scm index 6063dc152..931ca5620 100644 --- a/queries/wing/highlights.scm +++ b/queries/wing/highlights.scm @@ -2,7 +2,7 @@ (reference_identifier) @variable -(member_identifier) @property +(member_identifier) @variable.member ; Classes (custom_type) @type diff --git a/queries/yaml/highlights.scm b/queries/yaml/highlights.scm index 32f77c2cd..375ced906 100644 --- a/queries/yaml/highlights.scm +++ b/queries/yaml/highlights.scm @@ -19,9 +19,10 @@ (comment) @comment @spell -(anchor_name) @type - -(alias_name) @type +[ + (anchor_name) + (alias_name) +] @label (tag) @type @@ -37,13 +38,13 @@ [ (double_quote_scalar) (single_quote_scalar) - ] @variable.member)) + ] @property)) (block_mapping_pair key: (flow_node (plain_scalar - (string_scalar) @variable.member))) + (string_scalar) @property))) (flow_mapping (_ @@ -52,14 +53,14 @@ [ (double_quote_scalar) (single_quote_scalar) - ] @variable.member))) + ] @property))) (flow_mapping (_ key: (flow_node (plain_scalar - (string_scalar) @variable.member)))) + (string_scalar) @property)))) [ "," diff --git a/tests/query/highlights/ecma/test.ts b/tests/query/highlights/ecma/test.ts index ecdfa8929..fa926f930 100644 --- a/tests/query/highlights/ecma/test.ts +++ b/tests/query/highlights/ecma/test.ts @@ -1,15 +1,15 @@ class H { pub_field = "Hello"; - // ^ @property + // ^ @variable.member #priv_field = "World!"; - // ^ @property + // ^ @variable.member #private_method() { // ^ @function.method return `${this.pub_field} -- ${this.#priv_field}`; - // ^ @property - // ^ @property + // ^ @variable.member + // ^ @variable.member } public_method() { diff --git a/tests/query/highlights/gleam/type.gleam b/tests/query/highlights/gleam/type.gleam index 0905e1ea4..da840c194 100644 --- a/tests/query/highlights/gleam/type.gleam +++ b/tests/query/highlights/gleam/type.gleam @@ -6,11 +6,11 @@ pub type Cat { Cat(name: String, cuteness: Int) // <- @constructor // ^ @punctuation.bracket - // ^^^^ @property + // ^^^^ @variable.member // ^ @punctuation.delimiter // ^^^^^^ @type.builtin // ^ @punctuation.delimiter - // ^^^^^^^^ @property + // ^^^^^^^^ @variable.member // ^ @punctuation.delimiter // ^^^ @type.builtin // ^ @punctuation.bracket @@ -20,11 +20,11 @@ fn cats() { Cat(name: "Nubi", cuteness: 2001) // <- @type // ^ @punctuation.bracket - // ^^^^ @property + // ^^^^ @variable.member // ^ @punctuation.delimiter // ^^^^^^ @string // ^ @punctuation.delimiter - // ^^^^^^^^ @property + // ^^^^^^^^ @variable.member // ^ @punctuation.delimiter // ^^^^ @number // ^ @punctuation.bracket @@ -47,7 +47,7 @@ type Box(inner_type) { Box(inner: inner_type) // <- @constructor // ^ @punctuation.bracket - // ^^^^^ @property + // ^^^^^ @variable.member // ^ @punctuation.delimiter // ^^^^^^^^^^ @type // ^ @punctuation.bracket @@ -69,15 +69,15 @@ pub fn have_birthday(person) { // ^^ @operator // ^^^^^^ @variable // ^ @punctuation.delimiter - // ^^^ @property + // ^^^ @variable.member // ^ @punctuation.delimiter // ^^^^^^ @variable // ^ @punctuation.delimiter - // ^^^ @property + // ^^^ @variable.member // ^ @operator // ^ @number // ^ @punctuation.delimiter - // ^^^^^^^^ @property + // ^^^^^^^^ @variable.member // ^ @punctuation.delimiter // ^^^^ @boolean // ^ @punctuation.bracket diff --git a/tests/query/highlights/tiger/identifiers.tig b/tests/query/highlights/tiger/identifiers.tig index e38749071..8d2207dd6 100644 --- a/tests/query/highlights/tiger/identifiers.tig +++ b/tests/query/highlights/tiger/identifiers.tig @@ -6,16 +6,16 @@ type int_array = array of int /* ^ @type.builtin */ type record = {a: int, b: string} -/* ^ @property */ +/* ^ @variable.member */ /* ^ @type.builtin */ -/* ^ @property */ +/* ^ @variable.member */ /* ^ @type.builtin */ var record := record {a = 12, b = "27"} /* ^ @variable */ /* ^ @type */ -/* ^ @property */ -/* ^ @property */ +/* ^ @variable.member */ +/* ^ @variable.member */ var array := int_array[12] of 27; /* ^ @variable */ diff --git a/tests/query/highlights/tiger/object-oriented.tig b/tests/query/highlights/tiger/object-oriented.tig index bf1632485..e67029c42 100644 --- a/tests/query/highlights/tiger/object-oriented.tig +++ b/tests/query/highlights/tiger/object-oriented.tig @@ -21,7 +21,7 @@ let /* ^ @keyword.operator */ in object.a := 27; - /* ^ @property */ + /* ^ @variable.member */ object.meth() /* ^ @function.method */ diff --git a/tests/query/highlights/wing/nested_method.w b/tests/query/highlights/wing/nested_method.w index 4fe5ceb6a..080d29793 100644 --- a/tests/query/highlights/wing/nested_method.w +++ b/tests/query/highlights/wing/nested_method.w @@ -1,4 +1,4 @@ test1.test2.test3(); // <- @variable -// ^ @property +// ^ @variable.member // ^ @function.method.call |
