第一次编译时未打印目录中的内容:由于子文件包?

第一次编译时未打印目录中的内容:由于子文件包?

我正在写一份由 3 个独立文件组成的报告,每个文件都包含一个独立的数学文本。我与子文件包。我在 3 个单独的文件中创建了三个章节,然后将它们包含在主文件中,如下所示:

\usepackage{subfiles}

\title{My Report}

\maketitle

\tableofcontents

\begin{document}

\chapter{Ch1}
\subfile{chapter1}
\chapter{Ch2}
\subfile{chapter2}
\chapter{Ch3}
\subfile{chapter3}

\end{document}

但是,当我编译文件时,我得到的目录是空的。如何创建包含 3 个章节及其节和小节的目录?

答案1

这与软件包无关subfiles。问题是由 LaTeX 创建目录的方式引起的。简而言之,您需要编译主文件两次才能看到目录。

原因是每次运行时,LaTeX 都会将有关章节标题的信息写入一个单独的文件,扩展名为.toc。在后续运行时,只要您发出命令,\tableofcontenst它就会从文件中读取信息.toc以排版目录。第一次运行时,.toc尚未创建,因此不会打印目录。

请注意,您可能需要进一步编译才能在目录中获得正确的页码引用。

相关内容