The tocbibind package^{∗}

Peter Wilson Catholic University of America

             Now at peter.r.wilson@boeing.com

1999/09/12

Abstract

The tocbibind package can be used to add document elements like a bibliography or an index to the Table of Contents. The package is designed to work with the four standard book, report, article and proc classes, and to a limited extent with the ltxdoc class. Results with other classes may be problematical. The package has been tested with the tocloft package, but has not been tested with other packages that change the definitions of the

     \chapter* or \section* commands.

The package requres the stdclsdv package.

Contents

1 Introduction 1

2 The tocbibind package 2 2.1 Abstracts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

3 The package code 4

1 Introduction

Questions about adding the bibliography to the Table of Contents seem to pop up fairly regularly on the comp.text.tex newsgroup.

The tocbibind package provides a solution for automatically inserting references to a bibliography or an index, or other headed document elements into the Table of Contents. (tocbibind is meant to be shorthand for ‘Table of Contents, Bibliography, Index, etc’). Portions of the package were developed as part of a class and package bundle for typesetting ISO standards [Wil96]. This manual is typeset according to the conventions of the L^{A}TEX docstrip utility which enables the automatic extraction of the L^{A}TEX macro source files [GMS94].

Section 2 describes the usage of the package. Commented source code for the package is in Section 3. The package requires the stdclsdv package to be available.

∗This file has version number v1.3a, last revised 1999/09/12.

2 The tocbibind package

The tocbibind package enables the titles of the Table of Contents, the List of Figures, the List of Tables, the Bibliography and the Index all to be added to the Table of Contents. By default, all of these document elements, if they exist, will be incorporated into the Table of Contents (ToC for short). Package options are available to switch off any of these inclusions.

• notbib Disables the inclusion of the Bibliography.

• notindex Disables the inclusion of the Index (inclusion of the Index of an ltxdoc class document is permanantly disabled).

• nottoc Disables the inclusion of the ToC.

• notlot Disables the inclusion of the List of Tables.

• notlof Disables the inclusion of the List of Figures.

• chapter Use chapter-level headings, if possible.

• section Use section-level headings, if possible.

• numbib Number the Bibliography heading (default is no number).

• numindex Number the Index heading (default is no number).

• other Use a non-traditional heading command. This option effectively requires the use of the \tocotherhead command.

The package is designed to work with the standard L^{A}TEX document classes book, report, article, proc and ltxdoc class (which is based to a large extent on the article class). In the article, proc and ltxdoc classes L^{A}TEX uses the \section* heading style for the bibliography etc., while for the other two classes it uses the \chapter* heading style. tocbibind honours these conventions. However, if the package is used with another class (perhaps with a class for typesetting theses which has different conventions), then the chapter or section options can be used to select the appropriate style (but the class must define \chapter* and

\@makeschapterhead, or \section* respectively).

\tocotherhead In the standard L^{A}TEX classes the bibliography and index headings are either both defined in terms of the \chapter* command or in terms of the \section* command. The package assumes that any class, other than the standard classes already mentioned, will either use code from the standard classes for implementing the bibliography and other headings, or will use very similar code. Some classes (and maybe packages) change the names of the heading commands. One example that I am aware of uses \clause instead of \section, \sclause instead of \subsection and so on. If your document’s headings are defined like this and the same heading level is used for the bibliography, etc., then you can use the other option and the \tocotherhead{⟨headingname⟩} command to cater for this. If your document uses \clause then put \tocotherhead{clause} in the preamble after loading the package. The package then assumes that the bibliography heading is defined in terms of \clause*.

If you use the \tocotherhead command, then it overrides any chapter or section option.

\tocbibname The package attempts to pick up the name for the Bibliography from the class definition. (Note that the article class and its derivatives stores the name text in the \refname whilst the book and report classes store the name in \bibname). This package uses \tocbibname to store the name of the bibliography.

\setindexname These commands set the heading texts for the index, ToC, list of tables and list

\settocname
\setlotname
\setlofname
\settocbibname

of figures. When used with the three standard classes, the heading text is picked up

from the \indexname, \contentsname, \listtablename and \listfigurename

commands respectively. The heading texts can be changed by changing the standard commands, or by using \tocindexname{⟨name⟩}, and similarly for the other headings. Thus, the following two lines of code have the same effect:

 \renewcommand{\listfigurename}{Figures}
 \toclofname{Figures}

Note that these commands replace the \toc...name commands that were in version 1.1.

