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>
57 lines
577 B
Scheme
57 lines
577 B
Scheme
[
|
|
(string)
|
|
(raw_string)
|
|
(heredoc_body)
|
|
(heredoc_start)
|
|
] @string
|
|
|
|
(command_name) @function
|
|
|
|
(variable_name) @property
|
|
|
|
[
|
|
"case"
|
|
"do"
|
|
"done"
|
|
"elif"
|
|
"else"
|
|
"esac"
|
|
"export"
|
|
"fi"
|
|
"for"
|
|
"function"
|
|
"if"
|
|
"in"
|
|
"select"
|
|
"then"
|
|
"unset"
|
|
"until"
|
|
"while"
|
|
] @keyword
|
|
|
|
(comment) @comment
|
|
|
|
(function_definition name: (word) @function)
|
|
|
|
(file_descriptor) @number
|
|
|
|
[
|
|
(command_substitution)
|
|
(process_substitution)
|
|
(expansion)
|
|
]@embedded
|
|
|
|
[
|
|
"$"
|
|
"&&"
|
|
">"
|
|
">>"
|
|
"<"
|
|
"|"
|
|
] @operator
|
|
|
|
(
|
|
(command (_) @constant)
|
|
(#match? @constant "^-")
|
|
)
|