我正在编写别人写的一篇论文,我必须修复一些与我从未读过的文本相关的错误消息。当我编写论文时,有时会出现错误,我必须找出错误在论文中的哪个位置以及如何修复它。
警告消息提供了有关导致警告的原因的一些信息,例如:
LaTeX Warning: Reference `label1' on page \thepage undefined on input line 74.
pdflatex
这些对我弄清楚文件处理的位置很有帮助,因为错误消息通常是这样的:
[5]
! LaTeX Error: Illegal character in array arg.
这只是我遇到并试图修复的错误之一。我可以用 Google 搜索错误消息并尝试了解导致错误的原因。但我的问题是:有没有简单的方法可以知道是什么原因导致乳胶中出现错误消息?
我最想看到的是,在警告时显示的行号信息,而不是在错误时显示的行号信息。我不知道这个功能是否存在,但我觉得值得一问。
答案1
您收到的完整错误消息下面包含必要的信息:
! LaTeX Error: Illegal character in array arg.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.3 $\begin{array}{lrq}
您可以看到 LaTeX 的位置,在这种情况下,错误的原因应该很清楚。错误位于当前输入文件的第 3 行。
如果您使用该选项运行排版引擎--file-line-error
(如何执行此操作取决于您的 TeX 发行版和编辑器/前端),则错误消息将变为
./gabrierr.tex:3: LaTeX Error: Illegal character in array arg.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.3 $\begin{array}{lrq}
你也可以看到什么LaTeX 正在处理文件。
有些错误很难发现,因为它们可能是由上面几行发生的事情触发的(缺少括号或缺少$
)。但在大多数情况下,错误位置非常精确。