The appendix package^{∗}

Peter Wilson^{†} Catholic University of America

       Now at peter.r.wilson@boeing.com

2004/04/16

Abstract

The appendix package provides some facilities for modifying the typesetting of appendix titles. Further, (sub)appendices environments are available that can be used, for example, for per chapter/section appendices.

The package is designed to work only with classes that have a \chapter and/or \section command. It has not been tested with other packages that change the definitions of the sectioning commands.

Contents

1 Introduction 1

2 The appendix package 2 2.1 Known problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

3 The package code 4

1 Introduction

In the standard classes the \appendix command does the following:

• For classes with Chapters:

– Resets the chapter and section counters to zero

– Sets \@chapapp to \appendixname.

– Redefines \thechapter to produce alphabetic appendix numbers.

• For the other classes

– Resets the section and subsection counters to zero.

– Redefines \thesection to produce alphabetic appendix numbers.

∗This file (appendix.dtx) has version number v1.2a, last revised 2004/04/16.

†After May 2004 at pandgwilson at earthlink dot net

The appendix package provides additional appendixing capabilities. It cooperates with the hyperref package^{1} but may be problematic when used with packages that change the definition of the sectioning commands.

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.

2 The appendix package

The appendix package provides some commands that can be used in addition to the \appendix command. It also provides a new environment that can be used instead of the \appendix command. The environment provides some addtional actions with respect to the simple \appendix. First the new commands will be described and then the new environment will be discussed.

\appendixpage The \appendixpage command will typeset a heading in the style of a \part heading for the class. The wording of the heading is given by the value of

\appendixpagename.

\addappheadtotoc This command will insert general heading into the Table of Contents (ToC). The text is given by the value of \appendixtocname. If used, the command must come before the first appendix, as it is meant to be used to introduce the appendix titles in the ToC.

The above commands can be used in conjunction with the traditional \appendix command, which they should immediately follow. For example:

 \appendix
 \appendixpage
 \addappheadtotoc

\noappendicestocpagenum By default the \addappheadtotoc command puts a page number in the ToC.

\appendicestocpagenum This can be prevented by using \noappendicestocpagenum. For symmetry, the

\appendicestocpagenum command ensures that a page number is put in the ToC.

   NOTE: Unless \noappendicestocpagenum is used the \addappheadtotoc

command uses the current page number when it makes the entry in the ToC. The \appendixpage command puts a heading in the document like a \part heading; in un-chaptered documents the \part heading appears in the ordinary run of the text like a \section heading, but in chaptered documents it is on a page by itself. That is, in chaptered documents \appendixpage does a \clear[double]page typesets the heading, and then does another \clear[double]page. Therefore, in a chaptered document the above sequence of commands will use the page number after the \appendixpage as the ToC entry^{2} and if the ordering is reversed (i.e.,

\addappheadtotoc\appendixname) then the page number before \appendixname

will be used as the ToC entry. For chaptered documents it is probably best to do:

    \clearpage % or \cleardoublepage

1With thanks to Hylke W. van Dijk (hylke@ubicom.tudelft.nl) who pointed out that version 1.1 did not and set me on the track for supporting the hyperref package.

2With thanks to Eduardo Jacob (edu@kender.es) for pointing this out.

    \addappheadtotoc
    \appendixpage

which will use the page number of \appendixpage as the ToC entry.

\appendixname The \appendixname command is defined in those classes that provide for chap-

\appendixtocname
\appendixpagename

ters. It is provided in this package whether or not it has been defined in the class. It’s default value is ‘Appendix’. The default value of both \appendixtocname and \appendixpagename is ‘Appendices’. These names can all be changed via

\renewcommand. For example,
 \renewcommand{\appendixtocname}{List of appendices}

appendices The appendices environment can be used instead of the \appendix command. It provides more functionality than is possible from the combination of the

\appendix, \addappheadtotoc and \appendixpage commands. The functions of

the appendices environment are usually accessed through the package options, but there are declarations that mey be used insted. The options are:

• toc Put a header (e.g., ‘Appendices’) into the Table of Contents (the ToC) before listing the appendices. (This is done by calling the \addappheadtotoc command.)

