aboutsummaryrefslogtreecommitdiffstats
path: root/queries/java
diff options
context:
space:
mode:
authorAmaan Qureshi <amaanq12@gmail.com>2023-02-23 17:04:07 -0500
committerStephan Seitz <stephan.seitz@fau.de>2023-02-23 15:41:26 -0800
commit7dfaa60a8522abca292372ece20fd703a892bd64 (patch)
tree730b4ca25a6b4d0aad06480ab2afbf2e564dab3c /queries/java
parentfeat: add starlark (diff)
downloadnvim-treesitter-7dfaa60a8522abca292372ece20fd703a892bd64.tar
nvim-treesitter-7dfaa60a8522abca292372ece20fd703a892bd64.tar.gz
nvim-treesitter-7dfaa60a8522abca292372ece20fd703a892bd64.tar.bz2
nvim-treesitter-7dfaa60a8522abca292372ece20fd703a892bd64.tar.lz
nvim-treesitter-7dfaa60a8522abca292372ece20fd703a892bd64.tar.xz
nvim-treesitter-7dfaa60a8522abca292372ece20fd703a892bd64.tar.zst
nvim-treesitter-7dfaa60a8522abca292372ece20fd703a892bd64.zip
feat(java): distinguish escape sequences, move certain keywords to more appropriate places
Diffstat (limited to 'queries/java')
-rw-r--r--queries/java/highlights.scm258
-rw-r--r--queries/java/indents.scm4
-rw-r--r--queries/java/injections.scm5
3 files changed, 136 insertions, 131 deletions
diff --git a/queries/java/highlights.scm b/queries/java/highlights.scm
index 625c2b5b7..717a13bad 100644
--- a/queries/java/highlights.scm
+++ b/queries/java/highlights.scm
@@ -14,8 +14,10 @@
(super) @function.builtin
; Parameters
+
(formal_parameter
name: (identifier) @parameter)
+
(catch_formal_parameter
name: (identifier) @parameter)
@@ -24,59 +26,58 @@
name: (identifier) @parameter)) ; int... foo
;; Lambda parameter
+
(inferred_parameters (identifier) @parameter) ; (x,y) -> ...
+
(lambda_expression
parameters: (identifier) @parameter) ; x -> ...
-
; Annotations
-
(annotation
name: (identifier) @attribute)
(marker_annotation
name: (identifier) @attribute)
-
; Operators
[
-"@"
-"+"
-":"
-"++"
-"-"
-"--"
-"&"
-"&&"
-"|"
-"||"
-"!"
-"!="
-"=="
-"*"
-"/"
-"%"
-"<"
-"<="
-">"
-">="
-"="
-"-="
-"+="
-"*="
-"/="
-"%="
-"->"
-"^"
-"^="
-"&="
-"|="
-"~"
-">>"
-">>>"
-"<<"
-"::"
+ "@"
+ "+"
+ ":"
+ "++"
+ "-"
+ "--"
+ "&"
+ "&&"
+ "|"
+ "||"
+ "!"
+ "!="
+ "=="
+ "*"
+ "/"
+ "%"
+ "<"
+ "<="
+ ">"
+ ">="
+ "="
+ "-="
+ "+="
+ "*="
+ "/="
+ "%="
+ "->"
+ "^"
+ "^="
+ "&="
+ "|="
+ "~"
+ ">>"
+ ">>>"
+ "<<"
+ "::"
] @operator
; Types
@@ -99,8 +100,6 @@
. (identifier) @type)
(#lua-match? @type "^[A-Z]"))
-
-
((field_access
object: (identifier) @type)
(#lua-match? @type "^[A-Z]"))
@@ -118,10 +117,10 @@
field: (identifier) @field)
[
-(boolean_type)
-(integral_type)
-(floating_point_type)
-(void_type)
+ (boolean_type)
+ (integral_type)
+ (floating_point_type)
+ (void_type)
] @type.builtin
; Variables
@@ -133,145 +132,150 @@
; Literals
-[
-(hex_integer_literal)
-(decimal_integer_literal)
-(octal_integer_literal)
-(binary_integer_literal)
-] @number
+(string_literal) @string
-[
-(decimal_floating_point_literal)
-(hex_floating_point_literal)
-] @float
+(escape_sequence) @string.escape
(character_literal) @character
-[(string_literal) (text_block)] @string
-(null_literal) @constant.builtin
[
- (line_comment)
- (block_comment)
-] @comment @spell
+ (hex_integer_literal)
+ (decimal_integer_literal)
+ (octal_integer_literal)
+ (binary_integer_literal)
+] @number
[
-(true)
-(false)
+ (decimal_floating_point_literal)
+ (hex_floating_point_literal)
+] @float
+
+[
+ (true)
+ (false)
] @boolean
+(null_literal) @constant.builtin
+
; Keywords
[
-"assert"
-"break"
-"class"
-"record"
-"continue"
-"default"
-"enum"
-"exports"
-"extends"
-"implements"
-"instanceof"
-"interface"
-"module"
-"opens"
-"package"
-"permits"
-"provides"
-"requires"
-"to"
-"uses"
-"with"
+ "assert"
+ "class"
+ "record"
+ "default"
+ "enum"
+ "extends"
+ "implements"
+ "instanceof"
+ "interface"
+ "permits"
+ "to"
+ "with"
] @keyword
(synchronized_statement
"synchronized" @keyword)
[
-"abstract"
-"final"
-"native"
-"non-sealed"
-"open"
-"private"
-"protected"
-"public"
-"sealed"
-"static"
-"strictfp"
-"transitive"
+ "abstract"
+ "final"
+ "native"
+ "non-sealed"
+ "open"
+ "private"
+ "protected"
+ "public"
+ "sealed"
+ "static"
+ "strictfp"
+ "transitive"
] @type.qualifier
(modifiers
"synchronized" @type.qualifier)
[
-"transient"
-"volatile"
+ "transient"
+ "volatile"
] @storageclass
[
-"return"
-"yield"
+ "return"
+ "yield"
] @keyword.return
[
- "new"
+ "new"
] @keyword.operator
; Conditionals
[
-"if"
-"else"
-"switch"
-"case"
+ "if"
+ "else"
+ "switch"
+ "case"
] @conditional
(ternary_expression ["?" ":"] @conditional.ternary)
-;
+; Loops
[
-"for"
-"while"
-"do"
+ "for"
+ "while"
+ "do"
+ "continue"
+ "break"
] @repeat
; Includes
-"import" @include
-"package" @include
+[
+ "exports"
+ "import"
+ "module"
+ "opens"
+ "package"
+ "provides"
+ "requires"
+ "uses"
+] @include
; Punctuation
[
-";"
-"."
-"..."
-","
+ ";"
+ "."
+ "..."
+ ","
] @punctuation.delimiter
-[
-"["
-"]"
-"{"
-"}"
-"("
-")"
-] @punctuation.bracket
+[ "{" "}" ] @punctuation.bracket
+
+[ "[" "]" ] @punctuation.bracket
+
+[ "(" ")" ] @punctuation.bracket
; Exceptions
[
-"throw"
-"throws"
-"finally"
-"try"
-"catch"
+ "throw"
+ "throws"
+ "finally"
+ "try"
+ "catch"
] @exception
; Labels
+
(labeled_statement
(identifier) @label)
+
+; Comments
+
+[
+ (line_comment)
+ (block_comment)
+] @comment @spell
diff --git a/queries/java/indents.scm b/queries/java/indents.scm
index 8e5375486..bd86cdbed 100644
--- a/queries/java/indents.scm
+++ b/queries/java/indents.scm
@@ -22,9 +22,7 @@
"]"
] @branch
-[
- "}"
-] @indent_end
+"}" @indent_end
(line_comment) @ignore
diff --git a/queries/java/injections.scm b/queries/java/injections.scm
index e4fd85f1c..0a63c9bfe 100644
--- a/queries/java/injections.scm
+++ b/queries/java/injections.scm
@@ -1 +1,4 @@
-[(block_comment) (line_comment)] @comment
+[
+ (block_comment)
+ (line_comment)
+] @comment