Vendor libtree-sitter.so (v0.26.8, wasmtime 44.0 statically linked) and call its C API through dart:ffi. Grammar WASM files are loaded by tree-sitter's embedded wasmtime engine via ts_wasm_store_load_language. 48 grammars compiled with tree-sitter build --wasm, 48 highlight queries (42 from upstream repos, 6 written in-house for comment, erlang, gdscript, gitignore, hcl, hlsl, swift). SQLite grammar replaces full SQL (974K-line parser exhausted RAM at compile time). Removes wasm_run and wasm_run_flutter — they downloaded a 22 MB binary from GitHub at first launch, violating the no-network-on- default-launch-path policy. Co-Authored-By: Claude <noreply@anthropic.com>
48 lines
859 B
Scheme
48 lines
859 B
Scheme
[
|
|
"if" "else"
|
|
"for" "while" "do"
|
|
"switch" "case" "default" "break" "continue"
|
|
"return" "discard"
|
|
"struct" "typedef" "cbuffer" "tbuffer"
|
|
"register" "packoffset"
|
|
"in" "out" "inout"
|
|
"static" "const" "extern" "volatile"
|
|
"inline"
|
|
"true" "false"
|
|
] @keyword
|
|
|
|
(type_identifier) @type
|
|
(primitive_type) @type.builtin
|
|
|
|
(function_declarator (identifier) @function)
|
|
(call_expression (identifier) @function)
|
|
|
|
(string_literal) @string
|
|
|
|
(number_literal) @number
|
|
|
|
(comment) @comment
|
|
|
|
(identifier) @variable
|
|
(field_expression (identifier) @property)
|
|
|
|
(preproc_directive) @keyword
|
|
(preproc_include) @keyword
|
|
|
|
[
|
|
"(" ")" "[" "]" "{" "}"
|
|
] @punctuation.bracket
|
|
|
|
[
|
|
"," "." ";" ":"
|
|
] @punctuation.delimiter
|
|
|
|
[
|
|
"=" "+=" "-=" "*=" "/=" "%="
|
|
"+" "-" "*" "/" "%"
|
|
"==" "!=" "<" ">" "<=" ">="
|
|
"&&" "||" "!"
|
|
"&" "|" "^" "~" "<<" ">>"
|
|
"?" ":"
|
|
] @operator
|