nvim.keys
keymap reference · yashksaini-coder/nvim
<leader> is SPC · press / to filter · Esc resets
globals
Always-there keys.
- EscClear search highlightsn
- <C-s>Save filen i x s
- <leader>qQuit alln
- <leader>?Buffer keymaps (which-key)n
windows
Navigate & resize splits.
- <C-h>Move to left windown
- <C-j>Move to lower windown
- <C-k>Move to upper windown
- <C-l>Move to right windown
- <C-Up>Increase heightn
- <C-Down>Decrease heightn
- <C-Left>Decrease widthn
- <C-Right>Increase widthn
- <C-w><Space>Window hydra (which-key)n
buffer
<leader>b — bufferline & buffer ops.
- <leader>bdDelete buffern
- <leader>bpToggle pinn
- <leader>bPDelete non-pinnedn
- <leader>boClose other buffersn
- <leader>brClose buffers rightn
- <leader>blClose buffers leftn
- <leader>bmMove buffer nextn
- <leader>bMMove buffer prevn
- <S-h>Prev buffern
- <S-l>Next buffern
- [bPrev buffern
- ]bNext buffern
file & find
<leader>f — Telescope pickers.
- <leader>ffFind filesn
- <C-p>Find filesn
- <leader>frRecent filesn
- <leader>fRRecent files (cwd)n
- <leader>fgLive grepn
- <leader>fsGrep string under cursorn
- <leader>fbFind buffersn
- <leader>fhHelp tagsn
- <leader>fdDiagnosticsn
- <leader>fpProjectsn
- <leader>fmFormat file / rangen v
git
<leader>g · <leader>h — gitsigns hunks, lazygit & friends.
- <leader>ggOpen Lazygit (toggleterm)n
- <leader>glLazygit log — cwd (snacks)n
- <leader>gdGo to definition (LSP)n
- <leader>grGo to references (LSP)n
- <leader>hsStage hunkn v
- <leader>hrReset hunkn v
- <leader>hSStage buffern
- <leader>hRReset buffern
- <leader>hpPreview hunkn
- <leader>hiPreview hunk inlinen
- <leader>hbBlame linen
- <leader>hdDiff thisn
- [cPrev git hunkn
- ]cNext git hunkn
code & lsp
LSP actions, explorer, outline.
- KLSP hovern
- <leader>caCode actionn
- <leader>csSymbols (Trouble)n
- <leader>clLSP defs / refs (Trouble)n
- <leader>eToggle Explorer (nvim-tree)n
- <leader>oToggle outline (aerial)n
- <leader>fmFormat file / range (conform)n v
- gxOpen with system appn
crates cargo.toml
<leader>c — crates.nvim in Cargo.toml.
- <leader>ctToggle crates infon
- <leader>crReload cratesn
- <leader>cvShow crate versionsn
- <leader>cfShow crate featuresn
- <leader>cdShow crate dependenciesn
- <leader>cuUpdate crate / cratesn v
- <leader>cUUpgrade crate / cratesn v
- <leader>cpaUpdate all cratesn
- <leader>cAUpgrade all cratesn
- <leader>cxExpand crate to inline tablen
- <leader>cXExtract crate to tablen
- <leader>cHOpen crate homepagen
- <leader>cROpen crate repositoryn
- <leader>cDOpen crate documentationn
- <leader>cCOpen crate on crates.ion
- <leader>cLOpen crate on lib.rsn
debug dap
<leader>d — nvim-dap controls.
- <leader>dbToggle breakpointn
- <leader>dBConditional breakpointn
- <leader>dcContinue / startn
- <leader>diStep inton
- <leader>doStep overn
- <leader>dOStep outn
- <leader>drToggle REPLn
- <leader>dlRun lastn
- <leader>duToggle DAP UIn
- <leader>dtTerminaten
rust ferris
<leader>r — rust-analyzer extras in .rs files.
- <leader>rmExpand macron
- <leader>rjJoin linesn v
- <leader>rhView HIRn
- <leader>rlView MIRn
- <leader>rsView memory layoutn
- <leader>rtView syntax treen v
- <leader>riView item treen
- <leader>rcOpen Cargo.tomln
- <leader>rpParent modulen
- <leader>rdOpen documentationn
- <leader>rwReload workspacen
- <leader>rbRebuild proc macrosn
docs & man
<leader>k — reach for a manual.
- <leader>kkOpen this keymap reference siten
- <leader>kmOpen man page (prompted)n
- <leader>kwMan page for word under cursorn
terminal
<leader>t — toggleterm splits, REPLs, monitor.
- <C-\>Toggle terminaln t
- <leader>tfTerminal (float)n
- <leader>thTerminal (horizontal)n
- <leader>tvTerminal (vertical)n
- <leader>tpPython REPLn
- <leader>tNNode REPLn
- <leader>tmSystem Monitorn
- <leader>taToggle all terminalsn
- <leader>tsSelect terminal / send to terminaln v
- <leader>t1Terminal 1n
- <leader>t2Terminal 2n
- <leader>t3Terminal 3n
- <leader>t4Terminal 4n
tabs
<leader>T — goto Tn, move Tm{r,l}. <leader>t — new / close / only.
- <leader>tnNew tabn
- <leader>tcClose tabn
- <leader>toClose other tabsn
- gtNext tabn
- gTPrevious tabn
- <leader>TmrMove tab rightn
- <leader>TmlMove tab leftn
- <leader>T1..9Go to tab Nn
trouble & diagnostics
<leader>x — trouble.nvim panels + line float.
- <leader>xdShow line diagnostics (float)n
- <leader>xxDiagnostics (Trouble)n
- <leader>xXBuffer diagnostics (Trouble)n
- <leader>xLLocation list (Trouble)n
- <leader>xQQuickfix list (Trouble)n
markdown, make, minimap
<leader>m — render-markdown, native make, minimap.
- <leader>mpToggle markdown preview (render-markdown)n
- <leader>mbMake: build (C / C++)n
- <leader>mrMake: build & runn
- <leader>mTMake: toggle results (quickfix)n
- <leader>mxMake: runn
- <F5>Build C / C++ programn
- <F6>Build & run C / C++ programn
- <F7>Toggle compilation resultsn
- <F8>Run C / C++ programn
themes
Themery picker.
- <leader>tHTheme: open Themeryn
lazy
<leader>l — plugin manager.
- <leader>llOpen Lazyn
- <leader>lsSync pluginsn
- <leader>luUpdate pluginsn
- <leader>liInstall pluginsn
- <leader>lcCheck plugin healthn
- <leader>lxClean unused pluginsn
mason
LSP / DAP / linter / formatter installer.
- <leader>MOpen Masonn
noice
<leader>n — noice.nvim history & messages.
- <leader>nhNoice historyn
- <leader>nlNoice last messagen
- <leader>neNoice errorsn
- <leader>ndDismiss notificationsn
- <leader>npNoice pickern
- <leader>nsNoice statsn
boilerplates
Full-buffer templates for CP & new files.
- <leader>blpC++ (competitive programming)n
- <leader>blcC (competitive programming)n
- <leader>gotGon
- <leader>rstRustn
- <leader>plcC++ (LeetCode style)n
- <leader>cseC++ (CSES)n
- <leader>cshC#n
snippets
Insert-at-cursor code fragments.
- <leader>povprint vector (C++)n
- <leader>modmod inverse (C++)n
- <leader>diodiophantine (C++)n
- <leader>sforfor loop (C / C++ / Rust)n
- <leader>swhwhile loop (C / C++ / Rust)n
- <leader>sdodo-while (C / C++)n
- <leader>srangerange-for (C++) / for-in (Rust)n
animations
<leader>a — cellular-automaton eye candy.
- <leader>arMake it rainn
- <leader>agGame of lifen
misc
Everything else.
- <leader>isShow image at cursor (snacks)n
- <C-/>Toggle comment (visual)v
- gsSurround (prefix)n
- zFold (prefix)n
No keymaps match.
try rust, dap, buffer, sfor