What this is
ReadyVim is the configuration I use for the four tools I spend my day in:
Neovim, tmux, lf and lazygit. They're set up to behave like one thing rather
than four — the same Ctrl+h/j/k/l crosses Neovim splits and tmux
panes, lazygit opens files back into the Neovim that launched it, and lf takes
over as the file manager instead of netrw.
Why it's here
For fun, mostly. I kept tweaking this setup and figured I'd put it somewhere public rather than let it live only on my laptop. If you're building your own config and want to steal an idea, a keymap or a whole file, please do.
It isn't a Neovim distribution or a maintained product, and there's no company behind it. It's one developer's dotfiles. Things will change when they annoy me, and I won't always write it down.
What's inside
- Neovim — lazy.nvim, LSP through Mason, Telescope, treesitter, DAP, gitsigns, format-on-save, jump-anywhere motions, project-wide find and replace, PR-style diff review, Markdown notes with links between them, and a Python REPL through Jupyter.
- tmux — standalone, no framework.
Ctrl+Spaceprefix, floating popups, fzf pickers for projects and sessions, a worktree per branch, and sessions that survive a reboot. - lf — the file manager, opened straight from Neovim.
- lazygit — with the "open in parent nvim" integration.
Install
git clone git@github.com:mohamadKrayem/readyvim.git ~/personal/dotfiles
cd ~/personal/dotfiles
./install.sh
Existing configs are backed up before anything is linked. Full steps are under Install, and the main keymaps are under Keymaps.