LaTeX 错误消息违规文件名和行号

LaTeX 错误消息违规文件名和行号

我手头有一个半坏的 LaTeX 项目。可以通过忽略大量错误来编译它,得到一个基本可以接受的结果。

但是现在我想修复错误,但是错误消息似乎没有显示文件名或行号?

主要的 TeX 文件名为PROGI_ProjektnaDokumentacija.tex,其他的如下:

Arhitektura.tex
Dnevnik_promjena_dokumentacije.tex
Dodatak.tex
Implementacija.tex
Literatura.tex
Opis_projektnog_zadatka.tex
Specifikacija_programske_potpore.tex
Zakljucak.tex

我使用或来编译它pdflatex PROGI_ProjektnaDokumentacija.texlatexmk -pdf PROGI_ProjektnaDokumentacija.tex但必须按回车键忽略许多错误)。

当我运行时latexmk -pdf PROGI_ProjektnaDokumentacija.tex,会产生大量的输出,这是直到第一个错误为止的输出的结束:

[6] (/usr/share/texmf-dist/tex/latex/kpfonts/ts1jkp.fd)

Package fancyhdr Warning: \headheight is too small (12.0pt): 
(fancyhdr)                Make it at least 14.49998pt, for example:
(fancyhdr)                \setlength{\headheight}{14.49998pt}.
(fancyhdr)                You might also make \topmargin smaller to compensate:

(fancyhdr)                \addtolength{\topmargin}{-2.49998pt}.

[7]

! LaTeX Error: There's no line here to end.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.91 
     
?

同时,这是PROGI_ProjektnaDokumentacija.log文件的结尾:

Overfull \hbox (3.47267pt too wide) in paragraph at lines 47--47
[][]\OT1/jkp/m/n/12 10.11.2022[] 
 []


Overfull \hbox (3.47267pt too wide) in paragraph at lines 47--47
[][]\OT1/jkp/m/n/12 11.11.2022[] 
 []


Overfull \hbox (3.47267pt too wide) in paragraph at lines 47--47
[][]\OT1/jkp/m/n/12 11.11.2022[] 
 []


Overfull \hbox (3.47267pt too wide) in paragraph at lin

是的,最后一行突然结束。

如何诊断?

答案1

-file-line-errorSkillmon 用选项为我指明了正确的方向pdflatex。这个选项本身似乎没有任何效果,但是后来我决定查看手册 ( man pdflatex),这让我有了尝试这个选项的想法-halt-on-error。这是成功的(启动 后不需要交互pdflatex):

$ pdflatex -file-line-error -halt-on-error PROGI_ProjektnaDokumentacija.tex 
This is pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022/Arch Linux) (preloaded format=pdflatex)
 restricted \write18 enabled.
entering extended mode
(./PROGI_ProjektnaDokumentacija.tex
LaTeX2e <2021-11-15> patch level 1
L3 programming layer <2022-04-10>
(/usr/share/texmf-dist/tex/latex/base/report.cls
Document Class: report 2021/10/04 v1.4n Standard LaTeX document class
(/usr/share/texmf-dist/tex/latex/base/size12.clo))


[...]


[7]

./Opis_projektnog_zadatka.tex:91: LaTeX Error: There's no line here to end.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.91 
     
./Opis_projektnog_zadatka.tex:91:  ==> Fatal error occurred, no output PDF file
 produced!
Transcript written on PROGI_ProjektnaDokumentacija.log.

当使用 LuaTeX 而不是 PDFTeX 时,一个问题是 LuaTeX 的命令行选项似乎存在错误,因为它似乎不支持某些没有额外前缀的选项。因此,我使用和-重复了相同的选项:---

lualatex -file-line-error --file-line-error -halt-on-error --halt-on-error PROGI_ProjektnaDokumentacija.tex

latexmk

latexmk -g -gg -lualatex -file-line-error --file-line-error -halt-on-error --halt-on-error PROGI_ProjektnaDokumentacija.tex

Michael Fraiman 的评论也很有帮助:

还要注意,这[7]意味着第 7 页已经生成,所以错误出现在第 8 页的某个地方。

相关内容