• page Puts a title (e.g., ‘Appendices’) into the document at the point where the appendices environment is begun. (This is done by calling the

     \appendixpage command.)

• title Adds a name (e.g., ‘Appendix’) before each appendix title in the body of the document. The name is given by the value of \appendixname. Note that this is the default behaviour for classes that have chapters.

• titletoc Adds a name (e.g., ‘Appendix’) before each appendix listed in the ToC. The name is given by the value of \appendixname.

• header Adds a name (e.g., ‘Appendix’) before each appendix in page headers. The name is given by the value of \appendixname. Note that this is the default behaviour for classes that have chapters.

Depending on the particular package options that are set and the document class, the appendices environment may change the definition of elements of the sectioning commands (e.g., \chapter or \section). This may be a problem if the environment is used in conjunction with any other package that makes changes to these commands. If this is the case, then you will have to examine the code for the appendices environment and make any necessary changes to one or the other of the packages (via your own package file). The changes to the sectional heading commands are discarded at the end of the appendices environment.

\appendixtocon      \appendixtocon is a declaration equivalent to the toc option. The \appendixtocoff

\appendixtocoff declaration is equivalent to not using that option. \appendixpageon \appendixpagecon is a declaration equivalent to the page option. The \appendixpageoff \appendixpageoff declaration is equivalent to not using that option. \appendixtitleon \appendixtitleon is a declaration equivalent to the title option. The \appendixtitleoff \appendixtitleoff declaration is equivalent to not using that option.

\appendixtitletocon \appendixtitletocon is a declaration equivalent to the titletoc option. The \appendixtitletocoff \appendixtitletocoff declaration is equivalent to not using that option.

\appendixheaderon \appendixheaderon is a declaration equivalent to the header option. The \appendixheaderoff \appendixheaderoff declaration is equivalent to not using that option.

\restoreapp The appendices environment restores the prior value of the chapter/section counter at the end of the environment, so the environment may be used between the main document divisions. By default, the appendix counter value is saved and restored by the environment. That means that appendices in a series of appendices environments will be lettered sequentially. To make the lettering start from A each time, put the following into the preamble:

\renewcommand{\restoreapp}{}

subappendices Within the subappendices environment, an appendix is introduced by a \section command in chaptered documents, otherwise it is introduced by a \subsection command. Effectively, this provides for appendices at the end of a main document division, as an integral part of the division. The subappendices environment supports only the title and titletoc options.

\setthesection By default, the ‘subappendices’ are numbered like normal (sub)sections, ex- \setthesubsection cept that the (sub)section number itself is typeset as an uppercase letter. This

behaviour can be changed by redefining these \setthe... commands. For example, to just have a letter not prepended by the main division number, do:

\renewcommand{\setthesection}{\Alph{section}} or
\renewcommand{\setthesubsection}{\Alph{subsection}} as appropriate.

2.1 Known problems

There is an unfortunate interaction between the L^{A}TEX kernel commands \include and \addcontentsline. If these are used like this:

 \addcontentsline{toc}{...}{addtotoc}
 \include{import}

then the text of the \addcontentsline command (‘addtotoc’ in the example) is not written to the appropriate (toc) file until after the included file has written all its entries out to the (toc) file. As far as I can tell, there is no way around this behaviour without rewriting parts of the L^{A}TEX kernel code.

It is thus up to the author to avoid putting an \addcontentsline command (or a command that internally uses \addcontentsline, as does the \addappheadtotoc command) before an \included file that writes out to the same file. Things work as expected if the \addcontentsline command is placed within the \included file, or if the imported file is \inputed instead of \included.

3 The package code

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

1 ⟨∗usc⟩

 2 \NeedsTeXFormat{LaTeX2e}
 3 \ProvidesPackage{appendix}[2002/08/06 v1.2 extra appendix facilities]

4

In order to try and avoid name clashes with other packages, each internal name will include the character string @pp.

