@@ -0,0 +1,166 @@
1+;;; Highlighting for lua
4+(self) @variable.builtin
13+] @keyword.control.conditional)
19+] @keyword.control.conditional
26+] @keyword.control.loop)
33+] @keyword.control.loop)
40+] @keyword.control.loop)
46+] @keyword.control.loop)
95+["," "." ":" ";"] @punctuation.delimiter
105+] @punctuation.bracket
112+(nil) @constant.builtin
113+(spread) @constant ;; "..."
114+((identifier) @constant
115+ (#match? @constant "^[A-Z][A-Z_0-9]*$"))
119+ (identifier) @parameter)
122+(function [(function_name) (identifier)] @function)
123+(function ["function" "end"] @keyword.function)
127+ (function_name_field
128+ (property_identifier) @function .)))
130+(local_function (identifier) @function)
131+(local_function ["function" "end"] @keyword.function)
133+(variable_declaration
134+ (variable_declarator (identifier) @function) (function_definition))
135+(local_variable_declaration
136+ (variable_declarator (identifier) @function) (function_definition))
138+(function_definition ["function" "end"] @keyword.function)
142+ ((identifier) @variable (method) @method)
143+ ((_) (method) @method)
144+ (identifier) @function
145+ (field_expression (property_identifier) @function)
150+(table ["{" "}"] @constructor)
154+(label_statement) @label
155+; A bit of a tricky one, this will only match field names
156+(field . (identifier) @property (_))
160+(property_identifier) @property
163+(identifier) @variable