From d13f0183ba93f9b5aba7359146f294abfffff9c3 Mon Sep 17 00:00:00 2001 From: Omar Valdez Date: Thu, 1 Aug 2024 01:24:40 -0700 Subject: feat(highlights): capture wildcard imports as `@character.special` --- queries/ecma/highlights.scm | 18 +++++++++++++----- queries/groovy/highlights.scm | 2 ++ queries/java/highlights.scm | 4 ++++ queries/kotlin/highlights.scm | 2 ++ queries/python/highlights.scm | 3 +++ queries/rust/highlights.scm | 3 +++ queries/scala/highlights.scm | 6 +++++- 7 files changed, 32 insertions(+), 6 deletions(-) diff --git a/queries/ecma/highlights.scm b/queries/ecma/highlights.scm index f60406272..37913f65b 100644 --- a/queries/ecma/highlights.scm +++ b/queries/ecma/highlights.scm @@ -132,11 +132,6 @@ (new_expression constructor: (identifier) @constructor) -; Variables -;---------- -(namespace_import - (identifier) @module) - ; Decorators ;---------- (decorator @@ -302,6 +297,19 @@ "}" ] @punctuation.special) @none +; Imports +;---------- +(namespace_import + "*" @character.special + (identifier) @module) + +(namespace_export + "*" @character.special + (identifier) @module) + +(export_statement + "*" @character.special) + ; Keywords ;---------- [ diff --git a/queries/groovy/highlights.scm b/queries/groovy/highlights.scm index de62bbb4f..4504e16e2 100644 --- a/queries/groovy/highlights.scm +++ b/queries/groovy/highlights.scm @@ -148,6 +148,8 @@ "!" ] @operator +(wildcard_import) @character.special + (string "/" @string) diff --git a/queries/java/highlights.scm b/queries/java/highlights.scm index 0f7e4feca..316987178 100644 --- a/queries/java/highlights.scm +++ b/queries/java/highlights.scm @@ -257,6 +257,10 @@ "uses" ] @keyword.import +(import_declaration + (asterisk + "*" @character.special)) + ; Punctuation [ ";" diff --git a/queries/kotlin/highlights.scm b/queries/kotlin/highlights.scm index f30986542..a53fd3a04 100644 --- a/queries/kotlin/highlights.scm +++ b/queries/kotlin/highlights.scm @@ -73,6 +73,8 @@ (import_header "import" @keyword.import) +(wildcard_import) @character.special + ; The last `simple_identifier` in a `import_header` will always either be a function ; or a type. Classes can appear anywhere in the import path, unlike functions (import_header diff --git a/queries/python/highlights.scm b/queries/python/highlights.scm index 71356264c..232d40916 100644 --- a/queries/python/highlights.scm +++ b/queries/python/highlights.scm @@ -320,6 +320,9 @@ (aliased_import "as" @keyword.import) +(wildcard_import + "*" @character.special) + [ "if" "elif" diff --git a/queries/rust/highlights.scm b/queries/rust/highlights.scm index 1609a81a2..f411dda40 100644 --- a/queries/rust/highlights.scm +++ b/queries/rust/highlights.scm @@ -382,6 +382,9 @@ "||" ] @operator +(use_wildcard + "*" @character.special) + ; Punctuation [ "(" diff --git a/queries/scala/highlights.scm b/queries/scala/highlights.scm index 5f3936d2f..3ff64309f 100644 --- a/queries/scala/highlights.scm +++ b/queries/scala/highlights.scm @@ -213,7 +213,11 @@ (wildcard) @variable.parameter -(namespace_wildcard) @punctuation.special +(namespace_wildcard + [ + "*" + "_" + ] @character.special) (annotation) @attribute -- cgit v1.2.3-70-g09d2