From 90468ad6c592c9a93e30b0809b42552e3b24f1e7 Mon Sep 17 00:00:00 2001 From: Jacob Chandler Date: Mon, 26 Sep 2022 19:27:54 -0400 Subject: [PATCH] fix: Improve JSX and TSX tag highlighting (#3973) --- runtime/queries/jsx/highlights.scm | 16 +++++++++++++--- runtime/queries/tsx/highlights.scm | 2 +- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/runtime/queries/jsx/highlights.scm b/runtime/queries/jsx/highlights.scm index d7054336a..a1eb2d0ed 100644 --- a/runtime/queries/jsx/highlights.scm +++ b/runtime/queries/jsx/highlights.scm @@ -1,5 +1,3 @@ -; inherits: ecma - ; Highlight component names differently (jsx_opening_element ((identifier) @constructor (#match? @constructor "^[A-Z]"))) @@ -7,21 +5,33 @@ ; Handle the dot operator effectively - (jsx_opening_element ((nested_identifier (identifier) @tag (identifier) @constructor))) +; Highlight brackets differently +(jsx_opening_element ["<" ">"] @punctuation.bracket) + (jsx_closing_element ((identifier) @constructor (#match? @constructor "^[A-Z]"))) ; Handle the dot operator effectively - (jsx_closing_element ((nested_identifier (identifier) @tag (identifier) @constructor))) +; Highlight brackets differently +(jsx_closing_element ["<" "/" ">"] @punctuation.bracket) + (jsx_self_closing_element ((identifier) @constructor (#match? @constructor "^[A-Z]"))) ; Handle the dot operator effectively - (jsx_self_closing_element ((nested_identifier (identifier) @tag (identifier) @constructor))) -; TODO: also tag @punctuation.delimiter? +; Highlight brackets differently +(jsx_self_closing_element ["<" "/" ">"] @punctuation.bracket) + +; Handle attribute delimiter +(jsx_attribute "=" @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) + +; inherits: ecma diff --git a/runtime/queries/tsx/highlights.scm b/runtime/queries/tsx/highlights.scm index 1b61e36da..100c7cc7a 100644 --- a/runtime/queries/tsx/highlights.scm +++ b/runtime/queries/tsx/highlights.scm @@ -1 +1 @@ -; inherits: typescript +; inherits: jsx,typescript