为什么我的 Latex 需要多个 \end(document)?

为什么我的 Latex 需要多个 \end(document)?

我的 Latex 文档需要多个实例,\end{document}尽管我只有一个begin{document}

如果没有额外的\end{document}s,我会收到错误:

Compile Error. Sorry your LaTeX code couldn't compile for some reason.

以下是非致命错误列表(我还没有上传一些照片)以及致命错误:

Emergency Stop.

<*> main.tex

***(job aborted, no legal \end found)

\end(doument)直到我在文档末尾添加了一个额外内容,该错误才消失。过了一会儿,错误再次出现,并且直到我添加了另一个,才得到明显修复\end(doument)

我现在有三个实例,但\end(doument)只有一个\begin(document),但它似乎已经修复了错误。

可能的原因(也许):

在我添加包后不久,错误开始出现etex,所以可能与此有关。我添加这个包是因为我已经达到了图片限制。不过,在我添加这个包后,它确实编译了几次,没有任何问题,所以可能不是这个原因。

我也在使用子文件包,每个部分都在其自己的 tex 文件中。这些文件通过 添加到主 tex 文件中\subfile{path}。这些子文件没有前导,因为该\subfile命令的工作方式就像 .tex 文件中的文本被简单地复制并粘贴到 的位置一样\subfile{path}。同样,这在错误出现之前就已经起作用了,但现在文档越来越大,所以也许是它让人感到困惑?

我只使用过\input{}一次该命令,在文件的最开始main.tex,在 之前\begin{document}。这是为了输入所有前言内容,例如用户包和自定义命令。再次说明,这在错误发生之前就已经正常工作了。

我的文件的开头main.tex如下所示:

\documentclass[a4paper]{report}

    \input{header.tex}

\title{the title}

\begin{document}
\maketitle
...

header.tex 文件只是\usepackage\definecolor和命令的列表。没有其他内容。此文件的底部或开头没有任何内容。同样,在错误开始出现之前\newcommand\linespread{1.5}它运行良好。我只是想提一下,以便您了解我的源代码的结构。

我正在 ShareLatex 网站上使用 pdfLaTeX 编译器编写这个项目。我的文档长达 200 页。我使用了 20 多个软件包。如果您想查看完整的头文件,我已将其放在单独的项目中供查看这里。

为什么我会收到此错误?我该如何修复它?

谢谢!

相关内容