zed + neovim + cursor
Native GTK 4 β no Electron.
Node.js under the hood β the full npm ecosystem.
A keyboard-driven, modern code editor β blending the best from neovim, atom, zed, vscode, and so many others β with coding agents living right alongside you β each tracked live, so you always know which agent is working, waiting, or done.
Beta state. Tested on Linux; might not run on macOS or Windows yet.
- β¨οΈ Vim beyond its best: the
vim-mode-plusplugin ported from Atom β so good it's better than the original. Multi-cursor, occurrences, text objects, operators, and more (target.vim, leap.nvim, etc). - π€ Agents (well at least
claude) β you work alongside your minions. Jump to their workbench to see what they edited. Jump to your workbench to work on your own. - π³ Worktree isolation β spawn agents in their own
git worktreeand switch to their view whenever you want. - πͺ Built for simplicity β a
space-leader scheme (thanks Spacemacs) and fuzzy finders for everything. - π¨ Native GNOME look β Adwaita with simple theming support.
- β¨ Editor essentials β LSP, tree-sitter syntax highlighting, file tree, git integration, and more.
zym needs Node.js β₯ 22.15 and the GTK 4 stack (GTK 4, libadwaita, GtkSourceView 5, Vte):
# Arch
sudo pacman -S --needed nodejs npm gtk4 libadwaita gtksourceview5 vte4
# Fedora
sudo dnf install nodejs npm gtk4 libadwaita gtksourceview5 vte291-gtk4
# Debian / Ubuntu
sudo apt install gir1.2-gtk-4.0 gir1.2-adw-1 gir1.2-gtksource-5 gir1.2-vte-3.91then:
npm install -g zym-editor
zym # open the editor
zym --install-desktop # add zym to your app launcher (optional)On Arch, zym-git from the AUR
replaces all of the above (dependencies and desktop entry included):
yay -S zym-gitDetails, pnpm instructions, and fixes for common problems: getting started Β· troubleshooting.
Everything hangs off the space leader β press space, then a mnemonic:
| Keys | Action |
|---|---|
space space |
command palette β fuzzy-search every command |
space ? |
keymap panel β every binding, live |
space o |
fuzzy file picker |
space / |
project-wide search (ripgrep) |
space g g |
git panel |
space a a |
agent picker |
space , , |
preferences |
The editor is modal (vim), terminals are modal too, and every list navigates
with j/k. Full tour: the user guide β
keybindings Β·
configuration Β·
git & GitHub Β·
agents.
Run claude and friends in the workbench, branch and switch between them from
a fuzzy command palette, and drive everything without leaving the keyboard.
Language servers power completion, hover docs, and diagnostics β and zym offers to install a missing server for you.
Jump to any symbol, search the project with ripgrep, or find-and-replace with regex in the current file.
Checkout a pull request branch without leaving your editor. Filter as if you were on GitHub.
Create a pull request in a single click.
See live CI check status, and jump to any run log:
A file tree and a live git status view sit side by side in the left dock.
- User guide β getting started, keybindings, configuration, git & GitHub, agents, troubleshooting.
- Vim keymap reference β every binding, per mode.
docs/β internal architecture notes, if you want to hack on zym itself.
The tree-sitter highlight queries under src/syntax/queries/ are vendored from
Zed (crates/grammars/src/), which are
licensed GPL-3.0 β bundling them is why zym is distributed under the GPL.