Go to the first, previous, next, last section, table of contents.

# Introduction

Welcome to `cc-mode`, version 4. This is a GNU Emacs mode for editing files containing C, C++, Objective-C, and Java code. This incarnation of the mode is descendant from ``c-mode.el'` (also called "Boring Old C Mode" or BOCM `:-)`, and ``c++-mode.el'` version 2, which I have been maintaining since 1992. `cc-mode` represents a significant milestone in the mode's life. It has been fully merged back with Emacs 19's ``c-mode.el'`. Also a new, more intuitive and flexible mechanism for controlling indentation has been developed.

`cc-mode` version 4 supports the editing of K&R and ANSI C, ARM (1) C++, Objective-C, and Java files. In this way, you can easily set up consistent coding styles for use in editing all C, C++, Objective-C, and Java programs.

This manual will describe the following:

- How to get started using `cc-mode`.
- How the new indentation engine works.
- How to customize the new indentation engine.

Note that the name of this file is ``cc-mode.el'`, and I'll often refer to the package as `cc-mode`, but there really is no top level `cc-mode` entry point. I call it `cc-mode` simply to differentiate it from ``c-mode.el'`. All of the variables, commands, and functions in `cc-mode` are prefixed with `c-<thing>`, and `c-mode`, `c++-mode`, `objc-mode`, and `java-mode` entry points are provided. This file is intended to be a replacement for ``c-mode.el'` and ``c++-mode.el'`.

The major version number was incremented to 4 with the addition of `objc-mode`. To find the minor revision number of this release, use `M-x c-version RET`. Work has already begun on `cc-mode` version 5, in which Emacs 18 will not be supported.

As of this writing (19-Jan-1996), both Emacs 19.30 and XEmacs 19.13 are distributed with `cc-mode`. Emacs 19.31 and XEmacs 19.14 will both contain the latest version of cc-mode when it is released. If you are running older versions of these Emacsen, you may want to upgrade your copy of `cc-mode`. See section Getting the latest `cc-mode` release.

This distribution also contains a file called ``cc-compat.el'` which should ease your transition from BOCM to `cc-mode`. It currently comes unguaranteed and unsupported, but this may change for future versions.

A special word of thanks goes to Krishna Padmasola for his work in converting the original ``README'` file to texinfo format. `cc-mode` users have been clamoring for a manual for a long time, and thanks to Krishna, it is now available <clap> <clap> <clap>! `:-)`

Go to the first, previous, next, last section, table of contents.