日志文件错误

日志文件错误

您是否知道除了紧急停止之外的任何其他错误,该错误不包含有关日志文件中收到错误的行号的信息?

答案1

我认为,如果在处理文件时发生所有 tex 错误(包括紧急停止),则所有 tex 错误都包含这样的行号。

例如,此文档在尝试输入不存在的文件后紧急停止

\documentclass{article}

\begin{document}

\batchmode \input zzzzzzzzz
\end{document}

日志显示错误发生在第 5 行(l.5

! Emergency stop.
l.5 \batchmode \input zzzzzzzzz

*** (job aborted, file error in nonstop mode)

读取文件后会出现不显示行号的错误,通常是由于\end{document}latex 中缺少行号造成的。

该文档显示的<*>不是行号,而是表示当 tex 未处于批处理模式时从终端读取时出现的错误。

\documentclass{article}

\begin{document}

\batchmode

生成日志

! Emergency stop.
<*> file

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

如果你没有处于批处理模式,TeX 正在接受终端输入,那么任何可能会产生 TeX 错误,<*>而不是显示行号,如以下终端会话所示

$ latex
This is pdfTeX, Version 3.14159265-2.6-1.40.18 (TeX Live 2017) (preloaded format=latex)
 restricted \write18 enabled.
**\relax
entering extended mode
LaTeX2e <2017-04-15>
Babel <3.12> and hyphenation patterns for 84 language(s) loaded.

*\zzzzz
! Undefined control sequence.
<*> \zzzzz

? 

*\def\zzz}
! Missing { inserted.
<*> \def\zzz}

? x
No pages of output.
Transcript written on texput.log.

相关内容