TextMate使用TM_PYTHON
变量的值来查找Python解释器的路径。一个好的解决方案是利用TextMate的能力来定义变量(例如TM_PYTHON
基于每个项目):
打开一个新的或现有的TextMate项目(File -> New Project
或File -> Open
)
在项目列表侧栏中取消选择任何文件。
单击边栏中的Get Info
( )图标。Project Information
出现一个窗格。
单击+添加新变量。
在变量字段中输入TM_PYTHON,在值字段中输入所需python的完整路径(例如/usr/local/bin/python3.1
)。
关闭“信息”窗口并保存项目(File
-> Save Project As
)。
然后,您可以根据需要将文件添加到项目中,这些文件将通过TextMate Python捆绑包的“运行脚本”命令在选定的python下运行。例如,您可能想要保存一个Python 3
项目,以便在Python 3下运行即席脚本。对于较大的项目,无论如何,您都想为其创建一个单独的TextMate项目。
要更改以下全局使用的Python版本TextMate
:
在TextMate
菜单栏中,打开TextMate
->Preferences
点击Advanced
窗格
点击Shell Variable
选项卡
TM_PYTHON
在Variable
字段中输入,并在字段中输入python的完整路径Value
(可能是/usr/local/bin/python3.1
)
正如Alex指出的那样,您可以通过全局更改Python版本来破坏其他TextMate功能,因此按项目进行更改可能是更好的解决方案。
更新(2010-10-31):
对于某些项目,还有另一种方法可能更易于使用。的Python捆绑包中的Run
命令TextMate
似乎尊重正在运行的文件中的shebang行。因此,TM_PYTHON
除了修改,您可以通过添加第一行来指定要使用的解释器的路径,如下所示:
#!/usr/local/bin/python3.1
# sample code to show version
import sys
print(sys.version_info)
在许多情况下,您不希望 硬 连接绝对路径,而是通过普通的shellPATH
环境变量来管理使用。传统/usr/bin/env
上用于此目的。但是,在Windows Server 2003下运行时TextMate
,通常不会使用您的Shell配置文件,因此对PATH的任何更改都不会显示在其中,包括可能/usr/local/bin
或/opt/local/bin
您所希望的python3
命令所在的位置。为了解决这个问题,您可以将全局PATH
shell变量添加或修改为TextMate
->Preferences
(请参见上文),其值例如为/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
。然后,您可以使用更通用的shebang行,如下所示:
#!/usr/bin/env python3
(这一切似乎都适用于最新的vanillaTextMate
及其Python捆绑包:不保证包含较早版本或其他Python捆绑包。)