* Glasses:: Making identifiersLikeThis more readable.
* Semantic:: Suite of editing tools based on source code parsing.
* Misc for Programs:: Other Emacs features useful for editing programs.
-* C Modes:: Special commands of C, C++, Objective-C,
- Java, and Pike modes.
+* C Modes:: Special commands of C, C++, Objective-C, Java,
+ IDL, Pike and AWK modes.
* Asm Mode:: Asm mode and its special features.
@ifnottex
* Fortran:: Fortran mode and its special features.
including how to override parts of an existing style and how to define
your own styles.
+ As an alternative to specifying a style, you can get Emacs to
+@dfn{guess} the style by scanning a code buffer which is already
+formatted. To do this, call @kbd{M-x c-guess} in your sample buffer.
+You can then apply this guessed style to other buffers with @kbd{M-x
+c-guess-install}. @xref{Guessing the Style,,, ccmode, the CC Mode
+Manual}, for more details about this mechanism.
+
@node Parentheses
@section Commands for Editing with Parentheses
related modes.
@table @code
-@item M-x c-beginning-of-defun
-@itemx M-x c-end-of-defun
+@item C-M-a
+@itemx C-M-e
@findex c-beginning-of-defun
@findex c-end-of-defun
Move point to the beginning or end of the current function or
-top-level definition. These are found by searching for the least
+top-level definition. In languages with enclosing scopes (such as
+C++'s classes) the @dfn{current function} is the immediate one,
+possibly inside a scope. Otherwise it is the one defined by the least
enclosing braces. (By contrast, @code{beginning-of-defun} and
-@code{end-of-defun} search for braces in column zero.) If you are
-editing code where the opening brace of a function isn't placed in
-column zero, you may wish to bind @code{C-M-a} and @code{C-M-e} to
-these commands. @xref{Moving by Defuns}.
+@code{end-of-defun} search for braces in column zero.) @xref{Moving
+by Defuns}.
@item C-c C-u
@kindex C-c C-u @r{(C mode)}
@titlepage
@sp 10
-@center @titlefont{CC Mode 5.31}
+@center @titlefont{CC Mode 5.32}
@sp 2
@center @subtitlefont{A GNU Emacs mode for editing C and C-like languages}
@sp 2
This manual describes @ccmode{}
@comment The following line must appear on its own, so that the
-version 5.31.
+version 5.32.
@comment Release.py script can update the version number automatically
@ccmode{} supports the editing of K&R and ANSI C, C++, Objective-C,