# HG changeset patch # User Richard M. Stallman # Date 1108548510 0 # Node ID b38fabf04e70fa1f9002203a905d8fc067fcea92 # Parent 36b2efe4eb14af1cf39f0d77a42fad22e7900be0 (Choosing Modes): Clarify. diff -r 36b2efe4eb14 -r b38fabf04e70 man/major.texi --- a/man/major.texi Wed Feb 16 10:07:28 2005 +0000 +++ b/man/major.texi Wed Feb 16 10:08:30 2005 +0000 @@ -92,14 +92,14 @@ @code{(@t{"\\.c\\'"} . c-mode)}, and it is responsible for selecting C mode for files whose names end in @file{.c}. (Note that @samp{\\} is needed in Lisp syntax to include a @samp{\} in the string, which must -be used to suppress the special meaning of @samp{.} in regexps.) If the -element has the form @code{(@var{regexp} @var{mode-function} +be used to suppress the special meaning of @samp{.} in regexps.) If +the element has the form @code{(@var{regexp} @var{mode-function} @var{flag})} and @var{flag} is non-@code{nil}, then after calling -@var{mode-function}, the suffix that matched @var{regexp} is discarded -and the list is searched again for another match. +@var{mode-function}, Emacs discards the suffix that matched +@var{regexp} and searches the list again for another match. - You can specify which major mode should be used for editing a certain -file by a special sort of text in the first nonblank line of the file. The + You can specify the major mode to use for editing a certain file by +special text in the first nonblank line of the file. The mode name should appear in this line both preceded and followed by @samp{-*-}. Other text may appear on the line as well. For example, @@ -166,6 +166,7 @@ @vindex change-major-mode-with-file-name The commands @kbd{C-x C-w} and @code{set-visited-file-name} change to a new major mode if the new file name implies a mode (@pxref{Saving}). +(@kbd{C-x C-s} does this too, if the buffer wasn't visiting a file.) However, this does not happen if the buffer contents specify a major mode, and certain ``special'' major modes do not allow the mode to change. You can turn off this mode-changing feature by setting