[Tex/LaTex] TOC “Appendices” wrongly entry comes after 1st appendix entry when use \include

appendicesincludetable of contents

I use the appendix package with its toc option for a book document. If the first of several appendices is inserted by using \include, then the "Appendices" heading in the TOC incorrectly appears after the entries for the first appendix.

This happens no matter whether I use the \appendices command, as shown below, or else the appendices environment.
The same thing happens if I don't use the appendix package but instead just the \appendix command and use an \addcontentsline to insert the "Appendices" item in the TOC.

This behavior does not occur if the body of the appendix is inserted directly in the main document.

The behavior does not occur, either, if I use \input instead of \include. However, I really need to use \include.

Here's a minimal failing example. (The 2nd appendix is here just to highlight the effect in TOC. In the main file, I have a 2nd appendix right there, but it makes no difference if I put that in a separate file and use another \include for it.)

 %%%%% main file %%%%
\documentclass{book}
\usepackage[toc]{appendix}
\begin{document}
\frontmatter
\tableofcontents
\mainmatter

\chapter{First things}
This comes first.

\appendices

\include{appendixA}

\chapter{Another addendum}
This is some more information.

\end{document}

The file appendixA:

\chapter{The initial stuff}
All about `A'.

\section{A section within the initial appendix}
Yet more.
\endinput

Best Answer

There are two and a half solutions (only the second one is valid if you need to use \include):

  1. Use \input instead of \include (if you don't need the functionality of \include).
  2. Put \appendices into appendixA.tex.
  3. Manually configure the TOC file from

    \contentsline {chapter}{\numberline {1}First things}{1}
    \contentsline {chapter}{\numberline {A}The initial stuff}{3}
    \contentsline {section}{\numberline {A.1}A section within the initial appendix}{3}
    \contentsline {chapter}{Appendices}{3}
    \contentsline {chapter}{\numberline {B}Another addendum}{5}
    

    to

    \contentsline {chapter}{\numberline {1}First things}{1}
    \contentsline {chapter}{Appendices}{3}
    \contentsline {chapter}{\numberline {A}The initial stuff}{3}
    \contentsline {section}{\numberline {A.1}A section within the initial appendix}{3}
    \contentsline {chapter}{\numberline {B}Another addendum}{5}
    

The package manual states:

There is an unfortunate interaction between the LaTeX kernel commands \include and \addcontentsline. […]
Things work as expected if the \addcontentsline command is placed within the \included file, or if the imported file is \inputed instead of \included.

On another note: appencides is an environment not a macro, so you better use \appendices … \endappendices or \begin{appendices} … \end{appendices}.

Related Question