mirror of
https://github.com/helix-editor/helix
synced 2026-03-07 20:46:21 +01:00
97 lines
1.1 KiB
Scheme
97 lines
1.1 KiB
Scheme
; Keywords
|
|
[
|
|
"DIM"
|
|
"IF"
|
|
"THEN"
|
|
"ELSE"
|
|
"END IF"
|
|
"WHILE"
|
|
"WEND"
|
|
"FOR"
|
|
"TO"
|
|
"STEP"
|
|
"NEXT"
|
|
"DO"
|
|
"LOOP"
|
|
"UNTIL"
|
|
"SUB"
|
|
"END SUB"
|
|
"FUNCTION"
|
|
"END FUNCTION"
|
|
"RETURN"
|
|
"PRINT"
|
|
"INPUT"
|
|
"SLEEP"
|
|
"AS"
|
|
] @keyword
|
|
|
|
; Logical operators
|
|
[
|
|
"AND"
|
|
"OR"
|
|
"NOT"
|
|
"MOD"
|
|
] @keyword.operator
|
|
|
|
; Types
|
|
[
|
|
"INTEGER"
|
|
"LONG"
|
|
"SINGLE"
|
|
"DOUBLE"
|
|
"STRING"
|
|
"BYTE"
|
|
] @type
|
|
|
|
(type_identifier) @type
|
|
|
|
; Function and sub declarations
|
|
(sub_declaration
|
|
name: (identifier) @function)
|
|
(function_declaration
|
|
name: (identifier) @function)
|
|
|
|
; Function calls
|
|
(call_expression
|
|
function: (identifier) @function.call)
|
|
|
|
; Built-in functions
|
|
((identifier) @function.builtin
|
|
(#match? @function.builtin "^(?i)(ABS|SIN|COS|TAN|SQR|LEN|VAL|ASC|CHR|LEFT|RIGHT|MID|STR|INT|RND|INSTR|UCASE|LCASE|LTRIM|RTRIM|SPACE|TIME|DATE|TIMER)$"))
|
|
|
|
; Literals
|
|
(number_literal) @constant.numeric
|
|
(string_literal) @string
|
|
|
|
; Comments
|
|
(comment) @comment
|
|
|
|
; Operators
|
|
[
|
|
"="
|
|
"+"
|
|
"-"
|
|
"*"
|
|
"/"
|
|
"^"
|
|
"<>"
|
|
"<"
|
|
">"
|
|
"<="
|
|
">="
|
|
] @operator
|
|
|
|
; Punctuation
|
|
[
|
|
"("
|
|
")"
|
|
] @punctuation.bracket
|
|
|
|
[
|
|
","
|
|
";"
|
|
] @punctuation.delimiter
|
|
|
|
; Variables
|
|
(identifier) @variable
|