|
|
|
@ -1,122 +1,109 @@
|
|
|
|
|
(comment) @comment
|
|
|
|
|
|
|
|
|
|
; Different types:
|
|
|
|
|
(string_value) @string
|
|
|
|
|
(bool_value) @constant.builtin.boolean
|
|
|
|
|
|
|
|
|
|
; Constants
|
|
|
|
|
|
|
|
|
|
(escape_sequence) @constant.character.escape
|
|
|
|
|
|
|
|
|
|
(color_value) @constant
|
|
|
|
|
|
|
|
|
|
(identifier) @variable
|
|
|
|
|
[
|
|
|
|
|
(type_identifier)
|
|
|
|
|
(units)
|
|
|
|
|
]@type
|
|
|
|
|
(children_identifier)
|
|
|
|
|
(easing_kind_identifier)
|
|
|
|
|
] @constant.builtin
|
|
|
|
|
|
|
|
|
|
(array_literal
|
|
|
|
|
(identifier) @type)
|
|
|
|
|
[
|
|
|
|
|
(int_value)
|
|
|
|
|
(physical_length_value)
|
|
|
|
|
] @constant.numeric.integer
|
|
|
|
|
|
|
|
|
|
(function_identifier) @function
|
|
|
|
|
[
|
|
|
|
|
(image_macro)
|
|
|
|
|
(children_macro)
|
|
|
|
|
(radial_grad_macro)
|
|
|
|
|
(linear_grad_macro)
|
|
|
|
|
] @function.macro
|
|
|
|
|
(float_value)
|
|
|
|
|
(percent_value)
|
|
|
|
|
(length_value)
|
|
|
|
|
(duration_value)
|
|
|
|
|
(angle_value)
|
|
|
|
|
(relative_font_size_value)
|
|
|
|
|
] @constant.numeric.float
|
|
|
|
|
|
|
|
|
|
(call_expression
|
|
|
|
|
function: (identifier) @function)
|
|
|
|
|
(call_expression
|
|
|
|
|
function: (field_expression
|
|
|
|
|
field: (identifier) @function))
|
|
|
|
|
(purity) @keyword.storage.modifier
|
|
|
|
|
|
|
|
|
|
(vis) @keyword.control.import
|
|
|
|
|
(function_visibility) @keyword.storage.modifier
|
|
|
|
|
|
|
|
|
|
(transition_statement state: (identifier) @variable.other.member)
|
|
|
|
|
(state_expression state: (identifier) @variable.other.member)
|
|
|
|
|
(struct_block_definition field: (identifier) @variable.other.member)
|
|
|
|
|
(assign_property (identifier) @attribute)
|
|
|
|
|
(property_visibility) @keyword.storage.modifier
|
|
|
|
|
|
|
|
|
|
(comment) @comment
|
|
|
|
|
(builtin_type_identifier) @type.builtin
|
|
|
|
|
|
|
|
|
|
(string_literal) @string
|
|
|
|
|
(int_literal) @constant.numeric.integer
|
|
|
|
|
(float_literal) @constant.numeric.float
|
|
|
|
|
(reference_identifier) @variable.builtin
|
|
|
|
|
|
|
|
|
|
(type
|
|
|
|
|
[
|
|
|
|
|
"in"
|
|
|
|
|
"in-out"
|
|
|
|
|
"for"
|
|
|
|
|
] @keyword.control.repeat
|
|
|
|
|
(type_list)
|
|
|
|
|
(user_type_identifier)
|
|
|
|
|
(anon_struct_block)
|
|
|
|
|
]) @type
|
|
|
|
|
|
|
|
|
|
[
|
|
|
|
|
"import"
|
|
|
|
|
"export"
|
|
|
|
|
"from"
|
|
|
|
|
] @keyword.control.import
|
|
|
|
|
(user_type_identifier) @type
|
|
|
|
|
|
|
|
|
|
[
|
|
|
|
|
"if"
|
|
|
|
|
"else"
|
|
|
|
|
"when"
|
|
|
|
|
] @keyword.control.conditional
|
|
|
|
|
; Functions and callbacks
|
|
|
|
|
(argument) @variable.parameter
|
|
|
|
|
|
|
|
|
|
[
|
|
|
|
|
"struct"
|
|
|
|
|
"property"
|
|
|
|
|
] @keyword.storage.type
|
|
|
|
|
(function_call
|
|
|
|
|
name: (_) @function.call)
|
|
|
|
|
|
|
|
|
|
[
|
|
|
|
|
"global"
|
|
|
|
|
] @keyword.storage.modifier
|
|
|
|
|
; definitions
|
|
|
|
|
(callback
|
|
|
|
|
name: (_) @function)
|
|
|
|
|
|
|
|
|
|
(callback_alias
|
|
|
|
|
name: (_) @function)
|
|
|
|
|
|
|
|
|
|
[
|
|
|
|
|
"root"
|
|
|
|
|
"parent"
|
|
|
|
|
"duration"
|
|
|
|
|
"easing"
|
|
|
|
|
] @variable.builtin
|
|
|
|
|
(callback_event
|
|
|
|
|
name: (simple_identifier) @function.call)
|
|
|
|
|
|
|
|
|
|
(enum_definition
|
|
|
|
|
name: (_) @type.enum)
|
|
|
|
|
|
|
|
|
|
[
|
|
|
|
|
"callback"
|
|
|
|
|
"animate"
|
|
|
|
|
"states"
|
|
|
|
|
"out"
|
|
|
|
|
"transitions"
|
|
|
|
|
"component"
|
|
|
|
|
"inherits"
|
|
|
|
|
] @keyword
|
|
|
|
|
|
|
|
|
|
[
|
|
|
|
|
"black"
|
|
|
|
|
"transparent"
|
|
|
|
|
"blue"
|
|
|
|
|
"ease"
|
|
|
|
|
"ease_in"
|
|
|
|
|
"ease-in"
|
|
|
|
|
"ease_in_out"
|
|
|
|
|
"ease-in-out"
|
|
|
|
|
"ease_out"
|
|
|
|
|
"ease-out"
|
|
|
|
|
"end"
|
|
|
|
|
"green"
|
|
|
|
|
"red"
|
|
|
|
|
"start"
|
|
|
|
|
"yellow"
|
|
|
|
|
"white"
|
|
|
|
|
"gray"
|
|
|
|
|
] @constant.builtin
|
|
|
|
|
(function_definition
|
|
|
|
|
name: (_) @function)
|
|
|
|
|
|
|
|
|
|
(struct_definition
|
|
|
|
|
name: (_) @type)
|
|
|
|
|
|
|
|
|
|
(typed_identifier
|
|
|
|
|
type: (_) @type)
|
|
|
|
|
|
|
|
|
|
; Operators
|
|
|
|
|
(binary_expression
|
|
|
|
|
op: (_) @operator)
|
|
|
|
|
|
|
|
|
|
(unary_expression
|
|
|
|
|
op: (_) @operator)
|
|
|
|
|
|
|
|
|
|
[
|
|
|
|
|
"true"
|
|
|
|
|
"false"
|
|
|
|
|
] @constant.builtin.boolean
|
|
|
|
|
(comparison_operator)
|
|
|
|
|
(mult_prec_operator)
|
|
|
|
|
(add_prec_operator)
|
|
|
|
|
(unary_prec_operator)
|
|
|
|
|
(assignment_prec_operator)
|
|
|
|
|
] @operator
|
|
|
|
|
|
|
|
|
|
"@" @keyword
|
|
|
|
|
[
|
|
|
|
|
":="
|
|
|
|
|
"=>"
|
|
|
|
|
"->"
|
|
|
|
|
"<=>"
|
|
|
|
|
] @operator
|
|
|
|
|
|
|
|
|
|
; ; Punctuation
|
|
|
|
|
[
|
|
|
|
|
","
|
|
|
|
|
"."
|
|
|
|
|
";"
|
|
|
|
|
":"
|
|
|
|
|
"."
|
|
|
|
|
","
|
|
|
|
|
] @punctuation.delimiter
|
|
|
|
|
|
|
|
|
|
; ; Brackets
|
|
|
|
|
[
|
|
|
|
|
"("
|
|
|
|
|
")"
|
|
|
|
@ -126,46 +113,136 @@
|
|
|
|
|
"}"
|
|
|
|
|
] @punctuation.bracket
|
|
|
|
|
|
|
|
|
|
(define_property ["<" ">"] @punctuation.bracket)
|
|
|
|
|
(property
|
|
|
|
|
[
|
|
|
|
|
"<"
|
|
|
|
|
">"
|
|
|
|
|
] @punctuation.bracket)
|
|
|
|
|
|
|
|
|
|
; Properties, constants and variables
|
|
|
|
|
(component
|
|
|
|
|
id: (simple_identifier) @constant)
|
|
|
|
|
|
|
|
|
|
(property
|
|
|
|
|
name: (simple_identifier) @variable)
|
|
|
|
|
|
|
|
|
|
(binding_alias
|
|
|
|
|
name: (simple_identifier) @variable)
|
|
|
|
|
|
|
|
|
|
(binding
|
|
|
|
|
name: (simple_identifier) @variable)
|
|
|
|
|
|
|
|
|
|
(struct_block
|
|
|
|
|
(simple_identifier) @variable.other.member)
|
|
|
|
|
|
|
|
|
|
(anon_struct_block
|
|
|
|
|
(simple_identifier) @variable.other.member)
|
|
|
|
|
|
|
|
|
|
(property_assignment
|
|
|
|
|
property: (simple_identifier) @variable)
|
|
|
|
|
|
|
|
|
|
(states_definition
|
|
|
|
|
name: (simple_identifier) @variable)
|
|
|
|
|
|
|
|
|
|
(callback
|
|
|
|
|
name: (simple_identifier) @variable)
|
|
|
|
|
|
|
|
|
|
(typed_identifier
|
|
|
|
|
name: (_) @variable)
|
|
|
|
|
|
|
|
|
|
(simple_indexed_identifier
|
|
|
|
|
(simple_identifier) @variable)
|
|
|
|
|
|
|
|
|
|
(expression
|
|
|
|
|
(simple_identifier) @variable)
|
|
|
|
|
|
|
|
|
|
; Attributes
|
|
|
|
|
[
|
|
|
|
|
"angle"
|
|
|
|
|
"bool"
|
|
|
|
|
"brush"
|
|
|
|
|
"color"
|
|
|
|
|
"duration"
|
|
|
|
|
"easing"
|
|
|
|
|
"float"
|
|
|
|
|
"image"
|
|
|
|
|
"int"
|
|
|
|
|
"length"
|
|
|
|
|
"percent"
|
|
|
|
|
"physical-length"
|
|
|
|
|
"physical_length"
|
|
|
|
|
"string"
|
|
|
|
|
] @type.builtin
|
|
|
|
|
(linear_gradient_identifier)
|
|
|
|
|
(radial_gradient_identifier)
|
|
|
|
|
(radial_gradient_kind)
|
|
|
|
|
] @attribute
|
|
|
|
|
|
|
|
|
|
(image_call
|
|
|
|
|
"@image-url" @attribute)
|
|
|
|
|
|
|
|
|
|
(tr
|
|
|
|
|
"@tr" @attribute)
|
|
|
|
|
|
|
|
|
|
; Keywords
|
|
|
|
|
(animate_option_identifier) @keyword
|
|
|
|
|
|
|
|
|
|
(export) @keyword.control.import
|
|
|
|
|
|
|
|
|
|
(if_statement
|
|
|
|
|
"if" @keyword.control.conditional)
|
|
|
|
|
|
|
|
|
|
(if_expr
|
|
|
|
|
[
|
|
|
|
|
"if"
|
|
|
|
|
"else"
|
|
|
|
|
] @keyword.control.conditional)
|
|
|
|
|
|
|
|
|
|
(ternary_expression
|
|
|
|
|
[
|
|
|
|
|
":="
|
|
|
|
|
"<=>"
|
|
|
|
|
"!"
|
|
|
|
|
"-"
|
|
|
|
|
"+"
|
|
|
|
|
"*"
|
|
|
|
|
"/"
|
|
|
|
|
"&&"
|
|
|
|
|
"||"
|
|
|
|
|
">"
|
|
|
|
|
"<"
|
|
|
|
|
">="
|
|
|
|
|
"<="
|
|
|
|
|
"="
|
|
|
|
|
":"
|
|
|
|
|
"+="
|
|
|
|
|
"-="
|
|
|
|
|
"*="
|
|
|
|
|
"/="
|
|
|
|
|
"?"
|
|
|
|
|
"=>" ] @operator
|
|
|
|
|
":"
|
|
|
|
|
] @keyword.control.conditional)
|
|
|
|
|
|
|
|
|
|
(animate_statement
|
|
|
|
|
"animate" @keyword)
|
|
|
|
|
|
|
|
|
|
(callback
|
|
|
|
|
"callback" @keyword.function)
|
|
|
|
|
|
|
|
|
|
(ternary_expression [":" "?"] @keyword.control.conditional)
|
|
|
|
|
(component_definition
|
|
|
|
|
[
|
|
|
|
|
"component"
|
|
|
|
|
"inherits"
|
|
|
|
|
] @keyword.storage.type)
|
|
|
|
|
|
|
|
|
|
(enum_definition
|
|
|
|
|
"enum" @keyword.storage.type)
|
|
|
|
|
|
|
|
|
|
(for_loop
|
|
|
|
|
[
|
|
|
|
|
"for"
|
|
|
|
|
"in"
|
|
|
|
|
] @keyword.control.repeat)
|
|
|
|
|
|
|
|
|
|
(function_definition
|
|
|
|
|
"function" @keyword.function)
|
|
|
|
|
|
|
|
|
|
(global_definition
|
|
|
|
|
"global" @keyword.storage.type)
|
|
|
|
|
|
|
|
|
|
(imperative_block
|
|
|
|
|
"return" @keyword.control.return)
|
|
|
|
|
|
|
|
|
|
(import_statement
|
|
|
|
|
[
|
|
|
|
|
"import"
|
|
|
|
|
"from"
|
|
|
|
|
] @keyword.control.import)
|
|
|
|
|
|
|
|
|
|
(import_type
|
|
|
|
|
"as" @keyword.control.import)
|
|
|
|
|
|
|
|
|
|
(property
|
|
|
|
|
"property" @keyword.storage.type)
|
|
|
|
|
|
|
|
|
|
(states_definition
|
|
|
|
|
[
|
|
|
|
|
"states"
|
|
|
|
|
"when"
|
|
|
|
|
] @keyword)
|
|
|
|
|
|
|
|
|
|
(struct_definition
|
|
|
|
|
"struct" @keyword.storage.type)
|
|
|
|
|
|
|
|
|
|
(transitions_definition
|
|
|
|
|
[
|
|
|
|
|
"transitions"
|
|
|
|
|
"in"
|
|
|
|
|
"out"
|
|
|
|
|
] @keyword)
|
|
|
|
|