How do I yank or delete a line range directly into a named register without selecting it visually?
Vim's :[range]yank and :[range]delete Ex commands let you capture arbitrary line ranges into a register from the command line, bypassing the need to move the cu
category:
registers
tags:
#registers
#ex-commands
#editing
#normal-mode
How do I bookmark a position in one file and jump back to it from any other file?
Uppercase marks (A–Z) are global marks — they persist across files and Vim sessions.
category:
navigation
tags:
#navigation
#marks
#buffers
How do I make Vim sort buffer completions by most recently used?
With wildmode=lastused, :b cycles buffers in most-recently-used order instead of alphabetically.
category:
config
tags:
#buffers
#completion
#wildmenu
How do I rotate or swap window positions in Vim?
Vim provides commands to rotate windows within a row or column, and to swap the current window with another.
category:
buffers-windows
tags:
#buffers-windows
#windows
#rotate
#layout
How do I fuzzy-search and switch between open buffers in Vim?
The fzf.
category:
plugins
tags:
#plugins
#fzf
#buffers
#navigation
#workflow
How do I quickly toggle options and navigate lists using bracket mappings in Vim?
The vim-unimpaired plugin by Tim Pope provides a consistent set of bracket-based mappings for toggling Vim options, navigating paired lists, and performing comm
category:
plugins
tags:
#plugins
#unimpaired
#navigation
#options
#workflow
How do I run builds and tests asynchronously without blocking Vim?
The vim-dispatch plugin by Tim Pope provides asynchronous build and command execution so you can run compilers, test suites, and other long-running commands wit
category:
plugins
tags:
#plugins
#dispatch
#async
#build
#testing
#workflow
How do I customize what Vim considers a 'word' for motions and text objects?
The iskeyword option defines which characters are part of a "word" for motions like w, b, e, , and text objects like iw.
category:
config
tags:
#config
#iskeyword
#word-boundary
#customization
How do I switch back to the previous working directory in Vim?
The :cd - command switches Vim's global working directory back to the previous one, just like cd - in the shell.
category:
command-line
tags:
#command-line
#navigation
#workflow
How do I append yanked text to an existing register without overwriting it in Vim?
Using an uppercase register letter with any operator appends to the register instead of replacing it.
category:
registers
tags:
#registers
#yank
#delete
#editing
#normal-mode
How do I append a semicolon to every non-blank line with one Vim command?
:g/[^[:space:]]/normal! A;\<CR>
When you need to patch many lines at once, :g with :normal! is often faster and safer than recording a macro.
category:
command-line
tags:
#command-line
#ex-commands
#editing
#normal-mode
How do I yank and paste using named registers?
Named registers let you store multiple pieces of text independently.
category:
registers
tags:
#registers
#yank
#paste
#normal-mode
How do I inspect the contents of specific Vim registers without listing all of them?
The :registers command dumps every register at once, which is noisy when you only care about a handful.
category:
registers
tags:
#registers
#command-line
#macros
#normal-mode
How do I configure what types of numbers Vim recognizes when using Ctrl-A and Ctrl-X to increment or decrement?
The nrformats option controls which number formats (increment) and (decrement) recognize.
category:
config
tags:
#config
#editing
#normal-mode
How do I yank text into a specific named register for later use?
Vim has 26 named registers (a-z) that act as independent clipboards.
category:
registers
tags:
#registers
#editing
#normal-mode
#yank
#productivity
How do I set up a debugger with breakpoints in Neovim?
:lua require'dap'.toggle_breakpoint()
The nvim-dap plugin implements the Debug Adapter Protocol in Neovim, providing a full debugging experience with breakpoints, step-through execution, variable in
category:
plugins
tags:
#plugins
#debugging
#dap
#neovim
How do I trim trailing whitespace in a file without polluting jumplist or search history?
:keepjumps keeppatterns %s/\s\+$//e<CR>
Bulk whitespace cleanup is common, but a plain substitution can leave side effects: your last search pattern changes and jump navigation gets noisy.
category:
editing
tags:
#editing
#command-line
#search
#formatting
How do I inspect the current contents of a specific register before pasting or running it as a macro?
The :reg {name} command displays the current contents of one or more named registers in a formatted listing.
category:
registers
tags:
#registers
#macros
#debugging
How do I quickly navigate quickfix entries, buffers, and toggle options with bracket keys?
The vim-unimpaired plugin by Tim Pope provides pairs of bracket mappings for common navigation and toggling tasks.
category:
plugins
tags:
#plugins
#navigation
#buffers
#quickfix
How do I run a macro only between two marks without entering Visual mode?
When you need to replay a macro on a precise region, selecting lines manually can be slow and error-prone.
category:
macros
tags:
#macros
#marks
#command-line
#normal-mode