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.
| Key | Mode | Description |
|---|
J | visual | Move selected lines down |
K | visual | Move selected lines up |
< | visual | Indent left (stays selected) |
> | visual | Indent right (stays selected) |
X | normal | Split line at cursor |
d | normal, visual | Delete without copying to clipboard |
D | normal, visual | Delete 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.
| Key | Mode | Description |
|---|
H | normal, visual, operator | Jump to start of line |
L | normal, visual, operator | Jump to end of line |
Search navigation
Keep search results centered in the viewport for better visibility.
| Key | Mode | Description |
|---|
n | normal | Next match (centered) |
N | normal | Previous match (centered) |
* | normal | Search word under cursor (centered) |
# | normal | Search word backwards (centered) |
g* | normal | Search partial match (centered) |
g# | normal | Search partial match backwards (centered) |
Buffer navigation
Switch between open buffers efficiently.
| Key | Mode | Description |
|---|
<Right> | normal | Next buffer |
<Left> | normal | Previous buffer |
<leader>bd | normal | Delete buffer (Snacks) |
Buffer cycling wraps around, so pressing <Right> on the last buffer returns to the first.
Quickfix navigation
Navigate quickfix list items quickly.
| Key | Mode | Description |
|---|
<M-j> | normal | Next quickfix item |
<M-k> | normal | Previous quickfix item |
<M-q> | normal | Open quickfix list |
Diagnostic operations
Manage LSP diagnostics and error messages.
| Key | Mode | Description |
|---|
<leader>q | normal | Open diagnostic quickfix list |
<leader>de | normal | Show diagnostic error messages (float) |
<leader>dy | normal | Yank 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.
| Key | Mode | Description |
|---|
<leader>rc | normal | Source current file |
<leader>cp | normal | Copy file path with line number |
<leader>cR | normal | Rename file (Snacks) |
gX | normal | Open link under cursor |
Lua execution
Execute Lua code directly from buffers.
| Key | Mode | Description |
|---|
<leader>x | normal | Execute current line as Lua |
<leader>x | visual | Execute 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.
| Key | Mode | Description |
|---|
<C-w>f | normal | Focus floating window |
<Esc><Esc> | terminal | Exit terminal mode |
Code actions
Quick access to LSP and code intelligence features.
| Key | Mode | Description |
|---|
<leader>ca | normal, visual | Code action (tiny-code-action) |
<leader>cl | normal | Run codelens actions |
<leader>ci | normal | Show incoming calls (call hierarchy) |
<leader>co | normal | Show outgoing calls (call hierarchy) |
Special utilities
Miscellaneous helper keymaps.
| Key | Mode | Description |
|---|
<leader>ln | visual | Copy highlighted line numbers |
q: | normal, visual | Disabled (shows notification) |
The command-line window (q:) is disabled to prevent accidental activation when typing :q quickly.