如何将 Latex 错误追溯到导致该错误的包?

如何将 Latex 错误追溯到导致该错误的包?

这个问题可能类似于如何有效地追踪 LaTeX 错误?但事实并非如此。或者至少,建议的补救措施对我没有任何帮助。

我有一篇文本,上次编译是在 latex 发行版升级之前。该文本位于 Overleaf 中,它在 2016 年末进行了重大升级。我没有更改文档中的任何内容,但现在它无法编译,并出现一个毫无意义的错误,它指向空白行,如果尝试剖析文档,它会移动到文档内的其他(同样毫无意义的)位置。从头开始编译没有帮助。

我在这里省略了问题的确切性质,因为我已经给 Overleaf 支持人员发了电子邮件。我并不急于写这篇论文,但是我可能是在其他情况下,在这种情况下,我现在就会发疯。

我想知道的是,如何有效地将错误追溯到导致此错误的源包。这是作者在相关问题中提出的问题,但没有一个答案能够解释作者真正想知道的内容 - 即,我如何回到编译/包含图中?

这应该不是不可能的任务。如果 LaTeX 抱怨某个命令,那么它应该在某个地方定义,在我的文档中包含的 10 多个包中。我如何找到它们的位置,而无需单独下载它们的源代码并进行某种非常简单的文本搜索?

天啊,为什么 LaTeX 不指定“调用堆栈”?它知道有问题的命令来自哪里,而我不知道。

有没有什么好的 LaTeX “调试器”?

编辑:一些附加信息。我使用跟踪包获取了详细的日志,然后,我发现了有问题的部分:

\put (#1,#2)#3->\@killglue \raise #2\unitlength \hb@xt@ \z@ {\kern #1\unitlengt

请注意,最后一个 \unitlengt 拼写错误,由于我的错误是抱怨 \kern,所以我有一个错误。但我不知道它来自哪里。

相关内容