@c This is part of the Emacs manual.
-@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2011
-@c Free Software Foundation, Inc.
+@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software
+@c Foundation, Inc.
@c See file emacs.texi for copying conditions.
-@node Modes, Indentation, International, Top
+@node Modes
@chapter Major and Minor Modes
Emacs contains many @dfn{editing modes} that alter its basic
first visit a file or create a buffer (@pxref{Choosing Modes}). You
can explicitly select a new major mode by using an @kbd{M-x} command.
Take the name of the mode and add @code{-mode} to get the name of the
-command to select that mode. Thus, you can enter Lisp mode with
-@kbd{M-x lisp-mode}.
+command to select that mode (e.g., @kbd{M-x lisp-mode} enters Lisp mode).
@vindex major-mode
The value of the buffer-local variable @code{major-mode} is a symbol
-with the same name as the major mode command (e.g. @code{lisp-mode}).
+with the same name as the major mode command (e.g., @code{lisp-mode}).
This variable is set automatically; you should not change it yourself.
The default value of @code{major-mode} determines the major mode to
Customization}), or by adding a line like this to your init file
(@pxref{Init File}):
-@smallexample
+@example
(setq-default major-mode 'text-mode)
-@end smallexample
+@end example
@noindent
If the default value of @code{major-mode} is @code{nil}, the major
commonly changed are @key{TAB}, @key{DEL}, and @kbd{C-j}. Many modes
also define special commands of their own, usually bound in the prefix
key @kbd{C-c}. Major modes can also alter user options and variables;
-for instance, programming language modes typicaly set a buffer-local
+for instance, programming language modes typically set a buffer-local
value for the variable @code{comment-start}, which determines how
source code comments are delimited (@pxref{Comments}).
Every major mode, apart from Fundamental mode, defines a @dfn{mode
hook}, a customizable list of Lisp functions to run each time the mode
is enabled in a buffer. @xref{Hooks}, for more information about
-hooks. Each mode hook is named after its major mode, e.g. Fortran
+hooks. Each mode hook is named after its major mode, e.g., Fortran
mode has @code{fortran-mode-hook}. Furthermore, all text-based major
modes run @code{text-mode-hook}, and all programming language modes
run @code{prog-mode-hook}, prior to running their own mode hooks.
@item
Enriched mode enables editing and saving of formatted text.
-@xref{Formatted Text}.
+@xref{Enriched Text}.
@item
Flyspell mode automatically highlights misspelled words.
@findex linum-mode
@cindex Linum mode
@item
-Linum mode displays each line's line number in the window's left
-margin. Its mode command is @code{linum-mode}.
+Linum mode displays each line's line number in the window's left margin.
@item
Outline minor mode provides similar facilities to the major mode
@item
Icomplete mode displays an indication of available completions when
-you are in the minibuffer and completion is active. @xref{Completion
-Options}.
+you are in the minibuffer and completion is active. @xref{Icomplete}.
@item
Line Number mode enables display of the current line number in the