@@ -0,0 +1,150 @@
1+(parameter_declaration
2+ name: (identifier) @variable.parameter)
3+(function_declaration
4+ name: (identifier) @function)
5+(function_declaration
6+ receiver: (parameter_list)
7+ name: (identifier) @function.method)
8+
9+(call_expression
10+ function: (identifier) @function)
11+(call_expression
12+ function: (selector_expression
13+ field: (identifier) @function.method))
14+
15+(field_identifier) @variable.other.member
16+(selector_expression
17+ field: (identifier) @variable.other.member)
18+
19+(int_literal) @constant.numeric.integer
20+(interpreted_string_literal) @string
21+(rune_literal) @string
22+(escape_sequence) @constant.character.escape
23+
24+[
25+ (type_identifier)
26+ (builtin_type)
27+ (pointer_type)
28+ (array_type)
29+] @type
30+
31+[
32+ (identifier)
33+ (module_identifier)
34+ (import_path)
35+] @variable
36+
37+[
38+ "as"
39+ "asm"
40+ "assert"
41+ ;"atomic"
42+ ;"break"
43+ "const"
44+ ;"continue"
45+ "defer"
46+ "else"
47+ "enum"
48+ "fn"
49+ "for"
50+ "$for"
51+ "go"
52+ "goto"
53+ "if"
54+ "$if"
55+ "import"
56+ "in"
57+ "!in"
58+ "interface"
59+ "is"
60+ "!is"
61+ "lock"
62+ "match"
63+ "module"
64+ "mut"
65+ "or"
66+ "pub"
67+ "return"
68+ "rlock"
69+ "select"
70+ ;"shared"
71+ ;"static"
72+ "struct"
73+ "type"
74+ ;"union"
75+ "unsafe"
76+] @keyword
77+
78+[
79+ (true)
80+ (false)
81+] @boolean
82+
83+[
84+ "."
85+ ","
86+ ":"
87+ ";"
88+] @punctuation.delimiter
89+
90+[
91+ "("
92+ ")"
93+ "{"
94+ "}"
95+ "["
96+ "]"
97+] @punctuation.bracket
98+
99+(array) @punctuation.bracket
100+
101+[
102+ "++"
103+ "--"
104+
105+ "+"
106+ "-"
107+ "*"
108+ "/"
109+ "%"
110+
111+ "~"
112+ "&"
113+ "|"
114+ "^"
115+
116+ "!"
117+ "&&"
118+ "||"
119+ "!="
120+
121+ "<<"
122+ ">>"
123+
124+ "<"
125+ ">"
126+ "<="
127+ ">="
128+
129+ "+="
130+ "-="
131+ "*="
132+ "/="
133+ "&="
134+ "|="
135+ "^="
136+ "<<="
137+ ">>="
138+
139+ "="
140+ ":="
141+ "=="
142+
143+ "?"
144+ "<-"
145+ "$"
146+ ".."
147+ "..."
148+] @operator
149+
150+(comment) @comment