Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'runtime/queries/slint/highlights.scm')
-rw-r--r--runtime/queries/slint/highlights.scm329
1 files changed, 103 insertions, 226 deletions
diff --git a/runtime/queries/slint/highlights.scm b/runtime/queries/slint/highlights.scm
index 06d82a41..c7773913 100644
--- a/runtime/queries/slint/highlights.scm
+++ b/runtime/queries/slint/highlights.scm
@@ -1,248 +1,125 @@
-(comment) @comment
-
-; Different types:
-(string_value) @string
-(bool_value) @constant.builtin.boolean
-
-; Constants
-
-(escape_sequence) @constant.character.escape
-
-(color_value) @constant
-
-[
- (children_identifier)
- (easing_kind_identifier)
-] @constant.builtin
-
-[
- (int_value)
- (physical_length_value)
-] @constant.numeric.integer
-
-[
- (float_value)
- (percent_value)
- (length_value)
- (duration_value)
- (angle_value)
- (relative_font_size_value)
-] @constant.numeric.float
-
-(purity) @keyword.storage.modifier
-
-(function_visibility) @keyword.storage.modifier
-
-(property_visibility) @keyword.storage.modifier
-
-(builtin_type_identifier) @type.builtin
-
-(reference_identifier) @variable.builtin
-
-(type
- [
- (type_list)
- (user_type_identifier)
- (anon_struct_block)
- ]) @type
(user_type_identifier) @type
-; Functions and callbacks
-(argument) @variable.parameter
-
-(function_call
- name: (_) @function.call)
-
-; definitions
-(callback
- name: (_) @function)
+(var_identifier) @variable
-(callback_alias
- name: (_) @function)
+(state_identifier) @variable.other.member
-(callback_event
- name: (simple_identifier) @function.call)
+(var_identifier
+ (post_identifier) @variable)
-(enum_definition
- name: (_) @type.enum)
+(function_identifier) @function
-(function_definition
- name: (_) @function)
+(reference_identifier) @keyword.storage.modifier.ref
+(visibility_modifier) @keyword.storage.modifier
-(struct_definition
- name: (_) @type)
-
-(typed_identifier
- type: (_) @type)
-
-; Operators
-(binary_expression
- op: (_) @operator)
+(comment) @comment
-(unary_expression
- op: (_) @operator)
+(string) @string
+(int_number) @constant.numeric
+(unit_type) @type.builtin
[
- (comparison_operator)
- (mult_prec_operator)
- (add_prec_operator)
- (unary_prec_operator)
- (assignment_prec_operator)
-] @operator
+"struct"
+"property"
+"callback"
+"import"
+"from"
+"root"
+"parent"
+"this"
+"for"
+"in"
+"if"
+"else if"
+"else"
+"animate"
+"states"
+"when"
+"in"
+"out"
+"transitions"
+"global"
+] @keyword
[
- ":="
- "=>"
- "->"
- "<=>"
-] @operator
-
+ "black"
+ "transparent"
+ "blue"
+ "ease"
+ "ease_in"
+ "ease-in"
+ "ease_in_out"
+ "ease-in-out"
+ "ease_out"
+ "ease-out"
+ "end"
+ "green"
+ "red"
+ "red"
+ "start"
+ "yellow"
+ "true"
+ "false"
+ ] @constant.builtin
+
+"@" @keyword
+
+; ; Punctuation
[
- ";"
- "."
","
+ "."
] @punctuation.delimiter
+; ; Brackets
[
- "("
- ")"
- "["
- "]"
- "{"
- "}"
+"("
+")"
+"["
+"]"
+"{"
+"}"
] @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)
+[
+"angle"
+"bool"
+"brush"
+; "color" // This causes problems
+"duration"
+"easing"
+"float"
+"image"
+"int"
+"length"
+"percent"
+"physical-length"
+"physical_length"
+"string"
+] @type.builtin
-; Attributes
[
- (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
- [
- "?"
- ":"
- ] @keyword.control.conditional)
-
-(animate_statement
- "animate" @keyword)
-
-(callback
- "callback" @keyword.function)
-
-(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)
+ ":="
+ "!"
+ "-"
+ "+"
+ "*"
+ "/"
+ "&&"
+ "||"
+ ">"
+ "<"
+ ">="
+ "<="
+ "="
+ ":"
+ "+="
+ "-="
+ "*="
+ "/="
+ "?"
+
+ "=>"
+ ] @operator
+
+(ternary_expression [":" "?"] @keyword.control.conditional) \ No newline at end of file