Skip to main content
General keymaps for editing, navigation, and workflow management in Neovim. These keymaps are defined in lua/config/keymaps.lua:1.
The leader key is <Space>. All keymaps with <leader> require pressing Space first.

Editing operations

Core editing keymaps for text manipulation and movement.
KeyModeDescription
JvisualMove selected lines down
KvisualMove selected lines up
<visualIndent left (stays selected)
>visualIndent right (stays selected)
XnormalSplit line at cursor
dnormal, visualDelete without copying to clipboard
Dnormal, visualDelete to end of line without copying
The custom d and D keymaps prevent accidental clipboard pollution. Use the standard yank operators (y, yy) when you need to copy.

Line navigation

Quick movement to start and end of lines.
KeyModeDescription
Hnormal, visual, operatorJump to start of line
Lnormal, visual, operatorJump to end of line

Search navigation

Keep search results centered in the viewport for better visibility.
KeyModeDescription
nnormalNext match (centered)
NnormalPrevious match (centered)
*normalSearch word under cursor (centered)
#normalSearch word backwards (centered)
g*normalSearch partial match (centered)
g#normalSearch partial match backwards (centered)

Buffer navigation

Switch between open buffers efficiently.
KeyModeDescription
<Right>normalNext buffer
<Left>normalPrevious buffer
<leader>bdnormalDelete buffer (Snacks)
Buffer cycling wraps around, so pressing <Right> on the last buffer returns to the first.

Quickfix navigation

Navigate quickfix list items quickly.
KeyModeDescription
<M-j>normalNext quickfix item
<M-k>normalPrevious quickfix item
<M-q>normalOpen quickfix list

Diagnostic operations

Manage LSP diagnostics and error messages.
KeyModeDescription
<leader>qnormalOpen diagnostic quickfix list
<leader>denormalShow diagnostic error messages (float)
<leader>dynormalYank diagnostic message under cursor
Diagnostic navigation keymaps ([d and ]d) are buffer-local and set on LSP attach. See the LSP keymaps page.

File operations

Utility keymaps for file and path management.
KeyModeDescription
<leader>rcnormalSource current file
<leader>cpnormalCopy file path with line number
<leader>cRnormalRename file (Snacks)
gXnormalOpen link under cursor

Lua execution

Execute Lua code directly from buffers.
KeyModeDescription
<leader>xnormalExecute current line as Lua
<leader>xvisualExecute selection as Lua
Be careful when executing Lua code, as it runs with full Neovim API access and can modify your editor state.

Window management

Manage floating windows and terminal mode.
KeyModeDescription
<C-w>fnormalFocus floating window
<Esc><Esc>terminalExit terminal mode

Code actions

Quick access to LSP and code intelligence features.
KeyModeDescription
<leader>canormal, visualCode action (tiny-code-action)
<leader>clnormalRun codelens actions
<leader>cinormalShow incoming calls (call hierarchy)
<leader>conormalShow outgoing calls (call hierarchy)

Special utilities

Miscellaneous helper keymaps.
KeyModeDescription
<leader>lnvisualCopy highlighted line numbers
q:normal, visualDisabled (shows notification)
The command-line window (q:) is disabled to prevent accidental activation when typing :q quickly.

Build docs developers (and LLMs) love