A minimal vim-like text editor for modern terminals written in Dart
Made for myself for fun and learning
- Getting Started Guide — quick introduction to vid
- Keybindings Reference — complete list of all keybindings
- vim motions, operators, text objects, visual and command mode
- multiple selections with regex search (
:select <pattern>) - syntax highlighting with theme selector (mono, rosepine, ayu, unicorn)
- LSP support (go to definition, references, rename, format and more..)
- proper emoji and wide character support
- multi-buffer support with interactive popups
- undo and redo
- file-based YAML configuration
Requires the Dart SDK (3.10+).
See build.sh.
vid loads configuration from YAML files at these locations (in order):
./— local project config (hidden dotfiles)$XDG_CONFIG_HOME/vid/~/.config/vid/
Two config files are supported:
| Local (project) | Global (~/.config/vid/) | Purpose |
|---|---|---|
.vid.yaml |
config.yaml |
Editor settings (see config.example.yaml) |
.vid-lsp.yaml |
lsp_servers.yaml |
LSP server configs (see lsp_servers.example.yaml) |
I'm open to PR's that align with vid's minimal philosophy.