nvim-treesitter/queries/jsx/highlights.scm

66 lines
1.3 KiB
Scheme
Raw Normal View History

(jsx_element
2024-01-06 15:05:50 +09:00
open_tag:
(jsx_opening_element
[
"<"
">"
] @tag.delimiter))
(jsx_element
2024-01-06 15:05:50 +09:00
close_tag:
(jsx_closing_element
[
"</"
">"
] @tag.delimiter))
(jsx_self_closing_element
[
"<"
"/>"
] @tag.delimiter)
(jsx_attribute
(property_identifier) @tag.attribute)
(jsx_opening_element
name: (identifier) @tag)
(jsx_closing_element
name: (identifier) @tag)
2020-10-20 12:10:50 -04:00
(jsx_self_closing_element
name: (identifier) @tag)
2024-01-06 15:05:50 +09:00
(jsx_opening_element
((identifier) @constructor
(#lua-match? @constructor "^[A-Z]")))
2020-10-20 12:10:50 -04:00
; Handle the dot operator effectively - <My.Component>
2024-01-06 15:05:50 +09:00
(jsx_opening_element
((member_expression
(identifier) @tag
(property_identifier) @constructor)))
2020-10-20 12:10:50 -04:00
2024-01-06 15:05:50 +09:00
(jsx_closing_element
((identifier) @constructor
(#lua-match? @constructor "^[A-Z]")))
2020-10-20 12:10:50 -04:00
; Handle the dot operator effectively - </My.Component>
2024-01-06 15:05:50 +09:00
(jsx_closing_element
((member_expression
(identifier) @tag
(property_identifier) @constructor)))
2020-10-20 12:10:50 -04:00
2024-01-06 15:05:50 +09:00
(jsx_self_closing_element
((identifier) @constructor
(#lua-match? @constructor "^[A-Z]")))
2020-09-14 21:00:03 +02:00
2020-10-20 12:10:50 -04:00
; Handle the dot operator effectively - <My.Component />
2024-01-06 15:05:50 +09:00
(jsx_self_closing_element
((member_expression
(identifier) @tag
(property_identifier) @constructor)))
2020-10-20 12:10:50 -04:00
2020-09-14 21:00:03 +02:00
(jsx_text) @none