Here are commands for placing point and the mark around a textual object such as a word, list, paragraph or page:
mark-word). This does not move point.
mark-sexp). This does not move point.
mark-word) sets the mark at the end of the next
word (see Words, for information about words). Repeated
invocations of this command extend the region by advancing the mark
one word at a time. As an exception, if the mark is active and
located before point, M-@ moves the mark backwards from its
current position one word at a time.
This command also accepts a numeric argument n, which tells it to advance the mark by n words. A negative argument −n moves the mark back by n words.
Similarly, C-M-@ (
mark-sexp) puts the mark at the end
of the next balanced expression (see Expressions). Repeated
invocations extend the region to subsequent expressions, while
positive or negative numeric arguments move the mark forward or
backward by the specified number of expressions.
The other commands in the above list set both point and mark, so as
to delimit an object in the buffer. M-h (
marks paragraphs (see Paragraphs), C-M-h (
marks top-level definitions (see Moving by Defuns), and C-x
mark-page) marks pages (see Pages). Repeated
invocations again play the same role, extending the region to
consecutive objects; similarly, numeric arguments specify how many
objects to move the mark by.
C-x h (
mark-whole-buffer) sets up the entire buffer as
the region, by putting point at the beginning and the mark at the end.