CC Mode Changes for CC Mode 5.31

Manual (html)
Manual (info/PS/DVI)
Recent changes
Mailing lists
Mercurial Repository
Browse hg Repository
Contributions and links
SourceForge project page

Version History

Changes for 5.33
Changes for 5.32
Changes for 5.31
Changes for 5.30
Changes for 5.29
Changes for 5.28
Changes for 5.27
Changes for 5.26
Changes for 5.25
Changes for 5.24
Changes for 5.21
Changes for 5.20
Changes for 5.19
Changes for 5.18
Changes for 5.17
Changes for 5.16
Changes for 5.15
Changes for 5.14
Changes from v4 to v5

See also the user visible changes for 5.30.

Download this CC Mode version.

This version contains only a few new visible features, but significant internal improvements.

  • Emacs 19.34 and XEmacs 19.15 are no longer supported.
    The minimum versions required are now Emacs 20.4 or XEmacs 21.4.

  • The CC Mode manual has been extensively revised.
    The information about using CC Mode has been separated from the larger and more difficult chapters about configuration.

    • There are now two variants of the manual - for GNU Emacs and XEmacs. The only difference between them is where some cross references point (e.g. GNU Emacs Manual vs. XEmacs Manual). The default variant is for GNU. To build an XEmacs version, you must define the texinfo symbol "XEMACS". See README and cc-mode.texi.

  • Changes in Key Sequences

    • c-toggle-auto-hungry-state is no longer bound to C-c C-t.

    • c-toggle-hungry-state is no longer bound to C-c C-d.
      (This binding has been taken over by c-hungry-delete-forwards.)

    • c-toggle-auto-state (C-c C-t) has been renamed to c-toggle-auto-newline.
      c-toggle-auto-state remains as an alias.

    • c-hungry-backspace has been renamed to c-hungry-delete-backwards.
      c-hungry-backspace remains as an alias.

    • c-hungry-delete-backwards and c-hungry-delete-forwards now have permanent key bindings, respectively C-c C-DEL (or C-c DEL, for the benefit of TTYs) and C-c C-d (or C-c C-<delete> or C-c <delete>). These commands delete entire blocks of whitespace with a single key-sequence. (N.B. "DEL" is the <backspace> key.)

    • The new command c-toggle-electric-mode is bound to C-c C-l.

    • The new command c-subword-mode is bound to C-c C-w.

  • C-c C-s (c-show-syntactic-information) now highlights the anchor position(s).

  • The new GtkDoc Doc Comment style has become the default for C Mode.
    Contributed by Masatake YAMATO.

  • New Minor Modes

    • Electric Minor Mode toggles the electric action of non-alphabetic keys.

      The new command c-toggle-electric-mode is bound to C-c C-l. Turning the mode off can be helpful for editing chaotically indented code and for users new to CC Mode, who sometimes find electric indentation disconcerting. Its current state is displayed in the mode line with an 'l', e.g. "C/al".

    • Subword Minor Mode makes Emacs recognize word boundaries at upper case letters in StudlyCapsIdentifiers.

      You enable this feature by C-c C-w. It can also be used in non-CC Mode buffers. :-) Contributed by Masatake YAMATO. Subword Minor Mode doesn't (yet?) work in Emacs 20.n.

  • New clean-ups

    • comment-close-slash.

      With this clean-up, a block (i.e. c-style) comment can be terminated by typing a slash at the start of a line.

    • c-one-liner-defun

      This clean-up compresses a short enough defun (for example, an AWK pattern/action pair) onto a single line. "Short enough" is configurable.

  • AWK support

    AWK Mode is now better integrated into CC Mode as a whole. In detail:

    • Comment and line-breaking commands now work for AWK.

    • M-a and M-e (c-beginning/end-of-statement) now work for AWK.

    • "awk" style, Auto-newline insertion, special AWK initialization hook.

      A new style, "awk" has been introduced, and this is now the default style for AWK code. With its introduction, Auto-newline insertion can be used freely for AWK code, and there is no longer a need for the special initialization function in the AWK Mode hook.

    • The standard Line-up functions still haven't been adapted for AWK. Some of these may work serendipitously. There shouldn't be any problems writing custom indentation functions for AWK mode.

    • AWK Font Locking still hasn't been fully integrated into CC Mode. There is just a single level of font locking in AWK mode.