VIP. Node: Motion Commands

PREV Mark Commands UP Vi Commands NEXT Searching and Replacing

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).

PREV Mark Commands UP Vi Commands NEXT Searching and Replacing