在 Linux 上使用 minted 时,出现以下错误:
./out/master.out.pyg:2: Undefined control sequence.
\PYG #1#2->\FV@PYG
{#1}{\FancyVerbBreakStart #2\FancyVerbBreakStop }
l.2 ... \PYG{n+nn}{numpy} \PYG{k}{as} \PYG{n+nn}{np}
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
PDF 输出也很混乱:
我试着看看这个问题在这里,按照说明使用后cache=false
,我仍然遇到相同的错误 - 符号位置不对,语法高亮不起作用。在我当前和以前的计算机上的 WSL 上这不是问题,但是一旦我切换到 Linux,就会出现这个问题。
如果有人知道如何修复这个问题,那将非常有帮助。我不想再回到lstlistings
包里,因为处理起来很麻烦。
答案1
在对序言进行了大量修改后,我发现问题并不是出在代码上,minted
而是出在我所想的样式上。事实上,Pygments 样式中的大写错误导致了这个问题。
我逐行测试了序言,每当我设置样式时,奇怪的符号就会出现,否则就会立即消失。测试echo hello | pygmentize -P style=style
也清楚地表明这就是问题所在。
就我而言,我未能命名我的 Pygments 风格"stylename" : "stylename::ClassNameStyle"
。
话虽如此,我相信minted
如果给定的样式存在问题(例如未找到),则应该恢复到常规样式,这是另一天的问题。