Vorto is a modal terminal text editor written in Rust. It combines Vim-inspired keyboard-driven editing with tree-sitter syntax highlighting and a full Language Server Protocol client, giving you diagnostics, completions, hover documentation, code actions, and goto definition — all inside the terminal. This page explains Vorto’s core concepts and points you to the sections you need most.Documentation Index
Fetch the complete documentation index at: https://vorto-editor.dev/llms.txt
Use this file to discover all available pages before exploring further.
Editing model
Vorto is a modal editor: the meaning of every key depends on the active mode. There are five editing modes:- Normal — the default mode for navigation and text manipulation
- Insert — for typing new text; enter with
i, return to Normal withEsc - Visual — for selecting characters; enter with
v - Visual Line — for selecting whole lines; enter with
V - Visual Block — for selecting rectangular columns; enter with
Ctrl-V
:, letting you run commands like :w (save) and :q (quit). This modal model keeps your hands on the home row and removes the need for modifier-heavy shortcuts.
Language support
Vorto uses tree-sitter for syntax highlighting. Grammars are not bundled — you install the ones you need withvorto grammar install. Over twenty built-in recipes are available, including Rust, Python, Go, JavaScript, TypeScript, and more.
The LSP client connects to any Language Server you have installed. It supports diagnostics, completions, hover, code actions, and goto definition out of the box.
Configuration
Editor settings, keymaps, themes, and per-language indent rules all live in~/.config/vorto/config.toml. Installed grammars and highlight queries are stored under ~/.config/vorto/grammars/ and ~/.config/vorto/queries/ respectively.
Explore the docs
Installation
Install Vorto from crates.io or build it from source.
Quick start
Open a file, navigate in Normal mode, and make your first edit.
Editing modes
Understand Normal, Insert, Visual, and Command mode in depth.
Language grammars
Install and manage tree-sitter grammars for syntax highlighting.
LSP client
Connect language servers for completions, diagnostics, and more.
Configuration
Customize keybindings, themes, and language settings via TOML.