% !TEX TS-program = pythontex 使用哪个 python?

% !TEX TS-program = pythontex 使用哪个 python?

在我的 MacBook 上,我尝试使用以下最小文档pythontex从 Textmate运行:% !TEX TS-program = pythontex

% !TEX TS-program = pythontex
\documentclass{article}
\usepackage[makestderr]{pythontex}

\begin{document}
\pyb{print('Python says hi!')}
\end{document}

我想使用 anaconda python 运行 pythontex,这是我的终端和 Textmate python 文件的默认 python。

如果我从终端运行pdflatex,,,一切都正常。pythontexpdflatex

然而,当我尝试在 Textmate 中排版上述文档时,该% !TEX TS-program = pythontex行似乎使用了 Apple 的 python,2.7.10 (default, Oct 23 2015, 18:05:06)这导致出现pygments未安装的错误。

问题:如何% !TEX TS-program = pythontex确定使用什么python?? 为什么它除了选择我的终端和文本伴侣默认设置外还选择了其他东西?

答案1

文本伴侣

我找到了这个页面http://blog.macromates.com/2014/defining-a-path/然后我进入 TextMate 的偏好设置,更改(或添加)设置,PATH如下图所示

在此处输入图片描述

启用 shell 转义并运行测试文件后

\documentclass{article}

\begin{document}
\immediate\write18{echo $PATH>\jobname.path}
\end{document}

.path创建的文件显示

/usr/local/bin:/Library/TeX/texbin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/<username>/Library/Application Support/TextMate/Managed/Bundles/Bundle Support.tmbundle/Support/shared/bin

但是,按下 Command-R 会显示与pythontex传递选项相关的错误

-interaction=nonstopmode-文件行错误

在我看来,这是 TextMate 的 LaTeX 包中的一个错误。

如果我删除该TS-program行并在 LaTeX 包首选项中启用“使用 latexmk”,则pythontex似乎可以进行正确的调用。

TeXShop

如果你使用pythontex.engineTeXShop 分发的脚本,它会设置

PATH=~/anaconda/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin:/Library/TeX/texbin

它还有一行注释掉

 #PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/texbin:/Library/TeX/texbin

很明显,两者都优先考虑/usr/bin/python,即 Apple 分发的版本(在我的系统上它是 2.7.5 版本,因为我在这台机器上仍然使用 10.9.5),当然,除非你在 中有 Python ~/anaconda/bin

如果要使用 Homebrew 或其他独立软件发行版附带的 Python 版本,则需要修改 的设置PATH。如果您的 Python 在 中/usr/local/bin,只需注释 的第一个设置PATH并取消注释第二个设置,但要移到/usr/local/bin之前/usr/bin

的位置pythontex.engine应该在

~/Library/TeXShop/Engines

答案2

您需要将 Anaconda 的二进制路径作为PATHTextMate 内部变量值的前缀。为此,打开TextMatePreferences…Variables并添加变量PATH

TextMate 偏好设置

然后从文档中删除该行% !TEX TS-program = pythontex。之后添加选项-shell-escape并检查捆绑包首Use Latexmk选项(Bundles→→ ):LaTeXPreferences

LaTeX 软件包 — 偏好设置

此后,“排版和视图(PDF)”和“观看文档”都应该按预期工作。

相关内容