mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-07 22:10:01 -04:00
highlights(hack): extend queries add tests
This commit is contained in:
parent
77c006eb08
commit
cc0bdabe5f
10 changed files with 280 additions and 5 deletions
|
|
@ -1,4 +1,16 @@
|
|||
(variable) @variable
|
||||
(identifier) @variable
|
||||
((variable) @variable.builtin
|
||||
(#eq? @variable.builtin "$this"))
|
||||
|
||||
(braced_expression) @none
|
||||
|
||||
(scoped_identifier
|
||||
(qualified_identifier
|
||||
(identifier) @type))
|
||||
|
||||
(comment) @comment
|
||||
(heredoc) @comment
|
||||
|
||||
[
|
||||
"function"
|
||||
|
|
@ -10,14 +22,28 @@
|
|||
"type"
|
||||
"interface"
|
||||
"class"
|
||||
"protected"
|
||||
"private"
|
||||
"public"
|
||||
"using"
|
||||
"namespace"
|
||||
"attribute"
|
||||
"const"
|
||||
(xhp_modifier)
|
||||
(final_modifier)
|
||||
"extends"
|
||||
"insteadof"
|
||||
] @keyword
|
||||
|
||||
"use" @include
|
||||
|
||||
[
|
||||
"new"
|
||||
"print"
|
||||
"echo"
|
||||
"newtype"
|
||||
"clone"
|
||||
"as"
|
||||
] @keyword.operator
|
||||
|
||||
[
|
||||
|
|
@ -39,10 +65,30 @@
|
|||
"mixed"
|
||||
"dynamic"
|
||||
"noreturn"
|
||||
] @type
|
||||
] @type.builtin
|
||||
|
||||
(type_specifier
|
||||
(qualified_identifier) @type)
|
||||
(type_specifier) @type
|
||||
(new_expression
|
||||
(_) @type)
|
||||
|
||||
(alias_declaration "newtype" . (_) @type)
|
||||
(alias_declaration "type" . (_) @type)
|
||||
|
||||
(class_declaration
|
||||
name: (identifier) @type)
|
||||
(type_parameter
|
||||
name: (identifier) @type)
|
||||
|
||||
(collection
|
||||
(qualified_identifier
|
||||
(identifier) @type .))
|
||||
|
||||
(function_type_specifier) @function
|
||||
(attribute_modifier) @attribute
|
||||
[
|
||||
"@required"
|
||||
"@lateinit"
|
||||
] @attribute
|
||||
|
||||
[
|
||||
"="
|
||||
|
|
@ -79,6 +125,7 @@
|
|||
"<=>"
|
||||
"<<"
|
||||
">>"
|
||||
"->"
|
||||
"+"
|
||||
"-"
|
||||
"."
|
||||
|
|
@ -107,6 +154,7 @@
|
|||
"/="
|
||||
"%="
|
||||
"**="
|
||||
"=>"
|
||||
|
||||
;; type modifiers
|
||||
"@"
|
||||
|
|
@ -121,15 +169,90 @@
|
|||
(variable) @parameter)
|
||||
|
||||
(call_expression
|
||||
function: (qualified_identifier) @function)
|
||||
function: (qualified_identifier (identifier) @function .))
|
||||
|
||||
(call_expression
|
||||
function: (scoped_identifier (identifier) @function .))
|
||||
|
||||
(call_expression
|
||||
function: (selection_expression
|
||||
(qualified_identifier (identifier) @method .)))
|
||||
|
||||
(qualified_identifier
|
||||
(_) @namespace .
|
||||
(_))
|
||||
|
||||
(use_statement
|
||||
(qualified_identifier
|
||||
(_) @namespace .)
|
||||
(use_clause))
|
||||
|
||||
(use_statement
|
||||
(use_type "namespace")
|
||||
(use_clause
|
||||
(qualified_identifier
|
||||
(identifier) @namespace .)
|
||||
alias: (identifier)? @namespace))
|
||||
|
||||
(use_statement
|
||||
(use_type "const")
|
||||
(use_clause
|
||||
(qualified_identifier
|
||||
(identifier) @constant .)
|
||||
alias: (identifier)? @constant))
|
||||
|
||||
(use_statement
|
||||
(use_type "function")
|
||||
(use_clause
|
||||
(qualified_identifier
|
||||
(identifier) @function .)
|
||||
alias: (identifier)? @function))
|
||||
|
||||
(use_statement
|
||||
(use_type "type")
|
||||
(use_clause
|
||||
(qualified_identifier
|
||||
(identifier) @type .)
|
||||
alias: (identifier)? @type))
|
||||
|
||||
(use_clause
|
||||
(use_type "namespace")
|
||||
(qualified_identifier
|
||||
(_) @namespace .)
|
||||
alias: (identifier)? @namespace)
|
||||
|
||||
(use_clause
|
||||
(use_type "function")
|
||||
(qualified_identifier
|
||||
(_) @function .)
|
||||
alias: (identifier)? @function)
|
||||
|
||||
(use_clause
|
||||
(use_type "const")
|
||||
(qualified_identifier
|
||||
(_) @constant .)
|
||||
alias: (identifier)? @constant)
|
||||
|
||||
(use_clause
|
||||
(use_type "type")
|
||||
(qualified_identifier
|
||||
(_) @type .)
|
||||
alias: (identifier)? @type)
|
||||
|
||||
(function_declaration
|
||||
name: (identifier) @function)
|
||||
(method_declaration
|
||||
name: (identifier) @method)
|
||||
|
||||
(type_arguments
|
||||
[ "<" ">" ] @punctuation.bracket)
|
||||
[ "(" ")" "[" "]" "{" "}" "<<" ">>"] @punctuation.bracket
|
||||
|
||||
(xhp_open
|
||||
[ "<" ">" ] @tag.delimiter)
|
||||
(xhp_close
|
||||
[ "</" ">" ] @tag.delimiter)
|
||||
|
||||
[ "." ";" "::" ":" "," ] @punctuation.delimiter
|
||||
|
||||
(ternary_expression
|
||||
|
|
@ -152,11 +275,20 @@
|
|||
[
|
||||
"for"
|
||||
"while"
|
||||
"foreach"
|
||||
"do"
|
||||
"continue"
|
||||
"break"
|
||||
] @repeat
|
||||
|
||||
(string) @string
|
||||
[
|
||||
(string)
|
||||
(xhp_string)
|
||||
] @string
|
||||
|
||||
[
|
||||
(xhp_open)
|
||||
(xhp_close)
|
||||
] @tag
|
||||
|
||||
(ERROR) @error
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue