可能重复:
第一章出现在目录第一行之前
在包含外部文件时,我在目录中插入一行时遇到问题。\input
并且\include
在这种情况下行为有所不同。
我的MWE
\documentclass{report}
\begin{filecontents}{appen.tex}
\chapter{Appendix 1}
This is the appendix
\end{filecontents}
\begin{document}
\tableofcontents
\chapter{Main}
This is the main part.
\appendix
\part*{Appendix}
\addtocontents{toc}{%
\protect\contentsline{chapter}{Appendix}{}{}}
\input{appen}
\end{document}
效果很好,可以满足我的要求。但是,当我将命令更改\input
为时\include
,注释“附录”出现在章节“附录 1”之后。
我可以只处理\input
附录的第一章并\include
处理其余部分(这样确实可以正常工作),但我想知道是否有人可以解释这种行为并且可能有解决方案,以便我\include
也可以处理附录的第一章。
答案1
我个人认为你把事情搞得太复杂了,你不需要手动添加到目录中。
如果您坚持使用来\begin{filecontents}
模拟外部文件,我确实注意到,如果文件存在,它不会覆盖,这可能会给您带来假阴性。顺便说一句,覆盖错误是filecontents
开发该软件包的原因之一,因此请尝试以下方法。
\documentclass{report}
\usepackage{filecontents}
\begin{filecontents*}{appen.tex}
\chapter{An Appendix Chapter}
This is the appendix
\end{filecontents*}
\begin{document}
\tableofcontents
\chapter{Main}
This is the main part.
\appendix
\include{appen}
\end{document}