我正在尝试将一个单独的文件输入chapter1.tex
到mainbody.tex
文件中。因此,在mainbody.tex
我输入的文件中,
\documentclass[...]{book}
\blah
\blah
\begin{document}
\input{\...\chapter1.tex}
\end{document}
这两个文件chapter1.tex
和mainbody.tex
都使用相同的前言编写脚本。当我编译时,chapter1.tex
过程结束且没有错误,并且 .pdf
文档正确生成。但是当我编译时,mainbody.tex
它给了我
! LaTeX 错误:仅可用于序言中。
并且它引用的是该chapter1.tex
文件。
看起来,在main body.tex
编译时,当编译器到达\input
命令时,它会读取文件的前导码chapter1.tex
并将其命令识别为文件主体的命令mainbody.tex
,从而出现错误。
但是,mainbody.pdf
即使编译过程以错误结束,也会生成文件。
知道是什么原因导致了这个错误以及如何消除它吗?
答案1
事实上,您输入了两次前导码 - 第二次是在 之后\begin{document}
。因此,请将其从 中省略chapter1.tex
。如果您需要单独编译第 1 章,请创建一个新的主程序,或者在已有的主程序中使用\include
和。\includeonly
您可能会发现此工作流模板很有用: subimport 和 includeonly