New features
- Grammars bundled in prebuilt binaries. Release binaries — including the one mise installs — now embed pre-built tree-sitter grammar libraries for every built-in language and extract them into
~/.config/vorto/on first launch. Syntax highlighting works out of the box: novorto grammar install, no network, and no C compiler. The extraction is idempotent, re-runs after an upgrade to pick up refreshed grammars, and never clobbers a grammar you’ve repointed with a[grammars.<name>]config entry. Builds fromcargo installand plaincargo buildkeep the runtime-install flow instead. See Installation and Grammars. - Seven new built-in languages. Julia (
.jl), Gleam (.gleam), Scala (.scala,.sbt,.sc), Odin (.odin), Protocol Buffers (.proto), CMake (.cmake,CMakeLists.txt), and XML (.xml,.xsd,.xsl,.xslt,.svg,.wsdl) each ship with a pinned grammar recipe, language config, and vendored queries — bringing the built-in catalog to 44 languages. See Supported languages. - Richer text objects. Call-argument text objects (
ia/aa), OCaml and Haskell argument objects, inner-body trimming, and a Zig inner object round out the tree-sittertextobjects.scmcoverage.
Improvements
- Fold queries for the built-ins. Every built-in language now ships a
folds.scm, so code folding follows real syntax (functions, blocks, brackets) instead of falling back to indentation. Missingindents.scmfiles were filled in at the same time. - Text predicates are now honored. Tree-sitter
#eq?/#match?text predicates are applied when highlighting and when matching injections, so predicate-gated rules — like XML’s<style>→ CSS and<script>→ JavaScript injections, or Julia’sr"…"→ regex — only fire on the nodes they target.