| Command | BVI | VI |
Cursor movements |
| h, ARROW_LEFT |
move cursor one character to the left |
| j, +, ^N, ^J, ARROW_DOWN,
RETURN
| move cursor down one line |
| k, -, ARROW_UP |
move cursor up one line |
| l, ARROW_RIGHT,
SPACE
| move cursor one character to the right |
| H | move cursor to home position, upper left corner of screen |
| M | move cursor to the begin of the middle line of the screen |
| L | move cursor to the begin of the last line of the screen |
|
Move to begin and end of (screen) line |
| ^ | move cursor to the first byte of Hex section |
| $ | move cursor to the last byte of Ascii section |
| TAB | toggle cursor between the same byte in Hex and Ascii section |
|
| ^ |
move cursor to the first nonblank character of line |
| $ | move cursor to end of line |
| 0 | move cursor to the real begin of line |
|
Move by words |
| w |
forward to next string delimited with a nonprinting char |
| b |
back to previous string delimited with a nonprinting char |
| e |
end of current word |
| W |
forward to next string delimited with a \0 or \n |
| B |
back to previous string delimited with a nonprinting char |
| E |
end of a blank-delimited word |
|
| w |
move cursor forward to begin of next word |
| e |
move cursor to end of current word |
| b |
move cursor back to begin of current or previous word |
| W |
move cursor forward to begin of next word, ignoring punctuation |
| B |
move cursor back to begin of last word, ignoring punctuation |
|