Vim for Writers

motion · editing · prose — not code
Modes
iInsert before cursor
aInsert after cursor
AInsert at end of line
oNew line below, insert
ONew line above, insert
EscReturn to Normal mode
vVisual select (chars)
VVisual select (lines)
RReplace / overtype mode
Moving Around
h j k lLeft / down / up / right
w / bNext / prev word
0 / $Start / end of line
( / )Prev / next sentence
{ / }Prev / next paragraph
gg / GTop / bottom of file
gj / gkMove by visual line
5jMove down 5 lines (any №)
Editing
xDelete character
dwDelete word
ddDelete line
dasDelete a sentence
dapDelete a paragraph
ciwChange inner word
cisChange inner sentence
cipChange inner paragraph
rReplace one character
~Toggle case
.Repeat last change
Copy & Paste
yyYank line
ywYank word
yasYank a sentence
yapYank a paragraph
p / PPaste after / before
"*y / "+yYank to clipboard (Linux / Mac)
"*p / "+pPaste from clipboard (Linux / Mac)
Undo & Redo
uUndo
Ctrl+rRedo
Search & Replace
/wordSearch forward
?wordSearch backward
n / NNext / prev match
*Search word under cursor
:%s/old/new/gReplace all in file
:%s/old/new/gcReplace all, confirm each
Tip

With wrap on, use gj and gk to move by visual line — essential for long prose paragraphs. Combine text objects like cis (change inner sentence) with . to repeat edits fast.