@@ -0,0 +1,237 @@
1+(dotted_identifier_list) @string
5+(super) @function.builtin
7+(function_expression_body (identifier) @function.method)
8+((identifier)(selector (argument_part)) @function.method)
11+; --------------------
13+ name: (identifier) @attribute)
15+ name: (identifier) @attribute)
18+; --------------------
20+ name: (identifier) @type)
22+(constructor_signature
23+ name: (identifier) @function.method)
26+ name: (identifier) @function.method)
29+ (identifier) @function.builtin)
32+ name: (identifier) @function.builtin)
35+ name: (identifier) @type)
38+ name: (identifier) @type.builtin)
40+(void_type) @type.builtin
43+ scope: (identifier) @type)
44+ (#match? @type "^[a-zA-Z]"))
47+ scope: (identifier) @type
48+ name: (identifier) @type)
49+ (#match? @type "^[a-zA-Z]"))
51+; the DisabledDrawerButtons in : const DisabledDrawerButtons(history: true),
52+(type_identifier) @type.builtin
55+; --------------------
56+; the "File" in var file = File();
57+((identifier) @namespace
58+ (#match? @namespace "^_?[A-Z].*[a-z]")) ; catch Classes or IClasses not CLASSES
60+("Function" @type.builtin)
61+(inferred_type) @type.builtin
64+(unconditional_assignable_selector
65+ (identifier) @variable.other.member)
67+(conditional_assignable_selector
68+ (identifier) @variable.other.member)
71+; --------------------
72+; the "strings" in : strings = "some string"
73+(assignment_expression
74+ left: (assignable_expression) @variable)
76+(this) @variable.builtin
79+; --------------------
81+ name: (identifier) @variable)
84+ (label (identifier) @variable))
87+; --------------------
89+ (hex_integer_literal)
90+ (decimal_integer_literal)
91+ (decimal_floating_point_literal)
92+ ;(octal_integer_literal)
93+ ;(hex_floating_point_literal)
94+] @constant.numeric.integer
96+(symbol_literal) @string.special.symbol
97+(string_literal) @string
107+] @constant.builtin.boolean
109+(null_literal) @constant.builtin
111+(comment) @comment.line
112+(documentation_comment) @comment.block.documentation
115+; --------------------
116+(template_substitution
117+ "$" @punctuation.special
118+ "{" @punctuation.special
119+ "}" @punctuation.special
122+(template_substitution
123+ "$" @punctuation.special
124+ (identifier_dollar_escaped) @variable
127+(escape_sequence) @constant.character.escape
130+;---------------------
138+] @punctuation.bracket
145+] @punctuation.delimiter
148+;---------------------
163+ (multiplicative_operator)
164+ (increment_operator)
172+; --------------------
173+["import" "library" "export"] @keyword.control.import
174+["do" "while" "continue" "for"] @keyword.control.repeat
175+["return" "yield"] @keyword.control.return
176+["as" "in" "is"] @keyword.operator
186+] @keyword.control.conditional
194+] @keyword.control.exception
196+; Reserved words (cannot be used as identifiers)
231+; when used as an identifier:
232+((identifier) @variable.builtin
233+ (#match? @variable.builtin "^(abstract|as|covariant|deferred|dynamic|export|external|factory|Function|get|implements|import|interface|library|operator|mixin|part|set|static|typedef)$"))