summaryrefslogtreecommitdiff
path: root/runtime/queries/robot/highlights.scm
blob: 06e95798affbbbc1467eb3c656acc23e5ba39701 (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
[
  (comment)
  (extra_text)
] @comment

[
  (section_header)
  (setting_statement)
  (keyword_setting)
  (test_case_setting)
] @keyword

(variable_definition (variable_name) @variable)
(keyword_definition (name) @function)
(test_case_definition (name) @function)

(keyword_invocation (keyword) @function)
(ellipses) @punctuation.delimiter

(text_chunk) @string
(inline_python_expression) @string.special
[
  (scalar_variable)
  (list_variable)
  (dictionary_variable)
] @variable

; Control structures

"RETURN" @keyword.control.return

[
  "FOR"
  "IN"
  "IN RANGE"
  "IN ENUMERATE"
  "IN ZIP"
  (break_statement)
  (continue_statement)
] @keyword.control.repeat
(for_statement "END" @keyword.control.repeat)

"WHILE" @keyword.control.repeat
(while_statement "END" @keyword.control.repeat)

[
  "IF"
  "ELSE IF"
] @keyword.control.conditional
(if_statement "END" @keyword.control.conditional)
(if_statement (else_statement "ELSE" @keyword.control.conditional))

[
  "TRY"
  "EXCEPT"
  "FINALLY"
] @keyword.control.exception
(try_statement "END" @keyword.control.exception)
(try_statement (else_statement "ELSE" @keyword.control.exception))