153 lines
3.2 KiB
Scheme
153 lines
3.2 KiB
Scheme
; Waltzing Template Highlights
|
|
|
|
; Comments
|
|
(template_comment_1) @comment
|
|
(template_comment_2) @comment
|
|
(template_comment_3) @comment
|
|
(template_comment_4) @comment
|
|
(template_comment_5) @comment
|
|
(template_comment_6) @comment
|
|
(template_comment_7) @comment
|
|
(template_comment_8) @comment
|
|
(template_comment_9) @comment
|
|
(template_comment_10) @comment
|
|
(template_comment_11) @comment
|
|
(template_comment_12) @comment
|
|
(template_comment_13) @comment
|
|
(template_comment_14) @comment
|
|
(template_comment_15) @comment
|
|
(template_comment_16) @comment
|
|
(template_comment_17) @comment
|
|
(template_comment_18) @comment
|
|
(template_comment_19) @comment
|
|
(template_comment_20) @comment
|
|
(template_comment_21) @comment
|
|
(template_comment_22) @comment
|
|
(html_comment) @comment
|
|
|
|
; Raw blocks
|
|
(raw_block_1) @string.special
|
|
(raw_block_2) @string.special
|
|
(raw_block_3) @string.special
|
|
(raw_block_4) @string.special
|
|
(raw_block_5) @string.special
|
|
(raw_block_6) @string.special
|
|
(raw_block_7) @string.special
|
|
(raw_block_8) @string.special
|
|
(raw_block_9) @string.special
|
|
(raw_block_10) @string.special
|
|
(raw_block_11) @string.special
|
|
(raw_block_12) @string.special
|
|
(raw_block_13) @string.special
|
|
(raw_block_14) @string.special
|
|
(raw_block_15) @string.special
|
|
(raw_block_16) @string.special
|
|
(raw_block_17) @string.special
|
|
(raw_block_18) @string.special
|
|
(raw_block_19) @string.special
|
|
(raw_block_20) @string.special
|
|
(raw_block_21) @string.special
|
|
(raw_block_22) @string.special
|
|
|
|
; Keywords
|
|
"@use" @keyword
|
|
"@import" @keyword
|
|
"@struct" @keyword
|
|
"@enum" @keyword
|
|
"@fn" @keyword
|
|
"@let" @keyword
|
|
"@if" @keyword
|
|
"@for" @keyword
|
|
"@match" @keyword
|
|
"@break" @keyword
|
|
"@continue" @keyword
|
|
"else" @keyword
|
|
"if" @keyword
|
|
"let" @keyword
|
|
"in" @keyword
|
|
"as" @keyword
|
|
"mut" @keyword
|
|
"safe" @keyword
|
|
|
|
; Types
|
|
(primitive_type) @type
|
|
(struct_definition (identifier) @type)
|
|
(enum_definition (identifier) @type)
|
|
(generic_params (identifier) @type)
|
|
(generic_type (rust_path) @type)
|
|
|
|
; Functions
|
|
(function_definition (identifier) @fn)
|
|
(function_path) @fn
|
|
(method_call (identifier) @fn)
|
|
|
|
; Parameters
|
|
(parameter (identifier) @variable)
|
|
|
|
; Properties
|
|
(struct_field (identifier) @property)
|
|
(field_access (identifier) @property)
|
|
(field_pattern (identifier) @property)
|
|
|
|
; Constructors
|
|
(enum_variant (identifier) @constructor)
|
|
|
|
; Strings
|
|
(string_literal) @string
|
|
(char_literal) @string
|
|
(attribute_value) @string
|
|
|
|
; Numbers
|
|
(integer_literal) @number
|
|
(float_literal) @number
|
|
|
|
; Booleans
|
|
(boolean_literal) @boolean
|
|
|
|
; Operators
|
|
(binary_operator) @operator
|
|
(unary_operator) @operator
|
|
"=>" @operator
|
|
"=" @operator
|
|
|
|
; Punctuation
|
|
"{" @punctuation.bracket
|
|
"}" @punctuation.bracket
|
|
"(" @punctuation.bracket
|
|
")" @punctuation.bracket
|
|
"[" @punctuation.bracket
|
|
"]" @punctuation.bracket
|
|
"," @punctuation.delimiter
|
|
":" @punctuation.delimiter
|
|
";" @punctuation.delimiter
|
|
|
|
; Tags
|
|
(tag_name) @tag
|
|
"<@" @tag
|
|
"</@" @tag
|
|
|
|
; Attributes
|
|
(attribute_name) @attribute
|
|
(attribute_list) @attribute
|
|
(attribute (identifier) @attribute)
|
|
|
|
; Module paths
|
|
(use_statement (rust_path) @type)
|
|
(rust_path) @variable
|
|
|
|
; Escape
|
|
(escape_sequence) @escape
|
|
(escape_at) @escape
|
|
|
|
; Embedded language names
|
|
"json" @label
|
|
"alpine" @label
|
|
"js" @label
|
|
"javascript" @label
|
|
"css" @label
|
|
"style" @label
|
|
"html" @label
|
|
|
|
; Variables (fallback)
|
|
(identifier) @variable
|