aboutsummaryrefslogtreecommitdiffstats
path: root/queries/lua/highlights.scm
blob: 514d004eb3a9e4279d3ec094e0c0520a3f3509c2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
;;; Highlighting for lua

;;; Builtins
;; Keywords
(
  "if" @conditional
  "end" @conditional
)
[
  "else"
  "elseif"
  "then"
] @conditional


(
  [
  "do"
  "while"
  "repeat"
  "for"
  ] @repeat

  "end" @repeat
)

[
 "in"
 "local"
 "return"
 (break_statement)
 "goto"
] @keyword

;; Operators
[
"="
"~="
"=="
"<="
">="
"not"
"and"
"or"
"<"
">"
"+"
"-"
"%"
"/"
"//"
"*"
"^"
"&"
"~"
"|"
">>"
"<<"
".."
"#"
 ] @operator

;; Punctuation
[ "," "." ] @punctuation.delimiter

;; Brackets
[
 "("
 ")"
 "["
 "]"
 "{"
 "}"
] @punctuation.bracket

;; Constants
[
(false)
(true)
] @boolean
(nil) @constant.builtin
(spread) @constant ;; "..."

;; Functions
("function" @keyword.function
 [(function_name) (identifier)] @function
 "end" @keyword.function)

;; Nodes
(table ["{" "}"] @constructor)
(comment) @comment
(string) @string
(number) @number
(label_statement) @label

((identifier) @parameter.reference
 (#is? @parameter.reference parameter))

;; Error
(ERROR) @error