To do more than insert characters, you have to know how to move point (see Point). The simplest way to do this is with arrow keys, or by clicking the left mouse button where you want to move to.
There are also control and meta characters for cursor motion. Some are equivalent to the arrow keys (these date back to the days before terminals had arrow keys, and are usable on terminals which don't have them). Others do more sophisticated things.
C-a |
Move to the beginning of the line ( |
C-e | Move to the end of the line (end-of-line ).
|
C-f | Move forward one character (forward-char ).
|
C-b | Move backward one character (backward-char ).
|
M-f | Move forward one word (forward-word ).
|
M-b | Move backward one word (backward-word ).
|
C-n | Move down one line, vertically (next-line ). This command
attempts to keep the horizontal position unchanged, so if you start in
the middle of one line, you end in the middle of the next. When on
the last line of text, C-n creates a new line and moves onto it.
|
C-p | Move up one line, vertically (previous-line ).
|
M-r | Move point to left margin, vertically centered in the window
(move-to-window-line ). Text does not move on the screen.
A numeric argument says which screen line to place point on. It counts screen lines down from the top of the window (zero for the top line). A negative argument counts lines from the bottom (1 for the bottom line). |
M-< | Move to the top of the buffer (beginning-of-buffer ). With
numeric argument n, move to n/10 of the way from the top.
See Arguments, for more information on numeric arguments.
|
M-> | Move to the end of the buffer (end-of-buffer ).
|
M-x goto-char | Read a number n and move point to buffer position n. Position 1 is the beginning of the buffer. |
M-x goto-line | Read a number n and move point to line number n. Line 1 is the beginning of the buffer. |
C-x C-n | Use the current column of point as the semipermanent goal column for
C-n and C-p (set-goal-column ). Henceforth, those
commands always move to this column in each line moved into, or as
close as possible given the contents of the line. This goal column remains
in effect until canceled.
|
C-u C-x C-n | Cancel the goal column. Henceforth, C-n and C-p once again try to stick to a fixed horizontal position, as usual. |
If you set the variable track-eol
to a non-nil
value,
then C-n and C-p when at the end of the starting line move
to the end of another line. Normally, track-eol
is nil
.
See Variables, for how to set variables such as track-eol
.
Normally, C-n on the last line of a buffer appends a newline to
it. If the variable next-line-add-newlines
is nil
, then
C-n gets an error instead (like C-p on the first line).