Unnumbered sections in the Table of Contents

The way the relevant parts of sectioning commands work is exemplified by the way the \chapter command uses the counter secnumdepth (described in Appendix C of the LaTeX manual):

  1. put something in the .aux file, which will appear in the .toc;
  2. if the secnumdepth counter is greater than or equal to zero, increase the counter for the chapter and write it out.
  3. write the chapter title.
Other sectioning commands are similar, but with other values used in the test.

So a simple way to get headings of funny 'sections' such as prefaces in the table of contents is to use the counter:

  \setcounter{secnumdepth}{-1}
  \chapter{Preface}
Of course, you have to set secnumdepth back to its usual value (which is 2 in the standard styles) before you do any 'section' which you want to be numbered.

Similar settings are made automatically in the LaTeX book class by the \frontmatter and \backmatter commands.

The value of the counter tocdepth controls which headings will be finally printed in the table of contents. This normally has to be set in the preamble and is a constant for the document. The package tocvsec2 package provides a convenient interface to allow you to change the secnumdepth and/or the tocdepth counter values at any point in the body of the document; this provides convenient independent controls over the sectional numbering and the table of contents.

The package abstract (see one-column abstracts) includes an option to add the abstract to the table of contents, while the package tocbibind has options to include the table of contents itself, the bibliography, index, etc., to the table of contents.

abstract.sty
macros/latex/contrib/supported/abstract.tar.gz
tocbibind.sty
macros/latex/contrib/supported/tocbibind.tar.gz
tocvsec2.sty
macros/latex/contrib/supported/tocvsec2.tar.gz