![如何退出 latexmk 构建?](https://linux22.com/image/445027/%E5%A6%82%E4%BD%95%E9%80%80%E5%87%BA%20latexmk%20%E6%9E%84%E5%BB%BA%EF%BC%9F.png)
在以下示例中,我不知道如何退出构建过程:
? ! Interruption.
^Cl.1917347403
? ! Interruption.
^Cl.1931472264
? x
! Interruption.
^Cl.2066204236
? X
^C! Interruption.
l.-1934605930
? Exit
! Interruption.
^Cl.-1836968160
?
我尝试过,,,,,,SIGINT
但都不起作用 。我必须手动终止该进程。eof
x
X
exit
SIGSTOP
我究竟做错了什么?
答案1
我运行latexmk -shell-escape
以查看选项是否为--shell-escape
或-shell-escape
,它将我带入此解释构建会话,如上所示。因为我在包含.tex
文件的目录中,所以它开始处理它们。
最后,我收到一条消息,说输入H
帮助,并在尝试后得到了以下回复H
:
Type <return> to proceed, S to scroll future error messages,
R to run without stopping, Q to run quietly,
I to insert something, E to edit your file,
H for help, X to quit.
经过在互联网上进行大量搜索并尝试这种模式后,我了解到了以下内容:
您已进入交互模式,*tex 会在出现任何错误时停止,让您有机会纠正错误。据我所知,所有旨在让您远离此模式的选项仅在您进入此模式之前适用。一旦进入此模式,您的选项就很有限,kill -9
或者类似情况。
- 使用
H
命令 - 该命令将显示有关遇到的错误的更多详细信息,建议您如何以交互方式修复它。 - 使用
Ctrl-C
- 这将基本上跳到下一个错误;你可能整天都在这里,然后它将从你的目录中的下一个文件开始。 - 用来
Q
安静运行 - 这将安静地运行当前文件的其余部分;您必须反复使用它才能完全退出。 - 使用
X
退出 - 这将退出处理当前文件;您必须反复使用它才能完全退出。
.tex
在一个有7个文件和1个文件的目录中.bib
,我需要进入X<return>
四次才能最终退出。
在这种交互模式下,你可以做更多的事情,这个答案有更多详细信息,但如果您只是想退出(您一开始就不想这样做,或者您无法使用交互式构建,或者您宁愿使用其他工具来修复错误),这可能是X
最好的选择,而不必手动终止它。请注意,之后您可能需要清理生成的文件。
如果你想避免进入此模式,但仍想latexmk
从命令行运行,Ubuntu 手册页显示几个选项:
-f Force latexmk to continue document processing despite errors. Normally, when
latexmk detects that LaTeX or another program has found an error which will not be
resolved by further processing, no further processing is carried out.
Note: "Further processing" means the running of other programs or the rerunning of
latex (etc) that would be done if no errors had occurred. If instead, or
additionally, you want the latex (etc) program not to pause for user input after an
error, you should arrange this by an option that is passed to the program, e.g., by
latexmk's option -interaction=nonstopmode.
-quiet Same as -silent
-silent
Run commands silently, i.e., with options that reduce the amount of diagnostics
generated. For example, with the default settings, the command "latex
-interaction=batchmode" is used for latex.
See also the -logfilewarninglist and -logfilewarninglist- options.
Also reduce the number of informational messages that latexmk generates.
To change the options used to make the commands run silently, you need to configure
latexmk with changed values of its configuration variables, the relevant ones being
$bibtex_silent_switch, $biber_silent_switch, $dvipdf_silent_switch,
$dvips_silent_switch, $latex_silent_switch, $makeindex_silent_switch, and
$pdflatex_silent_switch.
还有一个选项将传递给底层 *tex 引擎,可通过以下showextraoptions
选项发现:
-halt-on-error stop processing at the first error