\if@knownclass@pp \if@chapter@pp These are used when we need to decide what appendix style is being used for the document. Assume the article class or other without chapters.

 5 \newif\if@chapter@pp\@chapter@ppfalse
 6 \newif\if@knownclass@pp\@knownclass@ppfalse

Check the sectioning commands.

 7 \@ifundefined{chapter}{%
 8 \@ifundefined{section}{}{\@knownclass@pptrue}}{%
 9 \@chapter@pptrue\@knownclass@pptrue}

\phantomsection \the@pps \if@pphyper We need to provide \phantomsection if hyperref is not used and, whether or not hyperref is used, we need to define a counter here to support potential hyperrefs (used to disambiguate (sub)appendices). \if@pphyper is TRUE if the hyperref package is used.

10 \providecommand{\phantomsection}{}
11 \newcounter{@pps}
12 \renewcommand{\the@pps}{\alph{@pps}}
13 \newif\if@pphyper
14 \@pphyperfalse
15 \AtBeginDocument{%
16 \@ifpackageloaded{hyperref}{\@pphypertrue}{}}

17

\if@dotoc@pp \if@dotitle@pp \if@dotitletoc@pp \if@dohead@pp \if@dopage@pp A set of booleans for the options. Default is the appendices environment does

nothing more than the \appendix command does unless one or more options are set.

18 \newif\if@dotoc@pp\@dotoc@ppfalse
19 \newif\if@dotitle@pp\@dotitle@ppfalse
20 \newif\if@dotitletoc@pp\@dotitletoc@ppfalse
21 \newif\if@dohead@pp\@dohead@ppfalse
22 \newif\if@dopage@pp\@dopage@ppfalse

Now we can do the five options.

23 \DeclareOption{toc}{\@dotoc@pptrue}
24 \DeclareOption{title}{\@dotitle@pptrue}
25 \DeclareOption{titletoc}{\@dotitletoc@pptrue}
26 \DeclareOption{header}{\@dohead@pptrue}
27 \DeclareOption{page}{\@dopage@pptrue}

Process the options now.

28 \ProcessOptions\relax

Issue a warning if \chapter and \section are undefined, then quit.

29 \newcommand{\@ppendinput}{}
30 \if@knownclass@pp\else
31 \PackageWarningNoLine{appendix}%
32  {There is no \protect\chapter\space or \protect\section\space command.\MessageBreak
33  The appendix package will not be used}
34 \renewcommand{\@ppendinput}{\endinput}
35 \fi
36 \@ppendinput

37

\appendixtocon \appendixtocoff Declarative forms of the toc option.

38 \newcommand{\appendixtocon}{\@dotoc@pptrue}
39 \newcommand{\appendixtocoff}{\@dotoc@ppfalse}

\appendixpageon \appendixpageoff Declarative forms of the page option.

40 \newcommand{\appendixpageon}{\@dopage@pptrue}
41 \newcommand{\appendixpageoff}{\@dopage@ppfalse}
\appendixtitleon \appendixtitleoff Declarative forms of the title option.
42 \newcommand{\appendixtitleon}{\@dotitle@pptrue}
43 \newcommand{\appendixtitleoff}{\@dotitle@ppfalse}
\appendixtitletocon \appendixtitletocoff Declarative forms of the titletoc option.
44 \newcommand{\appendixtitletocon}{\@dotitletoc@pptrue}
45 \newcommand{\appendixtitletocoff}{\@dotitletoc@ppfalse}
\appendixheaderon \appendixheaderoff Declarative forms of the header option.
46 \newcommand{\appendixheaderon}{\@dohead@pptrue}
47 \newcommand{\appendixheaderoff}{\@dohead@ppfalse}
\@ppsavesec \@pprestoresec \@ppsaveapp \restoreapp For the appendices environment we need to save and restore the main document

division number and the appendix number. The \restoreapp command is the one for the user.

