mirror of https://github.com/helix-editor/helix
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
131 lines
1.9 KiB
Scheme
131 lines
1.9 KiB
Scheme
2 weeks ago
|
(self) @variable.builtin
|
||
|
|
||
|
(unit_definition (identifier) @function)
|
||
|
|
||
|
(parameter (identifier) @variable.parameter)
|
||
|
|
||
|
((pipeline_reg_marker) @keyword)
|
||
|
|
||
|
(scoped_identifier
|
||
|
path: (identifier) @namespace)
|
||
|
(scoped_identifier
|
||
|
(scoped_identifier
|
||
|
name: (identifier) @namespace))
|
||
|
|
||
|
((builtin_type) @type.builtin)
|
||
|
|
||
|
((identifier) @type.builtin
|
||
|
(#any-of?
|
||
|
@type.builtin
|
||
|
"uint"
|
||
|
"Option"
|
||
|
"Memory"))
|
||
|
|
||
|
((identifier) @type.enum.variant.builtin
|
||
|
(#any-of? @type.enum.variant.builtin "Some" "None"))
|
||
|
|
||
|
((pipeline_stage_name) @label)
|
||
|
|
||
|
((stage_reference
|
||
|
stage: (identifier) @label))
|
||
|
|
||
|
[
|
||
|
"pipeline"
|
||
|
"let"
|
||
|
"set"
|
||
|
"entity"
|
||
|
"fn"
|
||
|
"reg"
|
||
|
"reset"
|
||
|
"initial"
|
||
|
"inst"
|
||
|
"assert"
|
||
|
"struct"
|
||
|
"enum"
|
||
|
"stage"
|
||
|
"impl"
|
||
|
"port"
|
||
|
"decl"
|
||
|
"mod"
|
||
|
"where"
|
||
|
"trait"
|
||
|
] @keyword
|
||
|
|
||
|
[
|
||
|
"use"
|
||
|
] @keyword.import
|
||
|
|
||
|
[
|
||
|
"$if"
|
||
|
"$else"
|
||
|
"$config"
|
||
|
] @keyword.directive
|
||
|
|
||
|
((comptime_if ["{" "}"] @keyword.directive))
|
||
|
((comptime_else ["{" "}"] @keyword.directive))
|
||
|
|
||
|
((attribute) ["#" "[" "]"] @punctuation.delimiter)
|
||
|
|
||
|
[
|
||
|
"else"
|
||
|
"if"
|
||
|
"match"
|
||
|
] @keyword.control.conditional
|
||
|
|
||
|
(bool_literal) @constant.builtin.boolean
|
||
|
(int_literal) @constant.numeric.integer
|
||
|
|
||
|
[
|
||
|
"&"
|
||
|
"inv"
|
||
|
"-"
|
||
|
"=>"
|
||
|
">"
|
||
|
"<"
|
||
|
"::<"
|
||
|
"::$<"
|
||
|
"="
|
||
|
"->"
|
||
|
"~"
|
||
|
"!"
|
||
|
] @operator
|
||
|
|
||
|
|
||
|
((op_add) @operator)
|
||
|
((op_sub) @operator)
|
||
|
((op_mul) @operator)
|
||
|
((op_equals) @operator)
|
||
|
((op_lt) @operator)
|
||
|
((op_gt) @operator)
|
||
|
((op_le) @operator)
|
||
|
((op_ge) @operator)
|
||
|
((op_lshift) @operator)
|
||
|
((op_rshift) @operator)
|
||
|
((op_bitwise_and) @operator)
|
||
|
((op_bitwise_xor) @operator)
|
||
|
((op_bitwise_or) @operator)
|
||
|
((op_logical_and) @operator)
|
||
|
((op_logical_or) @operator)
|
||
|
|
||
|
|
||
|
[
|
||
|
(line_comment)
|
||
|
(block_comment)
|
||
|
] @comment
|
||
|
|
||
|
[
|
||
|
(doc_comment)
|
||
|
] @comment.block.documentation
|
||
|
|
||
|
|
||
|
((identifier) @type
|
||
|
(#match? @type "[A-Z]"))
|
||
|
|
||
|
((scoped_identifier
|
||
|
name: (identifier) @type)
|
||
|
(#match? @type "^[A-Z]"))
|
||
|
|
||
|
((identifier) @constant
|
||
|
(#match? @constant "^[A-Z][A-Z\\d_]*$"))
|
||
|
|