Extensive Vim Cheatsheet

Basic Navigation

Command Description
h, j, k, l Move left, down, up, right
w Move to the beginning of the next word
b Move to the beginning of the previous word
e Move to the end of the current word
0 Move to the beginning of the line
$ Move to the end of the line
gg Move to the first line of the document
G Move to the last line of the document

Editing

Command Description
i Insert mode (before cursor)
a Insert mode (after cursor)
o Insert mode (new line below)
O Insert mode (new line above)
x Delete character under cursor
dd Delete entire line
yy Yank (copy) entire line
p Paste after cursor
u Undo
Ctrl + r Redo

Searching and Replacing

Command Description
/pattern Search forward for pattern
?pattern Search backward for pattern
n Repeat search in same direction
N Repeat search in opposite direction
:%s/old/new/g Replace all occurrences of 'old' with 'new' in the file
:s/old/new/g Replace all occurrences of 'old' with 'new' in the current line

Visual Mode

Command Description
v Start visual mode (character-wise)
V Start visual mode (line-wise)
Ctrl + v Start visual block mode
y Yank (copy) selected text
d Delete selected text
> Indent selected text
< Outdent selected text

File Operations

Command Description
:w Save file
:w filename Save file as filename
:q Quit (fails if unsaved changes)
:q! Quit without saving (discard changes)
:wq Save and quit
:e filename Edit a file in a new buffer

Macros

Command Description
qa Record macro a
q Stop recording macro
@a Run macro a
@@ Rerun last run macro