48 \newcounter{@ppsavesec}
49 \newcounter{@ppsaveapp}
50 \setcounter{@ppsaveapp}{0}
51 \newcommand{\@ppsavesec}{%
52 \if@chapter@pp \setcounter{@ppsavesec}{\value{chapter}} \else
53  \setcounter{@ppsavesec}{\value{section}} \fi}
54 \newcommand{\@pprestoresec}{%
55 \if@chapter@pp \setcounter{chapter}{\value{@ppsavesec}} \else
56  \setcounter{section}{\value{@ppsavesec}} \fi}
57 \newcommand{\@ppsaveapp}{%
58 \if@chapter@pp \setcounter{@ppsaveapp}{\value{chapter}} \else
59  \setcounter{@ppsaveapp}{\value{section}} \fi}
60 \newcommand{\restoreapp}{%
61 \if@chapter@pp \setcounter{chapter}{\value{@ppsaveapp}} \else
62  \setcounter{section}{\value{@ppsaveapp}} \fi}
\appendixname \appendixtocname \appendixpagename These commands hold the names that might be used. \appendixname may have

been defined in the class. The others are new.

63 \providecommand{\appendixname}{Appendix}
64 \newcommand{\appendixtocname}{Appendices}
65 \newcommand{\appendixpagename}{Appendices}

\appendixpage The command to typeset a page announcing the start of the appendices. It is based on the \part definition (either from the book class or the article class).

66 \newcommand{\appendixpage}{%
67 \if@chapter@pp \@chap@pppage \else \@sec@pppage \fi

68 }

\clear@ppage The non-chaptered classes do not define \if@openright, but we need to use this for chaptered documents to clear the appropriate pages. \clear@ppage does the right thing, but must only be called in chapter related code, otherwise there will be error message like extra \else or extra \fi.

69 \newcommand{\clear@ppage}{%
70 \if@openright\cleardoublepage\else\clearpage\fi}

71

\@chap@pppage Do an appendix page in chapter style. Copy code from the book class \part command, but use \appendixpagename as the title.

72 \newcommand{\@chap@pppage}{%
73 \clear@ppage
74 \thispagestyle{plain}%
75 \if@twocolumn\onecolumn\@tempswatrue\else\@tempswafalse\fi
76 \null\vfil
77 \markboth{}{}%
78 {\centering
79 \interlinepenalty \@M
80 \normalfont
81 \Huge \bfseries \appendixpagename\par}%

Add to ToC if requested

82 \if@dotoc@pp
83  \addappheadtotoc
84 \fi

In the book class the \part command is finished off by calling \@endpart. There are two problems with this in this package. (1) \@endpart is not defined in article style classes and (2) it always throws a blank page which does not look good if the openany option is used. So, code it all up here.

85 \vfil\newpage
86 \if@twoside
87  \if@openright
88  \null
89  \thispagestyle{empty}%
90  \newpage
91  \fi
92 \fi
93 \if@tempswa
94  \twocolumn
95 \fi

96 }

97

\@sec@pppage Copy code from the article class \part command, but use \appendixpagename as the title.

98 \newcommand{\@sec@pppage}{%
99 \par
100 \addvspace{4ex}%
101 \@afterindentfalse
102 {\parindent \z@ \raggedright
103 \interlinepenalty \@M
104 \normalfont
105 \huge \bfseries \appendixpagename%

106 \markboth{}{}\par}%

Add to ToC if requested

107 \if@dotoc@pp
108  \addappheadtotoc
109 \fi
110 \nobreak
111 \vskip 3ex
112 \@afterheading

113 }

114

\if@pptocpage \noappendicestocpagenum \appendicestocpagenum \addappheadtotoc The \addappheadtotoc command adds an ‘appendices’ line to the ToC. The style

is the same as used in tocbibind for the ‘List of figures’ line. That is, as a Chapter heading or a Section heading. \if@pptocpage controls whether ot not a page number is put into the ToC.

