我试图设置ST3以使用在Windows 8.1上运行的Python的virtualenv。我通常使用SublimeREPL和我的全局Python安装来运行文件。但是,现在我使用了venvs,但是我无法运行任何东西。以下是我一直在尝试的内容:
我有一个父目录,其中包含virtualenvs
文件夹,然后有一个scripts
用于我的.py文件。我通常只是导航到\virtualenvs\venv\scripts\activate
并使用python解释器完成我的工作,但我希望能够构建文件而无需使用ST3和SublimeREPL来完成命令行工作。
我制作了一个如下所示的构建系统:
{
"shell_cmd": ["\code\virtualenvs\venv\scripts\python.exe", "-u", "$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
}
但是我甚至不确定这是否是我使用SublimeREPL所需要做的事情,因为我之前从未担心过Tools > Build Systems
只是Tools > SublimeREPL > Python > Python - RUN current file
。
如何更改构建系统或自定义SublimeREPL的RUN?对于测试用例,我在venv中安装了requests
模块,但在我的全局python安装中没有。从命令行导入它可以正常工作,但带有import requests
的.py文件会返回ImportError。
答案 0 :(得分:5)
"virtualenv":"D:/my_projects/scrapping_env",
要添加测试构建系统,请在.sublime-project设置中添加以下内容
"build_systems": [
{
"name": "Test",
"shell_cmd": "D:/my_projects/scrapping_env/Scripts/python py.test"
},
],
答案 1 :(得分:4)
ST3构建系统和SublimeREPL提供两种不同的功能。构建系统是您在使用像C这样的编译语言时通常会使用的。它允许您定义从源文件构建程序的方式。
您也可以使用Python构建系统。在这种情况下,它会为您编译当前打开的文件。
另一方面,SublimeREPL允许您在Sublime内运行终端会话,并且(除其他外)在该会话的上下文中评估文件。我建议你看看documentation for SublimeREPL and Python:
Python和Execnet集成都支持virtualenv。支持各种使用Python的方法,包括PDB和IPython。
对于可由SublimeREPL发现的virtualenv创建的环境,应在以下某个环境中创建或符号链接:
- 〜/ .virtualenvs默认为virtualenvwrapper
- 〜/ .venvs默认为venv
或者,可以在SublimeREPL配置文件中的“python_virtualenv_paths”中添加更多路径。