highlights.scm

 1[
 2    "if"
 3    "then"
 4    "else"
 5    "let"
 6    "in"
 7    (case)
 8    (of)
 9    (backslash)
10    (as)
11    (port)
12    (exposing)
13    (alias)
14    (import)
15    (module)
16    (type)
17    (arrow)
18 ] @keyword
19
20[
21    (eq)
22    (operator_identifier)
23    (colon)
24] @operator
25
26(type_annotation(lower_case_identifier) @function)
27(port_annotation(lower_case_identifier) @function)
28(function_declaration_left(lower_case_identifier) @function.definition)
29
30(function_call_expr
31    target: (value_expr
32        name: (value_qid (lower_case_identifier) @function)))
33
34(exposed_value(lower_case_identifier) @function)
35(exposed_type(upper_case_identifier) @type)
36
37(field_access_expr(value_expr(value_qid)) @identifier)
38(lower_pattern) @variable
39(record_base_identifier) @identifier
40
41[
42    "("
43    ")"
44] @punctuation.bracket
45
46[
47    "|"
48    ","
49] @punctuation.delimiter
50
51(number_constant_expr) @constant
52
53(type_declaration(upper_case_identifier) @type)
54(type_ref) @type
55(type_alias_declaration name: (upper_case_identifier) @type)
56
57(value_expr(upper_case_qid(upper_case_identifier)) @type)
58
59[
60    (line_comment)
61    (block_comment)
62] @comment
63
64(string_escape) @string.escape
65
66[
67    (open_quote)
68    (close_quote)
69    (regular_string_part)
70    (open_char)
71    (close_char)
72] @string