【问题标题】:Using virtualenv in sublime text project that works for different users在适用于不同用户的 sublime 文本项目中使用 virtualenv
【发布时间】:2013-11-26 17:40:56
【问题描述】:

我正在使用 virtualenvs 在 Sublime Text 3 中编辑一个 Python 项目。我想定义一个构建步骤,通过 virtualenv 中的 setup.py 运行单元测试。

挑战在于,我希望能够将 foo.sublime-project 提交到版本控制中,并使其无需修改即可适用于所有人。假设我们在项目中强制使用 virtualenvwrapper,以便 virtualenv 在每台机器上的已知位置 (~/.virtualenvs/foo)。

有什么方法可以在不硬编码完整路径的情况下配置 sublime-project 文件?为了让它在我的机器上工作,我这样做:

{
    ...
    "build_systems":
    [
        {
            "name": "Unit tests",
            "cmd": ["/Users/lorin/.virtualenvs/foo/bin/python", "setup.py", "test"]
        }
    ]
}

理想情况下,我会这样做:

"cmd": ["~/.virtualenvs/foo/bin/python", "setup.py", "test"]

但 Sublime 似乎无法将 ~ 解析到用户的主目录中。

编辑:我们使用 git 进行版本控制

【问题讨论】:

  • 配置文件是JSON还是Python代码?
  • 啊,它们是 JSON。如果是 Python,您可以使用 os 模块...
  • @alko 我正在使用 git。我将把它添加到问题中。

标签: python virtualenv sublimetext3


【解决方案1】:

我不熟悉 Sublime,因此无法建议直接处理此任务的方法。

作为一种解决方法,您可以设置一个 post-receive 挂钩来配置您的包。您可以在版本控制下拥有一个示例配置文件,并在 bash 中使用 pwd 或在 python 中使用 os.path.expanduser 构建真实配置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-25
    • 2018-06-19
    • 2017-11-02
    • 1970-01-01
    • 1970-01-01
    • 2018-06-07
    • 2016-03-17
    • 1970-01-01
    相关资源
    最近更新 更多