Pygmentize 无法在 OS X 上的 TexShop 中正确使用 minted 包

Pygmentize 无法在 OS X 上的 TexShop 中正确使用 minted 包

我在 mac OS X 10.11.1 上使用 TexShop,并尝试在我的 LaTeX 文档中输出一些 Python 代码。

以下是我想要制作的一份文档的示例:

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[francais]{babel}
\usepackage{minted}
\begin{document}

\begin{minted}{python}

    def __init__(self, x, y): 
        self.x=x
        self.y=y

\end{minted}

\end{document}

我的 LaTeX 编译命令是pdflatex --file-line-error --synctex=1 --shell-escape --interaction=nonstopmode

当直接从终端运行该命令时,它可以正常工作。但每当我尝试从 TexShop 编译文档时,我都会收到以下错误:

 sh: /Library/TeX/texbin/pygmentize: cannot execute binary file

我之前也遇到过这个错误:

sh: /Library/TeX/texbin/pygmentize: access denied

我已经安装了 Python、更新了软件包、安装了 pygmentize 并位于~/anaconda/bin/pygmentize,以及指向以下目录的符号链接/usr/local/bin//usr/local/texlive/2015/bin/x86_64-darwin//Library/Tex/texbin/

现在,我该怎么做才能让 Mint 发挥作用

顺便说一下,如果我运行这个测试文件

\catcode`:=\active
\def:{\par}

\parindent0pt\tt

\input|"echo $PATH"

\bigskip

Is there pygmentize?

\input|"which pygmentize"

\bye

我明白了

/Users/philippe/anaconda/bin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/Library/TeX/texbin
Is there pygmentize?
/Users/philippe/anaconda/bin/pygmentize

答案1

我有同样的问题我花了一段时间才意识到是 TeXShop 造成了所有问题。正如您之前提到的,您需要对pygmentizewithin的引用/Library/TeX/texbin,但创建符号链接而不是副本就足够了:

sudo ln -s "$(which pygmentize)" /Library/TeX/texbin/pygmentize

答案2

就我而言,我安装了 pygments,但后来我发现它与 python 3 版本有关,并且我相信 TexShop 正在尝试使用 python 2 版本。因此,我使用 brew 安装了 python 2,并使用 pip2 安装了 paints。成功了!

相关内容