To undo recent changes, use the undo command:
u: undo last change (can be repeated to undo preceding commands)
Ctrl-R: Redo changes which were undone (undo the undos). Compare to '
.' to repeat a previous change, at the current cursor position. Ctrl-R will redo a previously undone change, wherever the change occurred.
A related command is:
U: return the last line which was modified to its original state (reverse all changes in last modified line)
U is not actually a true "undo" command as it does not actually navigate undo history like
CTRL-R. This means that (somewhat confusingly)
U is itself undo-able with
u; it creates a new change to reverse previous changes.
U is seldom useful in practice, but is often accidentally pressed instead of
u, so it is good to know about.
- Recover from accidental Ctrl-U, which explains what constitutes a change which can be undone.
- Using undo branches, which explains Vim's unique and very powerful undo tree.
Ctrl-R means to hold down the
Ctrl key then press the
R key. Note that you do not press the
Shift key. Vim documentation uses traditional computer terminology including CTRL-R. In keeping with a more modern approach, we generally use "Ctrl" rather than "CTRL" on this wiki. The tips are not entirely consistent regarding whether to write Ctrl-R or Ctrl-r, but mostly Ctrl-R is preferred. JohnBeckett 10:04, March 18, 2010 (UTC)