Here is a complete list of all vi control mode commands.
Command | Meaning |
---|---|
h | Move left one character |
l | Move right one character |
w | Move right one word |
b | Move left one word |
W | Move to beginning of next non-blank word |
B | Move to beginning of preceding non-blank word |
e | Move to end of current word |
E | Move to end of current non-blank word |
0 | Move to beginning of line |
^ | Move to first non-blank character in line |
$ | Move to end of line |
i | Insert text before current character |
a | Insert text after current character |
I | Insert text at beginning of line |
A | Insert text at end of line |
R | Overwrite existing text |
dh | Delete one character backwards |
dl | Delete one character forwards |
db | Delete one word backwards |
dw | Delete one word forwards |
dB | Delete one non-blank word backwards |
dW | Delete one non-blank word forwards |
d$ | Delete to end of line |
d0 | Delete to beginning of line |
D | Equivalent to d$ (delete to end of line) |
dd | Equivalent to 0d$ (delete entire line) |
C | Equivalent to c$ (delete to end of line, enter input mode) |
cc | Equivalent to 0c$ (delete entire line, enter input mode) |
x | Equivalent to dl (delete character backwards) |
X | Equivalent to dh (delete character forwards) |
k or - | Move backward one line |
j or + | Move forward one line |
G | Move to line given by repeat count |
/string | Search forward for string |
? string | Search backward for string |
n | Repeat search forward |
N | Repeat search backward |
fx | Move right to next occurrence of x |
Fx | Move left to previous occurrence of x |
tx | Move right to next occurrence of x, then back one space |
Tx | Move left to previous occurrence of x, then forward one space |
, | Undo motion of last character finding command |
; | Redo last character finding command |
\ | Do filename completion |
* | Do wildcard expansion (onto command line) |
\= | Do wildcard expansion (as printed list) |
~ | Invert ("twiddle") case of current character(s) |
\_ | Append last word of previous command, enter input mode |
v | Run the fc command on the current line (actually, run the command fc -e ${VISUAL:-${EDITOR:-vi}}). Usually this means run the full vi on the current line. |
[CTRL-L] | Start a new line and redraw the current line on it |
# | Prepend # (comment character) to the line and send it |
x | Insert expansion of alias _x |