Unlike the default theindex environment, provided the notindex option is not used, the \columnseprule and \columnsep lengths can be changed via \setlength to alter the column seperation and the thickness of a rule between the two columns in the index.

2.1 Abstracts

On rare occasions a publisher may want an abstract listed in the ToC. This package does not provide for that, partly because it is easier to do than the other headings. Just proceed along the lines below, where section might have to be chapter.

   \begin{abstract}
   \addcontentsline{toc}{section}{\abstractname}
   ... rest of the abstract

A question that arises from time to time on comp.text.tex is how to have a fullwidth abstract in a two column document. The code:

 \documentclass[twocolumn]{article}
 % all in twocolumn mode
 ...
 \begin{abstract} ... \end{abstract}

puts the abstract into one of the columns. The trick is to start the document in single column mode and at the appropriate place issue a \twocolumn command with the abstract forming the optional argument to the command. For example:

 \documentclass{article}
 % single column mode
 ...
 \twocolumn[{\begin{abstract}...\end{abstract}}]
 ... rest in two column mode

If you want, for example, to have the abstract treated like any other numbered part of the document or to change other aspects of the abstract environment, then you will have to do some work on your own. Just for interest, the default code for the abstract environment is:

 \if@titlepage
   \newenvironment{abstract}{%
     \titlepage
     \null\vfil
     \@beginparpenalty\@lowpenalty
     \begin{center}%
       \bfseries \abstractname
       \@endparpenalty\@M
     \end{center}}%
     {\par\vfil\null\endtitlepage}
 \else
   \newenvironment{abstract}{%
     \if@twocolumn
       \section*{\abstractname}%
     \else
       \small
       \begin{center}%
         {\bfseries \abstractname\vspace{-.5em}\vspace{\z@}}%
       \end{center}%
       \quotation
     \fi}%
   {\if@twocolumn\else\endquotation\fi}
 \fi

This code is from the report and article classes; the book class does not have an abstract environment.

3 The package code

Announce the name and version of the package, which requires L^{A}TEX 2ε and the stdclsdv package.

1 ⟨∗usc⟩

 2 \NeedsTeXFormat{LaTeX2e}
 3 \ProvidesPackage{tocbibind}[1999/09/12 v1.3a extra ToC listings]
 4 \RequirePackage{stdclsdv}

