Next: , Previous: Mark Commands, Up: Vi Commands

2.7 Motion Commands

Commands for moving around in the current buffer are collected here. These commands are used as an `argument' for the delete, change and yank commands to be described in the next section.

h
Move point backward by one character. Signal error if point is at the beginning of buffer, but (unlike Vi) do not complain otherwise (vip-backward-char).
l
Move point backward by one character. Signal error if point is at the end of buffer, but (unlike Vi) do not complain otherwise (vip-forward-char).
j
Move point to the next line keeping the current column. If point is on the last line of the buffer, a new line will be created and point will move to that line (vip-next-line).
k
Move point to the previous line keeping the current column (vip-next-line).
+
Move point to the next line at the first non-white character. If point is on the last line of the buffer, a new line will be created and point will move to the beginning of that line (vip-next-line-at-bol).
-
Move point to the previous line at the first non-white character (vip-previous-line-at-bol).
If a count is given to these commands, the commands will be repeated that many times.
0
Move point to the beginning of line (vip-beginning-of-line).
^
Move point to the first non-white character on the line (vip-bol-and-skip-white).
$
Move point to the end of line (vip-goto-eol).
n |
Move point to the n-th column on the line (vip-goto-col).
Except for the | command, these commands neglect a count.

w
Move point forward to the beginning of the next word (vip-forward-word).
W
Move point forward to the beginning of the next word, where a word is considered as a sequence of non-white characters (vip-forward-Word).
b
Move point backward to the beginning of a word (vip-backward-word).
B
Move point backward to the beginning of a word, where a word is considered as a sequence of non-white characters (vip-forward-Word).
e
Move point forward to the end of a word (vip-end-of-word).
E
Move point forward to the end of a word, where a word is considered as a sequence of non-white characters (vip-end-of-Word).
Here the meaning of the word `word' for the w, b and e commands is determined by the syntax table effective in the current buffer. Each major mode has its syntax mode, and therefore the meaning of a word also changes as the major mode changes. See GNU Emacs Manual for details of syntax table.
H
Move point to the beginning of the home (top) line of the window. Given a count n, go to the n-th line from top (vip-window-top).
M
Move point to the beginning of the middle line of the window. Given a count n, go to the n-th line from the middle line (vip-window-middle).
L
Move point to the beginning of the lowest (bottom) line of the window. Given count, go to the n-th line from bottom (vip-window-bottom).
These commands can be used to go to the desired line visible on the screen.
(
Move point backward to the beginning of the sentence (vip-backward-sentence).
)
Move point forward to the end of the sentence (vip-forward-sentence).
{
Move point backward to the beginning of the paragraph (vip-backward-paragraph).
}
Move point forward to the end of the paragraph (vip-forward-paragraph).
A count repeats the effect for these commands.
G
Given a count n, move point to the n-th line in the buffer on the first non-white character. Without a count, go to the end of the buffer (vip-goto-line).
` `
Exchange point and mark (vip-goto-mark).
` ch
Move point to the position stored in the register ch. ch must be a lower-case letter.
' '
Exchange point and mark, and then move point to the first non-white character on the line (vip-goto-mark-and-skip-white).
' ch
Move point to the position stored in the register ch and skip to the first non-white character on the line. ch must be a lower-case letter.
%
Move point to the matching parenthesis if point is looking at (, ), {, }, [ or ]
(vip-paren-match).
The command G mark point before move, so that you can return to the original point by ` `. The original point will also be stored in the mark ring.

The following commands are useful for moving points on the line. A count will repeat the effect.

f ch
Move point forward to the character ch on the line. Signal error if ch could not be found (vip-find-char-forward).
F ch
Move point backward to the character ch on the line. Signal error if ch could not be found (vip-find-char-backward).
t ch
Move point forward upto the character ch on the line. Signal error if ch could not be found (vip-goto-char-forward).
T ch
Move point backward upto the character ch on the line. Signal error if ch could not be found (vip-goto-char-backward).
;
Repeat previous f, t, F or T command (vip-repeat-find).
,
Repeat previous f, t, F or T command, in the opposite direction (vip-repeat-find-opposite).