From 855e438f55cb278de8203ac4911561c4c7ad656c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bla=C5=BE=20Hrastnik?= Date: Fri, 1 Apr 2022 17:18:44 +0900 Subject: [PATCH] jsx: Add special highlighting to component names --- runtime/queries/javascript/highlights.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/runtime/queries/javascript/highlights.scm b/runtime/queries/javascript/highlights.scm index 96bad862f937..ccc58a9ecdb4 100644 --- a/runtime/queries/javascript/highlights.scm +++ b/runtime/queries/javascript/highlights.scm @@ -1,6 +1,28 @@ ; JSX ;---- +; Highlight component names differently + +(jsx_opening_element ((identifier) @constructor + (#match? @constructor "^[A-Z]"))) + +; Handle the dot operator effectively - +(jsx_opening_element ((nested_identifier (identifier) @tag (identifier) @constructor))) + +(jsx_closing_element ((identifier) @constructor + (#match? @constructor "^[A-Z]"))) + +; Handle the dot operator effectively - +(jsx_closing_element ((nested_identifier (identifier) @tag (identifier) @constructor))) + +(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? + (jsx_opening_element (identifier) @tag) (jsx_closing_element (identifier) @tag) (jsx_self_closing_element (identifier) @tag)