⌨️ Bare Metal Neovim Keybindings
Leader key: <Space>
Key
Action
<C-h/j/k/l>
Navigate windows
<C-d>
Scroll down (centered)
<C-u>
Scroll up (centered)
<S-h>
Previous buffer
<S-l>
Next buffer
-
Open parent directory (Oil)
{ / }
Previous/Next symbol (Aerial)
]] / [[
Next/Prev reference (Illuminate)
]t / [t
Next/Prev TODO comment
]c / [c
Next/Prev git hunk
]d / [d
Next/Prev diagnostic
]q / [q
Next/Prev quickfix
Key
Action
<leader>ff
Find files
<leader>fg
Git files
<leader>fr
Live grep
<leader>fb
Buffers
<leader>fh
Find hidden files
<leader>fn
New file
<space>fb
File browser
<space>fB
File browser (current dir)
Key
Action
<leader>bd
Delete buffer
<leader>bn
Next buffer
<leader>bp
Previous buffer
<leader>ba
Delete all but current
Key
Action
<leader>w
Window commands (proxy to <C-w>)
<C-Up/Down>
Resize height
<C-Left/Right>
Resize width
Key
Action
gd
Go to definition
gD
Go to declaration
gi
Go to implementation
gr
References
K
Hover documentation
<F2>
Rename
<F4>
Code action
<leader>ld
Go to definition
<leader>lr
References
<leader>lh
Hover
<leader>lf
Format
<leader>la
Code action
<leader>ln
Rename
<leader>ca
Code action
<leader>rn
Rename
<leader>f
Format buffer
<leader>d
Show diagnostic float
Key
Action
<leader>ss
Search in buffer
<leader>sw
Search word under cursor
<leader>sc
Commands
<leader>sk
Keymaps
<leader>sr
Search & Replace (Spectre)
<leader>st
TODO comments
<leader>sT
TODO/FIX/FIXME only
Key
Action
<leader>gs
Git status
<leader>gc
Git commit
<leader>gp
Git push
<leader>gl
Git log
<leader>gg
Lazygit
ih
Select hunk (visual/operator)
🐛 Diagnostics (leader + x)
Key
Action
<leader>xx
Toggle diagnostics
<leader>xX
Buffer diagnostics
<leader>xq
Quickfix list
<leader>xl
Location list
<leader>xs
Symbols
<leader>xr
LSP references
Key
Action
<leader>tt
Toggle terminal
<leader>tf
Floating terminal
<leader>th
Horizontal terminal
<leader>tv
Vertical terminal
<Esc>
Exit terminal mode
<C-h/j/k/l>
Navigate from terminal
🔨 CMake (F-keys & Ctrl+m)
Key
Action
<F5>
CMake Generate
<F6>
CMake Build
<F7>
CMake Run
<F8>
CMake Debug
<F9>
CMake Clean
<C-m>g
CMake Generate
<C-m>b
CMake Build
<C-m>r
CMake Run
<C-m>c
CMake Clean
<C-m>s
CMake Switch
<C-m>o
CMake Open
<C-m>t
Select target
Key
Action
<F5>
Continue
<F9>
Toggle breakpoint
<F10>
Step over
<F11>
Step into
<F12>
Step out
<leader>b
Toggle breakpoint
Key
Action
<F10> (visual)
Extract function
<F11> (visual)
Extract variable
<F12> (visual)
Inline variable
<C-r>f
Extract block
<C-r>i
Inline function
<C-r>p
Debug printf
<C-r>v
Print variable
<C-r>c
Cleanup debug
Key
Action
<A-o>
Switch header/source
<A-i>
Symbol info
<A-t>
Type hierarchy
<A-m>
Memory usage
<A-a>
AST
Key
Action
<leader>ng
Generate docs
<leader>nf
Function docs
<leader>nc
Class docs
<leader>nt
Type docs
Key
Action
<leader>tn
Toggle line numbers
<leader>tr
Toggle relative numbers
<leader>tw
Toggle word wrap / Twilight
<leader>ts
Toggle spell check
Key
Action
<leader>qs
Load session (current dir)
<leader>qS
Select session
<leader>ql
Load last session
<leader>qd
Stop recording
<leader>qq
Quit all
<leader>qw
Save and quit
<leader>qf
Force quit
<C-s>
Search sessions
Key
Action
<leader>tt
Run nearest test
<leader>tf
Run file tests
<leader>ts
Test summary
Key
Action
<leader>?
Show all keymaps (which-key)
<leader>e
File explorer (Oil)
<leader>a
Aerial toggle (symbols)
<leader>u
Undotree toggle
Q
Disabled (no Ex mode)
Key
Action
<A-j> / J
Move selection down
<A-k> / K
Move selection up
p
Paste without yanking
Generated for Bare Metal Neovim Config