Mac OS 安装 pygments 和 minted 后 LaTex 出现 pygmentize 错误如何解决

Mac OS 安装 pygments 和 minted 后 LaTex 出现 pygmentize 错误如何解决

我目前正在尝试解决通过 minted 包在 LaTex 文档中输出 Python 代码的问题。最初,我遇到了“shell-escape flag”错误的问题,解决后,出现了“catchfile”错误。我最终通过删除文档名称中的空格解决了这个问题,但现在我被“Pygmatize”错误困住了,我不知道该怎么办。

我在网上查找了其他人过去做过的事情,并尝试做同样的事情,但无济于事。在安装 pips 之后,我从终端安装了 pygments - 我可以在终端中检查版本,它显示我使用的是 2.4.2 版本。我还安装了 minted,可以使用 finder 找到文件夹。我创建了 /~Library/texmf/tex/latex 树,并尝试将相关的 minted.sty 文件放入其中,以便 LaTex 可以找到/读取该文件。我已检查是否已通过 TeX Live Utility 安装了 minted(已安装)。

我不知道接下来该做什么。LaTex 仍然无法编译我的文档,并且仍然给我“Pygmatize”错误。我花了很长时间试图在这里找到解决方案,只想让这个文档能够编译。

我将非常感激任何对此提供的帮助。

答案1

这是 2022 年 4 月使用 Python 3.9 和 MacTeX 2022 的配方。YMMV。

  • 为您最喜欢的 Python 版本安装一个虚拟环境(python -m venv ~/.py39venv)。
  • 切换到新的 venv( source ~/.py39venv/bin/activate)。
  • 安装 pygments(pip install pygments)。
  • 确认最后pip安装的命令pygmentizewhich pygmentize应该指向~/.py39venv/bin/pygmentize)。

从那时起:

  • 切换到新的 venv( source ~/.py39venv/bin/activate)。

  • 写一些 latex + 代码:

    \documentclass{文章}

    \usepackage{minted}

    \开始{文档}

    \开始{minted}{c}

    int 主要() {

     printf("hello, world");
     return 0;
    

    }

    \end{铸造}

    \结束{文档}

并运行 pdflatex ( pdflatex -shell-escape hello)。

答案2

在一些帮助下我似乎找到了解决方案:

我刚刚将“pygmentize”可执行文件从 /Library/Frameworks/Python.framework/Versions/2.7/bin 复制并粘贴到 /usr/local/bin,现在它似乎运行良好。

相关内容