mirror of
https://github.com/soconnor0919/tree-sitter-vm.git
synced 2026-02-05 00:06:41 -05:00
55 lines
1.0 KiB
Scheme
55 lines
1.0 KiB
Scheme
; VM language syntax highlighting queries based on actual node types
|
|
|
|
; Arithmetic and logical commands
|
|
(arithmetic_command) @keyword
|
|
|
|
; Memory access commands
|
|
"push" @keyword
|
|
"pop" @keyword
|
|
|
|
; Memory segments
|
|
(memory_segment) @type
|
|
|
|
; Program flow commands
|
|
"label" @keyword.control
|
|
"goto" @keyword.control
|
|
"if-goto" @keyword.control
|
|
|
|
; Function commands
|
|
"function" @keyword.function
|
|
"call" @keyword.function
|
|
(return_command) @keyword.function
|
|
|
|
; Numbers (indices, counts)
|
|
(index) @constant.numeric
|
|
(local_vars_count) @constant.numeric
|
|
(args_count) @constant.numeric
|
|
|
|
; Identifiers
|
|
(label_name) @label
|
|
(function_name) @function
|
|
|
|
; Comments
|
|
(comment) @comment
|
|
|
|
; Specific memory segments highlighting
|
|
"argument" @type.builtin
|
|
"local" @type.builtin
|
|
"static" @type.builtin
|
|
"constant" @type.builtin
|
|
"this" @type.builtin
|
|
"that" @type.builtin
|
|
"pointer" @type.builtin
|
|
"temp" @type.builtin
|
|
|
|
; Arithmetic operations
|
|
"add" @operator
|
|
"sub" @operator
|
|
"neg" @operator
|
|
"eq" @operator
|
|
"gt" @operator
|
|
"lt" @operator
|
|
"and" @operator
|
|
"or" @operator
|
|
"not" @operator
|