使用 minted 无需无限制的 shell 逃逸

使用 minted 无需无限制的 shell 逃逸

minted软件包要求我启用不受限制的 shell 转义 ( -shell-escape)。这有点危险:这意味着恶意 latex 文件可以运行任意命令并覆盖文件系统上的任意文件。

有没有办法在不启用不受限制的 shell 转义的情况下使用minted?我知道它需要调用 Pygmentize 程序,它会调用ifplatform运行unameshell 命令的程序。我注意到有一个“受限 shell 转义”功能;有没有办法在受限 shell 转义的情况下使用minted。或者还有其他方法可以降低风险?

答案1

最近发布的版本有一个finalizecache选项,可以以不太瞬时的形式保存缓存,然后您可以更改文档以使用该frozencache选项,从那时起--shell-escape就不再需要它,它只使用缓存中现成的文件。

这意味着您仍然需要 shell-escape 来创建突出显示,但您可以以无需访问 shell 即可运行的形式将文档提供给某人。

相关内容