Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'runtime/queries/jsx/highlights.scm')
| -rw-r--r-- | runtime/queries/jsx/highlights.scm | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/runtime/queries/jsx/highlights.scm b/runtime/queries/jsx/highlights.scm index 4d0e168a..9be5f517 100644 --- a/runtime/queries/jsx/highlights.scm +++ b/runtime/queries/jsx/highlights.scm @@ -1,3 +1,27 @@ -; See runtime/queries/ecma/README.md for more info. +; inherits: javascript -; inherits: ecma,_javascript,_jsx +; Highlight component names differently +(jsx_opening_element ((identifier) @constructor + (#match? @constructor "^[A-Z]"))) + +; Handle the dot operator effectively - <My.Component> +(jsx_opening_element ((nested_identifier (identifier) @tag (identifier) @constructor))) + +(jsx_closing_element ((identifier) @constructor + (#match? @constructor "^[A-Z]"))) + +; Handle the dot operator effectively - </My.Component> +(jsx_closing_element ((nested_identifier (identifier) @tag (identifier) @constructor))) + +(jsx_self_closing_element ((identifier) @constructor + (#match? @constructor "^[A-Z]"))) + +; Handle the dot operator effectively - <My.Component /> +(jsx_self_closing_element ((nested_identifier (identifier) @tag (identifier) @constructor))) + +; TODO: also tag @punctuation.delimiter? + +(jsx_opening_element (identifier) @tag) +(jsx_closing_element (identifier) @tag) +(jsx_self_closing_element (identifier) @tag) +(jsx_attribute (property_identifier) @variable.other.member) |