Leader key: Space
- Open file explorer:
<leader>pv - Split window:
:sp(horizontal),:vs(vertical) - Switch buffers:
:bnext/:bprev, orCtrl-^(last buffer) - Toggle terminal:
<leader>t - Float terminal:
<leader>ft - Lazygit:
<leader>lg - Leave terminal insert mode:
Esc Esc(double-escape) - Close buffer:
:bd
- Open file explorer:
<leader>pv - Navigate splits:
Ctrl-h/j/k/l(normal mode) - Navigate splits from terminal:
Ctrl-h/j/k/l(terminal mode)
- Find files:
<leader>ff - Live grep:
<leader>fg - Buffers:
<leader>fb - Git status:
<leader>fs - Git commits:
<leader>fc
- Add file:
<leader>a - Toggle quick menu:
Ctrl-e - Jump to mark 1-4:
Ctrl-h,Ctrl-t,Ctrl-n,Ctrl-s - Prev/next mark:
Ctrl-Shift-P,Ctrl-Shift-N
- Toggle bottom terminal:
<leader>t - Toggle floating terminal:
<leader>ft - Open lazygit:
<leader>lg
- Toggle undo tree:
<leader>u
- Press
<leader>and pause to see all keybindings
- Start selection:
Ctrl-Space - Expand selection:
Ctrl-Space - Shrink selection:
Backspace
- Hover docs:
K - Go to definition:
gd - Code action:
<leader>ca
- Navigate menu:
Ctrl-n/Ctrl-p - Confirm selection:
Enter - Sources: LSP, file paths, current buffer
- Auto-formats on save
- JS/TS/JSON/CSS: Biome
- Lua: stylua (
brew install stylua) - Go/Rust/Python: LSP fallback
- Check active formatter:
:ConformInfo
- Added/changed/deleted lines shown in the gutter automatically
- Next hunk:
]c - Previous hunk:
[c
- Treesitter installs parsers for: json, javascript, typescript, tsx, yaml, html, css, markdown, bash, lua, vim, dockerfile, gitignore, c, rust.
- Mason ensures LSP servers:
lua_ls,ts_ls,biome,pyright,gopls,rust_analyzer.