highlights.scm

 1; HEEx delimiters
 2[
 3  "/>"
 4  "<!"
 5  "<"
 6  "</"
 7  "</:"
 8  "<:"
 9  ">"
10  "{"
11  "}"
12] @punctuation.bracket
13
14[
15  "<%!--"
16  "<%"
17  "<%#"
18  "<%%="
19  "<%="
20  "%>"
21  "--%>"
22  "-->"
23  "<!--"
24] @keyword
25
26; HEEx operators are highlighted as such
27"=" @operator
28
29; HEEx inherits the DOCTYPE tag from HTML
30(doctype) @tag.doctype
31
32(comment) @comment
33
34; HEEx tags and slots are highlighted as HTML
35[
36 (tag_name)
37 (slot_name)
38] @tag
39
40; HEEx attributes are highlighted as HTML attributes
41(attribute_name) @attribute
42
43; HEEx special attributes are highlighted as keywords
44(special_attribute_name) @keyword
45
46[
47  (attribute_value)
48  (quoted_attribute_value)
49] @string
50
51; HEEx components are highlighted as Elixir modules and functions
52(component_name
53  [
54    (module) @module
55    (function) @function
56    "." @punctuation.delimiter
57  ])