You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows10下MiKTeX+minted编译出现FancyVerb Error求助

排查FancyVerb错误的遗漏配置点

我来帮你梳理可能漏掉的配置项——既然这个TeX文件在其他电脑能正常编译,问题肯定出在你Windows环境下的某个细微配置差异上:

1. 确认Minted与Fancyvrb宏包已正确安装

你用Pygments做代码高亮,应该是配合minted宏包使用的,而FancyVerb错误直接和fancyvrb包相关。MiKTeX默认是按需安装,但偶尔会因网络或权限问题导致安装失败:

  • 打开MiKTeX控制台,切换到「Packages」标签,分别搜索minted和fancyvrb,确保两个包都已安装。如果未安装,手动点击安装即可。

2. 验证Python路径是否被TexStudio正确识别

就算你把Python路径加到了系统环境变量,Windows有时候会有路径优先级或32/64位冲突的问题,导致TexStudio读不到:

  • 先打开命令提示符(CMD),输入python --version,看是否能返回3.6.4的版本信息。如果提示“找不到命令”,说明环境变量没生效,重启TexStudio甚至电脑试试(Windows修改环境变量后,需要重启应用才能加载新配置)。
  • 如果CMD里能正常识别Python,但TexStudio不行,可以手动在TexStudio里指定路径:打开「选项」→「配置TexStudio」→「构建」,选中你用的编译器(比如XeLaTeX),把命令里的python替换成Python的绝对路径,比如C:\Python36\python.exe(根据你的实际安装路径调整)。

3. 检查-shell-escape参数的添加位置是否正确

有时候参数加错地方,编译器根本没接收到:

  • 打开TexStudio的「选项」→「配置TexStudio」→「构建」,选中你使用的编译器,在「命令」栏里确认-shell-escape是加在编译器命令的正确位置。比如XeLaTeX的正确命令应该是:
    xelatex.exe -synctex=1 -interaction=nonstopmode -shell-escape %.tex
    
  • 注意别把参数放在%.tex后面,那样编译器不会识别这个参数。

4. 排查文件路径与权限问题

Windows的权限限制或特殊字符路径可能导致Pygments无法生成临时文件:

  • 把你的.tex文件移到纯英文、无空格的路径下试试(比如D:\TeX_Files\test.tex),Minted和Pygments对含中文、特殊字符的路径兼容性很差。
  • 右键TexStudio,选择「以管理员身份运行」再编译,有时候权限不足会导致无法创建高亮代码的临时文件,进而触发FancyVerb错误。

5. 降级Pygments版本适配Python3.6.4

Python3.6.4是比较老的版本,最新版的Pygments可能已经不再支持它:

  • 打开CMD,输入pip install pygments==2.5.2(这个版本和Python3.6兼容性很好),降级Pygments后再编译试试。版本不兼容会导致Pygments调用失败,间接引发FancyVerb错误。

6. 检查MiKTeX的Shell Escape权限设置

MiKTeX默认可能限制了Shell Escape的使用:

  • 打开MiKTeX控制台,切换到「Settings」→「Commands」,找到「Allow shell escape」选项,确保它设置为「Always」或者「For trusted commands only」(如果你的脚本是可信的)。要是设成了「Never」,就算加了-shell-escape参数也没用。

内容的提问来源于stack exchange,提问作者Alexander Mayr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 07:04:20