我的问题与如何在编译时忽略 latex 错误?。我有一个使用包的文档(用于测试目的)mathbx
。不幸的是,我的 Miktex 发行版很旧(但我对它很满意)。在编译某些文件(用于测试目的)时,我收到缺少此包的错误。我尝试使用上述问题的建议,pdflatex -interaction nonstopmode -halt-on-error -file-line-error filename.tex
但它不起作用。它说
! LaTeX Error: File `mathabx.sty' not found.
Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: sty)
Enter file name:
:12: Emergency stop
No pages of output.
Transcript written on filename.log.
如何在编译时忽略所有 pdflatex 缺少包错误?
答案1
\IfFileExists
可用于仅在包文件存在时加载包:
\IfFileExists{mathabx.sty}{\usepackage{mathabx}}{%
% place for definitions to simulate the missing package, example:
\providecommand*{\widecheck}{\check}%
}
如果包不存在,则可以在第三个参数中提供包定义的宏,\IfFileExists
或者\providecommand
可以将其用于一些虚拟定义,以防止/减少由于缺少宏定义而导致的进一步错误。