LSP
installs missing servers for you
Managed language servers
Toast offers to install the language server you need — gopls, rust-analyzer, pyright, typescript-language-server, harper — using the toolchain you already have. Accept the prompt, keep coding. Servers on your $PATH are picked up automatically.
| Go | gopls | ✓ managed |
| Rust | rust-analyzer | ✓ managed |
| Python | pyright | ✓ managed |
| JS / TS | typescript-language-server | ✓ managed |
| Markdown | harper (spell check) | ✓ managed |
Syntax
Tree-sitter highlighting
Accurate, incremental syntax coloring for eleven languages — no regex guessing, no half-baked grammars.
Go
Python
JavaScript
TypeScript
Rust
CSS
HTML
YAML
Bash
Markdown
Search
powered by ripgrep
Project-wide search
Find anything across the whole tree with rg-speed search — plus in-file find & replace with match case, whole word, and next/previous navigation.
$
rg "TODO" internal/
internal/editor/editor.go · line 421 — TODO: handle empty buffer on save
internal/lsp/manager.go · line 88 — TODO: retry with backoff
Preview
Markdown preview
.md, .markdown, and .mdx render side by side with your code — images included. The editor stays the focus.
# release notes
rendered · .md / UTF-8
Tabs
Multi-buffer tabs
Open files stay visible and closable — with unsaved-changes indicators, mouse-close buttons, and quit confirmation so nothing slips away.
editor.go
README.md
theme.json
Git
Git-aware file tree
Modified and new files marked right in the tree, ignored files dimmed, current branch in the status bar.
vinternal
·editor/editor.goM
·lsp/manager.goA
·node_modules
Navigation
Go to definition
Hold Ctrl, hover to peek, click to jump to the exact definition. Or smash F12 at the cursor.
Ctrl + click to follow
// jump to the real thing
app.OpenTree()
Themes
Your palette, respected
The system theme derives from your terminal colors at runtime. Or pick toast-dark, toast-light — or import any VSCode theme.
systemfrom $TERM
toast-dark
toast-light+ vscode import
Config
Remappable everything
Keybindings, LSP servers, tabs, sidebar, and themes — all in one small JSON file at ~/.config/toast/config.json.
config ~/.config/toast/config.json
{ "theme": "toast-dark",
"keybindings": { "save": ["ctrl+s"] },
"lsp": { "zig": { "command": "zls" } }
}