Next: , Previous: Character Motion, Up: Motion

30.2.2 Motion by Words

These functions for parsing words use the syntax table to decide whether a given character is part of a word. See Syntax Tables.

— Command: forward-word &optional count

This function moves point forward count words (or backward if count is negative). If count is nil, it moves forward one word.

“Moving one word” means moving until point crosses a word-constituent character and then encounters a word-separator character. However, this function cannot move point past the boundary of the accessible portion of the buffer, or across a field boundary (see Fields). The most common case of a field boundary is the end of the prompt in the minibuffer.

If it is possible to move count words, without being stopped prematurely by the buffer boundary or a field boundary, the value is t. Otherwise, the return value is nil and point stops at the buffer boundary or field boundary.

If inhibit-field-text-motion is non-nil, this function ignores field boundaries.

In an interactive call, count is specified by the numeric prefix argument. If count is omitted or nil, it defaults to 1.

— Command: backward-word &optional count

This function is just like forward-word, except that it moves backward until encountering the front of a word, rather than forward.

— User Option: words-include-escapes

This variable affects the behavior of forward-word and everything that uses it. If it is non-nil, then characters in the “escape” and “character quote” syntax classes count as part of words. Otherwise, they do not.

— Variable: inhibit-field-text-motion

If this variable is non-nil, certain motion functions including forward-word, forward-sentence, and forward-paragraph ignore field boundaries.