我在 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 造成了所有问题。正如您之前提到的,您需要对pygmentize
within的引用/Library/TeX/texbin
,但创建符号链接而不是副本就足够了:
sudo ln -s "$(which pygmentize)" /Library/TeX/texbin/pygmentize
答案2
就我而言,我安装了 pygments,但后来我发现它与 python 3 版本有关,并且我相信 TexShop 正在尝试使用 python 2 版本。因此,我使用 brew 安装了 python 2,并使用 pip2 安装了 paints。成功了!