How do I load plugins without a plugin manager using Vim's built-in package system?
:packadd
Since Vim 8 and Neovim, Vim has a built-in package system that can load plugins directly from the filesystem — no external plugin manager required.
Search Vim Tricks
Searching...:packadd
Since Vim 8 and Neovim, Vim has a built-in package system that can load plugins directly from the filesystem — no external plugin manager required.
:iabbrev
:iabbrev defines insert mode abbreviations — short strings that expand automatically when you type a non-keyword character (like space or Enter) after them.
set path+=**
By adding to Vim's path option, you enable recursive directory search — which makes :find with tab completion a lightweight project-wide fuzzy finder, no plug
"_d{motion}
Vim's black hole register (") acts as a write-only sink: anything sent to it is discarded without affecting any other register, including the unnamed register (
d/{pattern}<CR>
Vim lets you use a / search as a motion for any operator.
:ptag {identifier}
:ptag {identifier} opens a small preview window showing the definition of the given tag, while keeping your cursor in the original window.
:put =system('cmd')
:put =system('cmd') lets you insert the output of any shell command as new lines in your buffer without leaving Vim.
:g/pattern/d A
Using :g/pattern/d A you can sweep through the entire buffer and extract every line that matches a pattern into register a, removing them from the buffer in the
:let @q = 'content'
:let @{reg} = 'string' directly assigns content to any named register from Vimscript.
:wincmd
:wincmd {key} executes any {key} window command from the Ex command line or from inside a Vimscript function.
:set nrformats-=octal
Vim's and increment and decrement numbers under the cursor.
=G
The =G command applies Vim's auto-indent operator (=) from the current line to the last line of the file (G).
\%#
The \%# atom in Vim's regex engine matches the exact position of the cursor — zero-width, between characters.
mA and 'A
Vim has two tiers of marks.
:s/pattern/\=expression/
The \= prefix in the replacement field of :s/// tells Vim to evaluate the right-hand side as a Vim script expression and use the result as the replacement text.
gR
gR enters Virtual Replace mode, a smarter variant of Replace mode (R) that replaces characters based on screen columns rather than raw bytes.
\%>20c
The \%Nc, \%>Nc, and \%20c — match only after column 20 (i.
5@q
Prefix the @ macro-execution command with a count to run the macro that many times in a row.
set wildcharm=<Tab>
By default, pressing in a : mapping inserts a literal tab character rather than triggering wildmenu completion.
:packadd matchit
The matchit plugin ships with Vim and Neovim but is not enabled by default.