@@ -0,0 +1,66 @@
1+(ERROR) @error
2+
3+(line_comment) @comment
4+
5+; keywords and symbols
6+
7+(keyword) @keyword
8+(symbol) @tag
9+
10+; literals
11+
12+(bool_literal) @constant.builtin.boolean
13+(num_literal) @constant.numeric
14+
15+; strings
16+(string_interpolation
17+ (string_interpolation_start) @punctuation.special
18+ (string_interpolation_end) @punctuation.special)
19+
20+(escape_sequence) @constant.character.escape
21+
22+(string
23+ [
24+ (unescaped_single_quote_string_fragment)
25+ (unescaped_double_quote_string_fragment)
26+ (unescaped_backtick_string_fragment)
27+ "\""
28+ "'"
29+ "`"
30+ ]) @string
31+
32+; operators and general punctuation
33+
34+(unary_expression
35+ operator: _ @operator)
36+
37+(binary_expression
38+ operator: _ @operator)
39+
40+(ternary_expression
41+ operator: _ @operator)
42+
43+[
44+ ":"
45+ "."
46+ ","
47+] @punctuation.delimiter
48+
49+[
50+ "("
51+ ")"
52+ "["
53+ "]"
54+ "{"
55+ "}"
56+] @punctuation.bracket
57+[
58+ ":"
59+ "."
60+ ","
61+] @punctuation.delimiter
62+
63+; Rest (general identifiers that are not yet catched)
64+
65+(index) @variable
66+(ident) @variable