当给出 outputdir 选项时,minted 似乎不使用缓存

当给出 outputdir 选项时,minted 似乎不使用缓存

我正在构建源外的构建命令,因此我的构建命令如下所示

pdflatex -shell-escape --halt-on-error -output-directory="/tmp/build" book.tex

我一直使用 minted 进行语法高亮

\newcommand{\mintedoptions}{cachedir=/tmp/mint}
\usepackage[\mintedoptions]{minted}
\begin{document}
\inputminted{c}{program.c}
\end{document}

这一切都运行正常,但是当我尝试引入时\begin{minted}{c}...\end{minted}出现此错误:

! Package minted Error: Missing Pygments output; \inputminted was
probably given a file that does not exist--otherwise, you may need 
the outputdir package option, or may be using an incompatible build tool.

这个问题已解决,我已将修复应用于我的文档

\newcommand{\mintedoptions}{cachedir=/tmp/mint,outputdir=/tmp/build}

现在文档编译似乎正确,但铸造的缓存似乎没有被使用——编译非常慢,因为每次都要从头开始重新编译所有铸造的代码片段

我怎样才能指定 outputdir 并保持缓存处于使用状态?

以下是完整的 MWE

\documentclass[a4paper,10pt]{scrbook}
\newcommand{\mintedoptions}{cachedir=/tmp/mint2,outputdir=/tmp/xxx}
\usepackage[\mintedoptions]{minted}
\begin{document}
\inputminted{c}{program.c}
\begin{minted}{c}
int main ();
\end{minted}
\end{document}

编译为

mkdir /tmp/xxx && pdflatex -shell-escape --halt-on-error -output-directory="/tmp/xxx" mwe.tex

相关内容