115 \newif\if@pptocpage
116 \@pptocpagetrue
117 \newcommand{\noappendicestocpagenum}{\@pptocpagefalse}
118 \newcommand{\appendicestocpagenum}{\@pptocpagetrue}
119 \newcommand{\addappheadtotoc}{%
120 \phantomsection
121 \if@chapter@pp

Chaptered document

122  \if@pptocpage
123  \addcontentsline{toc}{chapter}{\appendixtocname}%
124  \else
125  \if@pphyper
126  \addtocontents{toc}%
127  {\protect\contentsline{chapter}{\appendixtocname}{}{\@currentHref}}%
128  \else
129  \addtocontents{toc}%
130  {\protect\contentsline{chapter}{\appendixtocname}{}}%
131  \fi
132  \fi
133 \else

Not a chaptered document

134  \if@pptocpage
135  \addcontentsline{toc}{section}{\appendixtocname}%
136  \else
137  \if@pphyper
138  \addtocontents{toc}%
139  {\protect\contentsline{section}{\appendixtocname}{}{\@currentHref}}%
140  \else
141  \addtocontents{toc}%
142  {\protect\contentsline{section}{\appendixtocname}{}}%
143  \fi
144  \fi
145 \fi

146 }

147

For my reference, here is the standard version of the \appendix macro, but modified for both chaptered and unchaptered documents.

  \newcommand{\appendix}{\par
    \if@chapter@pp
      \setcounter{chapter}{0}%
      \setcounter{section}{0}%
      \gdef\@chapapp{\appendixname}%
      \gdef\thechapter{\@Alph\c@chapter}
    \else
      \setcounter{section}{0}%
      \setcounter{subsection}{0}%
      \gdef\thesection{\@Alph\c@section}
    \fi
  }

And this equivalently is what the hyperref package does.

  \def\Hy@chapterstring{chapter}
  \def\Hy@appendixstring{appendix}
  \def\Hy@chapapp{\Hy@chapterstring}
  \let\Hy@org@appendix\appendix
  \def\appendix{%
     \Hy@org@appendix
     \if@chapter@pp
       \gdef\theHchapter{\Alph{chapter}}%
     \else
       \gdef\theHsection{\Alph{section}}%
     \fi
     \xdef\Hy@chapapp{\Hy@appendixstring}%
  }

\theH@pps We are going to use \theH@pps to disambiguate contents of appendices that might have the same hyperref marks. It is \provided as if the appendix and hyperref are in the ‘wrong’ order then somehow hyperref defines it before appendix can get to it.

148 \providecommand{\theH@pps}{\alph{@pps}}

149

\@resets@pp Resets the appropriate sectioning counters and names. This does almost exactly what the default \appendix command does, except that it saves and restores sectional numbering. It saves the sectional number at the start and restores the appendix number at the end.

150 \newcommand{\@resets@pp}{\par
151 \@ppsavesec
152 \stepcounter{@pps}
153 \setcounter{section}{0}%
154 \if@chapter@pp
155  \setcounter{chapter}{0}%
156  \renewcommand\@chapapp{\appendixname}%
157  \renewcommand\thechapter{\@Alph\c@chapter}%
158 \else

159  \setcounter{subsection}{0}%
160  \renewcommand\thesection{\@Alph\c@section}%
161 \fi
162 \if@pphyper

Now handle the hyperref tweaks.

163  \if@chapter@pp
164  \renewcommand{\theHchapter}{\theH@pps.\Alph{chapter}}%
165  \else
166  \renewcommand{\theHsection}{\theH@pps.\Alph{section}}%
167  \fi
168  \def\Hy@chapapp{\appendixname}%
169 \fi
170 \restoreapp

171 }

172

appendices This is the heart of the package. Start it off by doing the resetting done by the \appendix command. Then do the simple options before getting into the complications of redefinitions. Remember to take care of an interaction between

 \addappheadtotoc and \appendixpage.