\PRWPackageNote \PRWPackageNoteNoLine These two commands write a package Note to the terminal and log file. Use as \PRWPackageNote{⟨package name⟩}{⟨note text⟩}. The NoLine version does not show the line number. The commands are intermediate between the kernel \PackageWarning and \PackageInfo commands. I have provided them as other packages (of mine) may also incorporate them. The code is based on lterror.dtx.

 5 \providecommand{\PRWPackageNote}[2]{%
 6 \GenericWarning{%
 7  (#1)\@spaces\@spaces\@spaces\@spaces
 8 }{%
 9  Package #1 Note: #2%
10 }%

12 \providecommand{\PRWPackageNoteNoLine}[2]{%
13 \PRWPackageNote{#1}{#2\@gobble}%

14 }

Issue warning(s) if there are no recognized sectional divisions and prepare to skip the rest of the package code.

15 \ifSCDnodivs
16 \PackageWarning{tocbibind}%
17  {I don't recognize any sectional divisions.
18  I hope you have used the `other' option}
19 \renewcommand{\SCDquit}{\endinput}
20 \fi
21 %%\SCDquit
22 \ifSCDknownclass\else
23 \PackageWarning{tocbibind}%
24  {| don't recognize the class but I'll do my best}
25 %%  \ifSCDnodivs
26 %%    \PackageWarning{tocbibind}%
27 %%      {I don't recognize any sectional divisions so I'll do nothing}
28 %%    \renewcommand{\SCDquit}{\endinput}
29 %%  \fi
30 \fi
31 %%\SCDquit

\if@inltxdoc This is used as a flag for the ltxdoc class. This has a particular kind of index that I am not going to mess with.

32 \newif\if@inltxdoc
33 \@ifclassloaded{ltxdoc}{\@inltxdoctrue}{\@inltxdocfalse}

\if@bibchapter Used for knowing whether to use chapter or section style headings.

34 \newif\if@bibchapter\@bibchapterfalse
35 \ifSCDchapter
36 \@bibchaptertrue
37 \fi

\if@dotocbib \if@dotocind \if@dotoctoc \if@dotoclot \if@dotoclof A set of booleans for deciding what is to go into the ToC. By default add everything.

38 \newif\if@dotocbib\@dotocbibtrue
39 \newif\if@dotocind\@dotocindtrue
40 \newif\if@dotoctoc\@dotoctoctrue
41 \newif\if@dotoclot\@dotoclottrue
42 \newif\if@dotoclof\@dotocloftrue

\if@donumbib \if@donumindex A set of booleans for deciding whether or not to produce numbered headings (default is to do unnumbered headings).

43 \newif\if@donumbib\@donumbibfalse
44 \newif\if@donumindex\@donumindexfalse

Now we can do the options. Most of them are easy.

45 \DeclareOption{section}{\@bibchapterfalse}
46 \DeclareOption{notbib}{\@dotocbibfalse}
47 \DeclareOption{notindex}{\@dotocindfalse}

48 \DeclareOption{nottoc}{\@dotoctocfalse}
49 \DeclareOption{notlot}{\@dotoclotfalse}
50 \DeclareOption{notlof}{\@dotocloffalse}
51 \DeclareOption{numbib}{\@donumbibtrue}
52 \DeclareOption{numindex}{\@donumindextrue}

The chapter option needs to check whether or not the chapter heading commands are defined. If they are not, then go with the section level headings.

53 \DeclareOption{chapter}{%
54 \ifx\chapter\undefined
55  \@bibchapterfalse
56  \PackageWarning{tocbibind}%
57  {Chapters are undefined, using section instead}
58 \else
59  \ifx\@makeschapterhead\undefined
60  \@bibchapterfalse
61  \PackageWarning{tocbibind}%
62  {Makeschapterhead undefined, using section instead}
63  \else
64  \@bibchaptertrue
65  \fi
66 \fi}

The other option makes \SCDquit a no-op and cancels any chapter based processing.

67 \DeclareOption{other}{\renewcommand{\SCDquit}{}
68  \@bibchapterfalse}

Process the options now, and then quit if necessary.

69 \ProcessOptions\relax
70 \SCDquit

Issue a note about the heading style being used.

71 \if@bibchapter
72 %%  \PackageWarning{tocbibind}{Using chapter style headings}
73 \PRWPackageNoteNoLine{tocbibind}{Using chapter style headings}
74 \else
75 %%  \PackageWarning{tocbibind}{Using section or other style headings}
76 \PRWPackageNoteNoLine{tocbibind}{Using section or other style headings}
77 \fi

Ensure that the index is not processed if it is an ltxdoc class.

78 \if@inltxdoc \@dotocindfalse \fi

\@tocextra \tocotherhead \@tocextra is the internal command to store the heading command name. \tocotherhead{⟨name⟩} is the user command to set the heading command ⟨name⟩ (without the backslash). The default is section.

79 \newcommand{\@tocextra}{section}
80 \newcommand{\tocotherhead}[1]{\renewcommand{\@tocextra}{#1}}

\prw@mkboth \toc@section \toc@chapter \toc@headstar Utility macros, as the code that they represent gets used several times over. They deal with marking for page headers (code taken from classes.dtx), and adding starred sectional headings to the ToC.

\prw@mkboth{⟨text⟩} is shorthand for \@mkboth{⟨left⟩}{⟨right⟩} as called by sectional headings.

81 \providecommand{\prw@mkboth}[1]{\@mkboth{%
82 \MakeUppercase{#1}}{\MakeUppercase{#1}}}

\toc@section{⟨sec⟩}{⟨text⟩} is a generalised version of \sec*{⟨text⟩} which also makes an entry of ⟨text⟩ into the ToC, where ⟨sec⟩ is the name of a sectional division (with no backslash). \toc@headstar{⟨sec⟩}{⟨text⟩} is similar except that it makes no entry into the ToC.

83 \newcommand{\toc@section}[2]{%
84 \@nameuse{#1}*{#2\prw@mkboth{#2}}
85 \addcontentsline{toc}{#1}{#2}}
86 \newcommand{\toc@headstar}[2]{%
87 \@nameuse{#1}*{{#2}}}

\toc@chapter{⟨text⟩} is equivalent to \chapter*{⟨text⟩} except that it makes an entry into the ToC.

88 \newcommand{\toc@chapter}[1]{%
89 \chapter*{#1\prw@mkboth{#1}}
90 \addcontentsline{toc}{chapter}{#1}}

\tocbibname This holds the text for the Bibliography heading. We try and get the text from the class (either \bibname or \refname).

91 \ifx\bibname\undefined
92 \ifx\refname\undefined
93  \newcommand{\tocbibname}{References}
94 \else
95  \newcommand{\tocbibname}{\refname}
96 \fi
97 \else
98 \newcommand{\tocbibname}{\bibname}
99 \fi

\setindexname \settocname \setlotname \setlofname \settocbibname The remaining heading texts are simpler as we only need to check if their respective names are defined in the class. Note that these commands in version 1.2 have been changed from version 1.1 in order to integrate with the tocloft package (which operates with the \contentsname etc commands).

100 \providecommand{\indexname}{Index}
101 \newcommand{\setindexname}[1]{\renewcommand{\indexname}{#1}}
102 \providecommand{\contentsname}{Contents}
103 \newcommand{\settocname}[1]{\renewcommand{\contentsname}{#1}}
104 \providecommand{\listtablename}{List of Tables}
105 \newcommand{\setlotname}[1]{\renewcommand{\listtablename}{#1}}
106 \providecommand{\listfigurename}{List of Figures}
107 \newcommand{\setlofname}[1]{\renewcommand{\listfigurename}{#1}}
108 \newcommand{\settocbibname}[1]{\renewcommand{\tocbibname}{#1}}

The rest is just hacking the various environments and commands from

classes.dtx.
thebibliography Redefine thebibliography, but only if requested.
109 \if@dotocbib
110 \renewenvironment{thebibliography}[1]
111  {\if@bibchapter
112  \if@donumbib
113  \chapter{\tocbibname}

114  \else
115  \toc@chapter{\tocbibname}
116  \fi
117  \else
118  \if@donumbib
119  \@nameuse{\@tocextra}{\tocbibname}
120  \else
121  \toc@section{\@tocextra}{\tocbibname}
122  \fi
123  \fi
124  \begin{thebibitemlist}{#1}}{\end{thebibitemlist}}

thebibitemlist Just as a matter of style, I have extracted the list making code from the definition of the thebibliography. It might also make it easier for someone to change the list environment. The code is a straight copy from classes.dtx.

125 \newenvironment{thebibitemlist}[1]{
126  \list{\@biblabel{\@arabic\c@enumiv}}%
127  {\settowidth\labelwidth{\@biblabel{#1}}%
128  \leftmargin\labelwidth
129  \advance\leftmargin\labelsep
130  \@openbib@code
131  \usecounter{enumiv}%
132  \let\p@enumiv\@empty
133  \renewcommand\theenumiv{\@arabic\c@enumiv}}%
134  \sloppy
135  \clubpenalty4000
136  \@clubpenalty \clubpenalty
137  \widowpenalty4000%
138  \sfcode`\.\@m}
139 {\def\@noitemerr
140  {\@latex@warning{Empty `thebibliography' environment}}%
141  \endlist}
142 \fi

theindex We redefine the theindex if asked for. The first bit of code is a copy from

 classes.dtx.
143 \if@dotocind
144 \renewenvironment{theindex}
145  {\if@twocolumn
146  \@restonecolfalse
147  \else
148  \@restonecoltrue
149  \fi

This next bit is where we make the package changes. Note that in the default definition the values for \columnseprule and \columnsep were set at this point to be 0pt and 35pt respectively. They are not set in this definition so that they can be adjusted by the user, if necessary, before starting the environment.

For reasons I don’t understand I have to add/remove some vertical space around a numbered heading to make their height match other numbered chapter/section headings. The values were reached by running some experiments.

150  \if@bibchapter
151  \if@donumindex
152  \refstepcounter{chapter}

153  \twocolumn[\vspace*{2\baselineskip}%
154  \@makechapterhead{\indexname}]%
155  \addcontentsline{toc}{chapter}{\protect\numberline{\thechapter}\indexname}
156 %%          \prw@mkboth{\indexname}
157  \chaptermark{\indexname}
158  \else
159  \twocolumn[\@makeschapterhead{\indexname}]%
160  \prw@mkboth{\indexname}
161  \addcontentsline{toc}{chapter}{\indexname}
162  \fi
163  \else
164  \if@donumindex
165  \twocolumn[\vspace*{-\baselineskip}%
166  \@nameuse{\@tocextra}{\indexname}]%
167 %%          \prw@mkboth{\indexname}
168  \prw@mkboth{\csname the\@tocextra\endcsname \quad\indexname}
169  \else
170  \twocolumn[\toc@headstar{\@tocextra}{\indexname}]%
171  \prw@mkboth{\indexname}
172  \addcontentsline{toc}{\@tocextra}{\indexname}
173  \fi
174  \fi

Now we are back to the original code.

175 \thispagestyle{plain}\parindent\z@
176 \parskip\z@ \@plus .3\p@\relax
177 \let\item\@idxitem}
178 {\if@restonecol\onecolumn\else\clearpage\fi}
179 \fi

\toc@start \toc@finish These two macros deal with the start and finish of the \tableofcontents and friends by adjusting the column settings if need be.

180 \newcommand{\toc@start}{%
181 \ifSCDchapter
182  \if@twocolumn
183  \@restonecoltrue\onecolumn
184  \else
185  \@restonecolfalse
186  \fi
187 \fi}
188 \newcommand{\toc@finish}{%
189 \ifSCDchapter
190  \if@restonecol\twocolumn\fi
191 \fi}
\toc@file The code for \tableofcontents, \listoftables and \listoffigures is virtu-

ally identical in each case, except for the heading text. \toc@file embodies the common code. This is virtually a parameterized copy from classes.dtx, except that it handles the differences between the article class and the other two, and incorporates the code for additions to the ToC. It is a useful hook if any other package wants to extend tocbibind for other kinds of listings.

The command is \toc@file{⟨head-text⟩}{⟨file-extension⟩}, where ⟨head-text⟩ is the heading (e.g., List of Figures) and ⟨file-extension⟩ is the file extension (e.g.,

 lof).

192 \newcommand{\toc@file}[2]{%
193 \toc@start

The next bit is for the heading changes.

194 \if@bibchapter
195  \toc@chapter{#1}
196 \else
197  \toc@section{\@tocextra}{#1}
198 \fi

And finish up with a parameterized call to start the listing and tidy up.

199 \@starttoc{#2}
200 \toc@finish}

\tableofcontents If requested, we redefine this command, using \toc@file to do all the work for us.

201 \if@dotoctoc
202 \renewcommand{\tableofcontents}{%
203  \toc@file{\contentsname}{toc}

204 }

205 \fi

\listoftables This is almost identical to the code for \tableofcontents

206 \if@dotoclot
207 \renewcommand{\listoftables}{%
208  \toc@file{\listtablename}{lot}

209 }

210 \fi

\listoffigures This is almost identical to the code for \tableofcontents

211 \if@dotoclof
212 \renewcommand{\listoffigures}{%
213  \toc@file{\listfigurename}{lof}

214 }

215 \fi

The end of this package.

216 ⟨/usc⟩

References

[GMS94] Michel Goossens, Frank Mittelbach, and Alexander Samarin. The LaTeX Companion. Addison-Wesley Publishing Company, 1994.

[Wil96] Peter R. Wilson. LaTeX for standards: The LaTeX package files user manual. NIST Report NISTIR, June 1996.

Index

Numbers written in italic refer to the page where the corresponding entry is described, the ones underlined to the code line of the definition, the rest to the code lines where the entry is used.

Symbols

\@bibchapterfalse .

. 34, 45, 55, 60, 68

\@bibchaptertrue 36, 64
\@biblabel . . . 126, 127
\@clubpenalty . . . . . 136
\@donumbibfalse . . . 43
\@donumbibtrue . . . . 51
\@donumindexfalse . 44
\@donumindextrue . . 52
\@dotocbibfalse . . . 46
\@dotocbibtrue . . . . 38
\@dotocindfalse . 47, 78
\@dotocindtrue . . . . 39
\@dotocloffalse . . . 50
\@dotocloftrue . . . . 42
\@dotoclotfalse . . . 49
\@dotoclottrue . . . . 41
\@dotoctocfalse . . . 48
\@dotoctoctrue . . . . 40

\@idxitem . . . . . . . . 177

\@ifclassloaded . . . 33
\@inltxdocfalse . . . 33
\@inltxdoctrue . . . . 33
\@latex@warning . . . 140
\@makechapterhead . 154
\@makeschapterhead .

. . . . . . . . 59, 159 \@nameuse 84, 87, 119, 166

\@noitemerr . . . . . . . 139
\@openbib@code . . . . 130
\@restonecolfalse .

. . . . . . . . 146, 185

\@restonecoltrue . .

. . . . . . . . 148, 183 \@spaces . . . . . . . . . . 7

\@starttoc . . . . . . . 199
\@tocextra . . . . \underline{79},

119, 121, 166, 168, 170, 172, 197

A

\addcontentsline . .

85, 90, 155, 161, 172

B

\baselineskip . 153, 165

\bibname . . . . . . . 91, 98

C \c@enumiv …. 126, 133 \chapter … 54, 89, 113

                          \chaptermark . . . . . . 157
                          \clearpage . . . . . . . 178
                          \clubpenalty . . 135, 136
                          \contentsname . . . . .

…. 102, 103, 203 \csname . . . . . . . . . . 168

E

                          \endcsname . . . . . . . 168

\endinput . . . . . . 19, 28 environments:

                             thebibitemlist . \underline{125}
                             thebibliography   \underline{109}

theindex . . . . . . \underline{143}

G

                          \GenericWarning . . . . 6

I

                          \if@bibchapter . . . .

\underline{34}, 71, 111, 150, 194

                          \if@donumbib \underline{43}, 112, 118
                          \if@donumindex . . . .

. . . . . \underline{43}, 151, 164

                          \if@dotocbib . . . \underline{38}, 109
                          \if@dotocind . . . \underline{38}, 143
                          \if@dotoclof . . . \underline{38}, 211
                          \if@dotoclot . . . \underline{38}, 206
                          \if@dotoctoc . . . \underline{38}, 201
                          \if@inltxdoc . . . . \underline{32}, 78
                          \if@restonecol 178, 190
                          \if@twocolumn . 145, 182
                          \ifSCDchapter . . . . .

. . . . . 35, 181, 189

                          \ifSCDknownclass . . 22
                          \ifSCDnodivs . . . . 15, 25
                          \indexname . . . . . . .

. 100, 101, 154– 157, 159–161, 166–168, 170–172

\item . . . . . . . . . . . . 177

L \labelsep . . . . . . . . 129

                          \labelwidth . . . 127, 128

                                                   \leftmargin . . . 128, 129
                                                   \listfigurename . . .

…. 106, 107, 213

                                                   \listoffigures . . . . \underline{211}
                                                   \listoftables . . . . . \underline{206}
                                                   \listtablename . . . .

…. 104, 105, 208

M

                                                   \MakeUppercase . . . . 82

N \newif …. 32, 34, 38–44

O

                                                   \onecolumn . . . 178, 183

P \p@enumiv . . . . . . . . 132

                                                   \PackageWarning . . .

. . . . . . 16, 23, 26, 56, 61, 72, 75

                                                   \parindent . . . . . . . 175

\parskip . . . . . . . . . 176

                                                   \providecommand . . .

…. 5, 12, 81, 100, 102, 104, 106

                                                   \ProvidesPackage . . . 3
                                                   \prw@mkboth . \underline{81}, 156,

160, 167, 168, 171

                                                   \PRWPackageNote . . . . \underline{5}
                                                   \PRWPackageNoteNoLine

. . . . . . . \underline{5}, 73, 76

Q \quad . . . . . . . . . . . . 168

R \refname . . . . . . . 92, 95

                                                   \renewenvironment .

. . . . . . . . 110, 144

                                                   \RequirePackage . . . . 4

S \SCDquit . . . . . . 19,

21, 28, 31, 67, 70

                                                   \setindexname . . . 2, \underline{100}

                                                   \setlofname . . . . . 2, \underline{100}
                                                   \setlotname . . . . . 2, \underline{100}

\settocbibname . . 2, \underline{100}
\settocname . . . . . 2, \underline{100}

T

\tableofcontents . . \underline{201}
thebibitemlist (envi-

ronment) … \underline{125}

thebibliography (envi-

ronment) … \underline{109}

\thechapter . . . . . . . 155

\theenumiv . . . . . . . 133

theindex (environ-

ment) . . . . . . \underline{143}

\thispagestyle . . . . 175
\toc@chapter \underline{81}, 115, 195
\toc@file . . . . . . . .

. \underline{192}, 203, 208, 213

\toc@finish . . . \underline{180}, 200
\toc@headstar . . \underline{81}, 170
\toc@section \underline{81}, 121, 197

                          \toc@start . . . \underline{180}, 193

                          \tocbibname 2, \underline{91}, 108,

113, 115, 119, 121

                          \tocotherhead . . . . 2, \underline{79}
                          \twocolumn . . . 153,

159, 165, 170, 190

W

                          \widowpenalty . . . . . 137