使用 Tikz Externalize 时,AucTeX 11.90(Emacs 25.2)会出现以下错误而不是警告:
! Package tikz Warning: The key 'up to date check=md5' is impossible, there is no macro to compute MD5. Falling back to 'up to date check=diff'.
虽然我的 PDF 编译得很好,但我发现错误的错误相当烦人。如能帮助解决此问题,我们将不胜感激。
我的初始化文件中有以下自定义设置变量:
'(TeX-debug-bad-boxes t)
'(TeX-debug-warnings t)
'(TeX-display-help nil)
'(TeX-engine (quote xetex))
'(TeX-error-overview-open-after-TeX-run t)
'(TeX-source-correlate-mode t)
'(TeX-source-correlate-start-server t)
梅威瑟:
\documentclass[12pt]{article}
\usepackage{fontspec,realscripts}
\defaultfontfeatures{Ligatures=TeX,Scale=MatchLowercase}
\setmainfont[Scale=1]{Libertinus Serif}
\usepackage{tikz}
\usetikzlibrary{external} \tikzexternalize[prefix=tikz/]
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\draw (0,0) -- (1,0) -- (1,1) -- (0,1) -- (0,0);
\end{tikzpicture}
\end{figure}
\end{document}
%%% Local Variables:
%%% TeX-command-extra-options: "-shell-escape"
%%% End:
答案1
感叹号通常用于表示错误,而不是警告。例如,请考虑以下文档:
\documentclass{article}
\usepackage{does-not-exist}
\begin{document}
Hello world!
\end{document}
这会导致日志中出现以下错误:
! LaTeX Error: File `does-not-exist.sty' not found.
致命错误也以 开头!
(尝试使用纯 TeX 编译仅包含 : 的文档,会抛出\doesnotexist
两个以 : 开头的不同错误!
)。另请参阅https://en.wikibooks.org/wiki/LaTeX/Errors_and_Warnings#Error_messages TeXbook 还指出错误消息以感叹号开头。
因此,我认为这是 Ti 的一个不幸的决定钾Z 发出以感叹号开头的警告。其他 TeX 编辑器(我尝试过 AUCTeX、TeXstudio 和 Texworks)也存在同样的问题。这可以在 AUCTeX 中修复(但这非常棘手,因为有几种不同的错误消息以感叹号开头,并且 AUCTeX 的代码中有几处假定!
为开始错误消息),但发出符合长期习惯的警告将减轻前端开发人员的痛苦。
对于这种特殊情况,可以使用消息中建议的选项来避免警告:
\tikzexternalize[prefix=tikz/,up to date check=diff]