173 \newenvironment{appendices}{%
174 \@resets@pp
175 \if@dotoc@pp
176  \if@dopage@pp              % both page and toc
177  \if@chapter@pp           % chapters
178  \clear@ppage
179  \fi
180  \appendixpage
181  \else                      % toc only
182  \if@chapter@pp          % chapters
183  \clear@ppage
184  \fi
185  \addappheadtotoc
186  \fi
187 \else
188  \if@dopage@pp              % page only
189  \appendixpage
190  \fi
191 \fi

There is only one other option applicable to the chapter style, so do it now and clear the way for doing the section style. To implement the titletoc option, we redefine the \addcontentsline command.

192 \if@chapter@pp
193  \if@dotitletoc@pp \@redotocentry@pp{chapter} \fi
194 \else

The rest of the code is specific to the section style. While we’re in the mood we might as well finish off doing the titletoc option.

195  \if@dotitletoc@pp \@redotocentry@pp{section} \fi

The next piece of code implements the header option by providing a special version

 of \sectionmark.
196  \if@dohead@pp

197  \def\sectionmark##1{%
198  \if@twoside
199  \markboth{\@formatsecmark@pp{##1}}{}
200  \else
201  \markright{\@formatsecmark@pp{##1}}{}
202  \fi}
203  \fi

The next piece of code implements the title option by doing cunning things with

 the \@seccntformat.^{3}
204  \if@dotitle@pp
205  \def\sectionname{\appendixname}
206  \def\@seccntformat##1{\@ifundefined{##1name}{}{\csname ##1name\endcsname\ }%
207  \csname the##1\endcsname\quad}
208  \fi
209 \fi}{%

At the end of the environment, save the appendix number and restore the sectional number.

210 \@ppsaveapp\@pprestoresec}

211

\setthesection \setthesubsection The user commands for specifying the numbering style for subappendices.

212 \newcommand{\setthesection}{\thechapter.\Alph{section}}
213 \newcommand{\setthesubsection}{\thesection.\Alph{subsection}}

214

\@resets@ppsub Similar to \@resets@pp except that it is for use within the subappendices envirionment; as such, it is a bit simpler.

215 \newcommand{\@resets@ppsub}{\par
216 \stepcounter{@pps}
217 \if@chapter@pp
218  \setcounter{section}{0}
219  \renewcommand{\thesection}{\setthesection}
220 \else
221  \setcounter{subsection}{0}
222  \renewcommand{\thesubsection}{\setthesubsection}
223 \fi
224 \if@pphyper

Now handle the hyperref tweaks.

225  \if@chapter@pp
226  \renewcommand{\theHsection}{\theH@pps.\setthesection}%
227  \else
228  \renewcommand{\theHsubsection}{\theH@pps.\setthesubsection}%
229  \fi
230  \def\Hy@chapapp{\appendixname}%
231 \fi

232 }

233

subappendices The environment for subappendices. Start it off by doing the resetting of the

 \(sub)section command.

3From a posting to comp.tex.tex by Donald Arseneau on 13 August 1998.

234 \newenvironment{subappendices}{%
235 \@resets@ppsub

There are two options applicable to the chapter style. To implement the titletoc option, we redefine the \addcontentsline command.

236 \if@chapter@pp
237  \if@dotitletoc@pp \@redotocentry@pp{section} \fi

To implement the title option we do cunning things with the \@seccntformat command.

238  \if@dotitle@pp
239  \def\sectionname{\appendixname}
240  \def\@seccntformat##1{\@ifundefined{##1name}{}{\csname ##1name\endcsname\ }%
241  \csname the##1\endcsname\quad}
242  \fi
243 \else

The rest of the code is for the section style.

244  \if@dotitletoc@pp \@redotocentry@pp{subsection} \fi
245  \if@dotitle@pp
246  \def\subsectionname{\appendixname}
247  \def\@seccntformat##1{\@ifundefined{##1name}{}{\csname ##1name\endcsname\ }%
248  \csname the##1\endcsname\quad}
249  \fi
250 \fi}{}

251

\@formatsecmark@pp Formats the page header for a redefined \sectionmark.

252 \newcommand{\@formatsecmark@pp}[1]{%
253 \MakeUppercase{\appendixname\space
254  \ifnum \c@secnumdepth >\z@
255  \thesection\quad
256  \fi
257  #1}}

\@redotocentry@pp In order to implement the titletoc option we redefine the \addcontentsline command which is used to put entries into the ToC. \@redotocentry@pp{⟨sect⟩} does the redefinition, where ⟨sect⟩ is the name of the sectional heading (i.e., either chapter or section).

258 \newcommand{\@redotocentry@pp}[1]{%

Save the original definition of \addcontentsline. Then start the redefinition.

259 \let\oldacl@pp=\addcontentsline
260 \def\addcontentsline##1##2##3{%

Check if writing to ToC and appropriate section.

261  \def\@pptempa{##1}\def\@pptempb{toc}%
262  \ifx\@pptempa\@pptempb

Adding to the ToC file, so check on the sectioning command.

263  \def\@pptempa{##2}\def\@pptempb{#1}%
264  \ifx\@pptempa\@pptempb

The sectioning command is the same as that specified by the argument to \@redotocentry@pp, so get on with the redefinition.

265 \oldacl@pp{##1}{##2}{\appendixname\space ##3}%
266  \else

The heading was different from the argument. No redefinition is required, so call

the original \addcontentsline.
267  \oldacl@pp{##1}{##2}{##3}%
268  \fi
269  \else

Adding to a file that is not the ToC. No redefinition is required, so call the original

\addcontentsline.
270  \oldacl@pp{##1}{##2}{##3}%
271  \fi}

272 }

273

The end of this package.

274 ⟨/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; numbers underlined refer to the code line of the definition; numbers in roman refer to the code lines where the entry is used.

Symbols

\@Alph . . . . . . . 157, 160

\@afterheading . . . . 112
\@afterindentfalse . 101
\@chap@pppage . . . 67, \underline{72}

\@chapapp . . . . . . . . 156

\@chapter@ppfalse . . 5
\@chapter@pptrue . . . 9
\@currentHref . 127, 139
\@dohead@ppfalse 21, 47
\@dohead@pptrue . 26, 46
\@dopage@ppfalse 22, 41
\@dopage@pptrue . 27, 40
\@dotitle@ppfalse 19, 43
\@dotitle@pptrue 24, 42
\@dotitletoc@ppfalse

. . . . . . . . . 20, 45

\@dotitletoc@pptrue

. . . . . . . . . 25, 44

\@dotoc@ppfalse . 18, 39
\@dotoc@pptrue . . 23, 38

                          \@formatsecmark@pp .

…. 199, 201, \underline{252}

                          \@ifpackageloaded . 16
                          \@ifundefined . . . . .

7, 8, 206, 240, 247

                          \@knownclass@ppfalse 6
                          \@knownclass@pptrue

. . . . . . . . . . . 8, 9

                          \@ppendinput . 29, 34, 36
                          \@pphyperfalse . . . . 14
                          \@pphypertrue . . . . . 16
                          \@pprestoresec . \underline{48}, 210
                          \@ppsaveapp . . . . \underline{48}, 210
                          \@ppsavesec . . . . \underline{48}, 151

\@pptempa …. 261–264 \@pptempb …. 261–264

                          \@pptocpagefalse . . 117
                          \@pptocpagetrue 116, 118
                          \@redotocentry@pp .

. . . . . . . . 193, 195, 237, 244, \underline{258}

                                                   \@resets@pp . . . \underline{150}, 174
                                                   \@resets@ppsub   \underline{215}, 235
                                                   \@sec@pppage . . . . 67, \underline{98}
                                                   \@seccntformat . . . .

…. 206, 240, 247

\␣ . . . . . . . 206, 240, 247

A

                                                   \addappheadtotoc . .

2, 83, 108, \underline{115}, 185

                                                   \addcontentsline . .

. 123, 135, 259, 260

                                                   \addtocontents . . . .

. 126, 129, 138, 141

                                                   appendices (environ-

ment) …. 2, \underline{173}

                                                   \appendicestocpagenum

. . . . . . . . . 2, \underline{115}

                                                   \appendixheaderoff 3, \underline{46}
                                                   \appendixheaderon 3, \underline{46}

\appendixname . . . . .

… 2, \underline{63}, 156, 168, 205, 230, 239, 246, 253, 265

\appendixpage . . . . .

… 2, \underline{66}, 180, 189

\appendixpagename .

…. 2, \underline{63}, 81, 105

\appendixpageoff . 3, \underline{40}
\appendixpageon . . 3, \underline{40}
\appendixtitleoff 3, \underline{42}
\appendixtitleon . 3, \underline{42}
\appendixtitletocoff

. . . . . . . . . . 3, \underline{44}

\appendixtitletocon

. . . . . . . . . . 3, \underline{44}

\appendixtocname . .

2, \underline{63}, 123, 127, 130, 135, 139, 142

\appendixtocoff . . 3, \underline{38}
\appendixtocon . . . 3, \underline{38}
\AtBeginDocument . . 15

C

\c@chapter . . . . . . . 157
\c@secnumdepth . . . . 254
\c@section . . . . . . . 160
\centering . . . . . . . 78

\chapter . . . . . . . . . 32

\clear@ppage . . . . . .

. . \underline{69}, 73, 178, 183

\cleardoublepage . . 70
\clearpage . . . . . . . 70
\contentsline . . . . .

. 127, 130, 139, 142 \csname … 206, 207,

240, 241, 247, 248

E

\endcsname 206, 207,

240, 241, 247, 248 \endinput . . . . . . . . 34 environments:

   appendices . . . . . \underline{173}
   subappendices . . \underline{234}

environments:appendices

   appendices . . . . . . 2

environments:subappendices

                             subappendices . . . 3

H \Huge . . . . . . . . . . . . 81 \huge . . . . . . . . . . . . 105

                          \Hy@chapapp . . . 168, 230

I

                          \if@chapter@pp . . . .

. . \underline{5}, 52, 55, 58, 61, 67, 121, 154, 163, 177, 182, 192, 217, 225, 236

                          \if@dohead@pp . . \underline{18}, 196
                          \if@dopage@pp . . . . .

. . . . . \underline{18}, 176, 188

                          \if@dotitle@pp . . . .

. \underline{18}, 204, 238, 245

                          \if@dotitletoc@pp \underline{18},

193, 195, 237, 244

                          \if@dotoc@pp . . . . . .

. . \underline{18}, 82, 107, 175

                          \if@knownclass@pp   \underline{5}, 30
                          \if@openright . . . 70, 87
                          \if@pphyper . . . . \underline{10},

125, 137, 162, 224

                          \if@pptocpage . . . . . \underline{115}
                          \if@twocolumn . . . . . 75
                          \if@twoside . . . . 86, 198
                          \interlinepenalty .

. . . . . . . . 79, 103

M

                          \MakeUppercase . . . . 253
                          \MessageBreak . . . . . 32

N \newif 5, 6, 13, 18–22, 115

                          \noappendicestocpagenum

. . . . . . . . . 2, \underline{115}

                          \normalfont . . . . 80, 104

O

                          \oldacl@pp . . . . . . .

. 259, 265, 267, 270

                          \onecolumn . . . . . . . 75

P

                                                   \PackageWarningNoLine

. . . . . . . . . . . . 31

                                                   \parindent . . . . . . . 102
                                                   \phantomsection   \underline{10}, 120
                                                   \providecommand . . .

. . . . . . 10, 63, 148

                                                   \ProvidesPackage . . . 3

Q \quad . 207, 241, 248, 255

R

                                                   \restoreapp . . 3, \underline{48}, 170

S \section . . . . . . . . . 32

                                                   \sectionmark . . . . . . 197
                                                   \sectionname . . 205, 239
                                                   \setthesection . . . .

. . 4, \underline{212}, 219, 226

                                                   \setthesubsection .

. . 4, \underline{212}, 222, 228

                                                   \stepcounter . . 152, 216
                                                   subappendices (envi-

ronment) . 3, \underline{234}

                                                   \subsectionname . . . 246

T \the@pps . . . . . . . . . \underline{10}

                                                   \thechapter . . . 157, 212
                                                   \theH@pps . . . . \underline{148},

164, 166, 226, 228

                                                   \theHchapter . . . . . . 164
                                                   \theHsection . . 166, 226
                                                   \theHsubsection . . . 228
                                                   \thesection . . . . . . .

. 160, 213, 219, 255

                                                   \thesubsection . . . . 222
                                                   \thispagestyle . . 74, 89
                                                   \twocolumn . . . . . . . 94

V \value … 52, 53, 55,

56, 58, 59, 61, 62