Emacs point (cursor) movement

One of the features of Emacs is fine control of things such as cursor movement. (Emacs “point” is essentially what the rest of humanity calls “cursor.”) If you want to move forward or backward a word, a sentence, a line, or a paragraph, you can do so directly rather than just holding down arrow keys until you arrive at your destination. This page summarizes the basic commands for moving the point

Move by

Forward Backward
character C-f C-b
word M-f M-b
line C-n C-p
screen C-v M-v

Move to

Beginning of End of
line C-a C-e
sentence M-a M-e
paragraph M-{ M-}
buffer M-< M->

Notice that control commands generally move by context-independent units (characters, lines) whereas meta commands move by context-dependent units (words, sentences, paragraphs). These commands are often parallel, such as the commands for moving by lines versus sentences.

(What constitutes something like a “word” or “sentence” or “paragraph” depends on context. It may mean one thing in English prose and another thing in a source code file.)

Notice also that the commands are somewhat mnemonic:

  • “f” stands for “forward”
  • “b” stands for “backward”
  • “n” stands for “next”
  • “p” stands for “previous”
  • “a” stands for “beginning” (like the beginning of the alphabet)
  • “e” stands for “end”

Emacs resources

Getting started with Emacs on Windows
Emacs kill (cut) commands
Emacs and Unicode
One program to rule them all