Sublime Text 4 中的 Virtualenvs
Virtualenvs in Sublime Text 4
我有不同的 virtualenv,并且能够指定每个项目使用哪个 virtualenv 我在 Sublime Text 3 中使用了包 Virtualenv (https://packagecontrol.io/packages/Virtualenv)。直到通过更新的那一天我成为 Sublime Text 4 的所有者。Virtualenv 包停止工作(它只能与 Sublime Text 3 一起使用)。
我现在用另一种方式管理 Sublime Text 4 中的 virtualenv。我通过 Tools/Build System
使用 virtualenv。我 运行 我的脚本直接没有离开 Sublime 就像包 Virtualenv 一样。要为现有的 virtualenv 构建新的构建系统,我首先 运行 Tools/Build System/New Build System
并在新打开的文件中粘贴:
{
"shell_cmd": "C://python_projects/my_project/env/Scripts/python -u \"$file\"",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}
在此之后,我将其保存在目录 User
中的项目名称(此处 my_project_python
)下。它创建一个名为 my_project_python.sublime-build
的新文件(由构建系统名称后跟 .sublime_build
组成)。这样做之后,我转到 Tools -> Build System
,我可以看到一个新选项 my_project_python
。不同的 virtualenv 仅在路径 C://python_projects/my_project/env/Scripts/python
和文件名 .sublime-build
.
上有所不同
这很好,但是当我们有大量具有不同 virtualenv 的文件夹时,Tools -> Build System
中有这么多名称可能会有点令人沮丧。我认为 Virtualenv 包可以更优雅地管理 virtualenv。
所以我想问问社区是否有另一个像 Virtualenv 这样的包可以在 Sublime Text 4 中工作?也许有人有办法 运行 Sublime Text 4 中的 Virtualenv 包?
ST3有Virtualenv包,可以降级。目前它不适用于 ST4 (issue)。
您可以为每个项目指定构建系统:
- 创建 sublime 项目或将现有目录添加到 sublime 项目
- 转到项目 -> 编辑项目
- 添加这个并保存在你项目的根目录中:
{
"build_systems":
[
{
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", # highlight line on error
"name": "<proj-name>",
"selector": "source.python",
"shell_cmd": "/path/to/virtualenv/.venv/bin/python -u \"$file\""
},
],
"folders":
[
{
"path": "."
},
],
}
- 如果您不想将
.sublime-project
文件存储在项目的根目录中,请在以下位置指定项目根目录的完整路径:"path": "/path/to/proj"
- 不过,您需要在 运行 脚本之前选择构建系统。在这种情况下,它将是
- 您可以通过编程方式生成此配置。
项目配置的更多选项 here。
如果你发现适合 venvs 的东西,请联系我)
我有不同的 virtualenv,并且能够指定每个项目使用哪个 virtualenv 我在 Sublime Text 3 中使用了包 Virtualenv (https://packagecontrol.io/packages/Virtualenv)。直到通过更新的那一天我成为 Sublime Text 4 的所有者。Virtualenv 包停止工作(它只能与 Sublime Text 3 一起使用)。
我现在用另一种方式管理 Sublime Text 4 中的 virtualenv。我通过 Tools/Build System
使用 virtualenv。我 运行 我的脚本直接没有离开 Sublime 就像包 Virtualenv 一样。要为现有的 virtualenv 构建新的构建系统,我首先 运行 Tools/Build System/New Build System
并在新打开的文件中粘贴:
{
"shell_cmd": "C://python_projects/my_project/env/Scripts/python -u \"$file\"",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python"
}
在此之后,我将其保存在目录 User
中的项目名称(此处 my_project_python
)下。它创建一个名为 my_project_python.sublime-build
的新文件(由构建系统名称后跟 .sublime_build
组成)。这样做之后,我转到 Tools -> Build System
,我可以看到一个新选项 my_project_python
。不同的 virtualenv 仅在路径 C://python_projects/my_project/env/Scripts/python
和文件名 .sublime-build
.
这很好,但是当我们有大量具有不同 virtualenv 的文件夹时,Tools -> Build System
中有这么多名称可能会有点令人沮丧。我认为 Virtualenv 包可以更优雅地管理 virtualenv。
所以我想问问社区是否有另一个像 Virtualenv 这样的包可以在 Sublime Text 4 中工作?也许有人有办法 运行 Sublime Text 4 中的 Virtualenv 包?
ST3有Virtualenv包,可以降级。目前它不适用于 ST4 (issue)。 您可以为每个项目指定构建系统:
- 创建 sublime 项目或将现有目录添加到 sublime 项目
- 转到项目 -> 编辑项目
- 添加这个并保存在你项目的根目录中:
{
"build_systems":
[
{
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", # highlight line on error
"name": "<proj-name>",
"selector": "source.python",
"shell_cmd": "/path/to/virtualenv/.venv/bin/python -u \"$file\""
},
],
"folders":
[
{
"path": "."
},
],
}
- 如果您不想将
.sublime-project
文件存储在项目的根目录中,请在以下位置指定项目根目录的完整路径:"path": "/path/to/proj"
- 不过,您需要在 运行 脚本之前选择构建系统。在这种情况下,它将是
- 您可以通过编程方式生成此配置。
项目配置的更多选项 here。
如果你发现适合 venvs 的东西,请联系我)