使用不同的 Python 版本配置 Sublime Text 3 Anaconda 包

Configure Sublime Text 3 Anaconda Package with different Python version

我在 Mac OS X El Capitan 10.11.1 上使用 Sublime Text 3 (ST3),Anaconda 软件包使您能够 运行 Python ST3 内部。

Python的版本是运行ning,当我运行"build"命令是2.7.10.

我想改用 Python 3.5.0。

问题:如何配置 Anaconda 使用 Python 3.5 而不是 2.7,并确保这是 ST3 的全局设置?

sys.version 的当前输出是:

2.7.10 (default, Aug 22 2015, 20:33:39) [GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.1)]

我这样做的方法是使用 ST3 的内置项目设置。

  • 如果您还没有这样做,请转到菜单中的 Project >> Save Project As... 将当前工作区另存为项目。
  • 然后用Project >> Edit Project打开项目的设置。添加如下内容:

    {
        "build_systems":
        [
            {
                "cmd":
                [
                    "/path/to/bin/python",
                    "$file"
                ],
                "name": "build system name"
            }
        ]
    }
    

/path/to/bin/python 替换为您要使用的 Python 可执行文件的路径。

build system name 替换为您要调用此构建系统的名称(例如,Python 3.5.0)。

这种方法的一个好处是您可以添加多个构建系统并使用 super+shift+p 选择不同的构建系统,开始键入 'Build With',然后从构建系统列表中选择。

更新:

您可以通过转到 Tools >> Build System >> New Build System... 或使用 super+shift+p 并键入 'Build: New Build System' 来创建新的全局构建系统。将其提供的模板替换为:

{
    "cmd":
    [
        "/path/to/bin/python",
        "$file"
    ],
}

一定要像上面那样替换路径。当你保存时,它应该提示将它保存在你的用户设置目录中。将其命名为 Python-3.5.sublime-build 或适当的名称。您需要在构建时通过 selecting 或转到 Tools >> Build System >> Python-3.5.

来指定使用该构建

为了避免必须 select 构建系统,您的另一个选择是打开 ST3 版本的 Python 构建系统。在我的 OS X 机器上,我通过转到 /Applications/Sublime Text.app/Contents/MacOS/Packages 来完成此操作。在里面,您会看到一个名为 Python.sublime-package 的文件。这是一个压缩文件。您可以添加 .zip 后缀并解压缩以访问其 Python.sublime.build。该文件(对我来说)看起来像:

{
    "shell_cmd": "python -u \"$file\"",
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python",

    "variants":
    [
        {
            "name": "Syntax Check",
            "shell_cmd": "python -m py_compile \"${file}\"",
        }
    ]
}

您可以将 Python 的路径添加到 shell_cmd 的两个实例之前,或者在与 shell_cmd 相同的级别添加几个 "path": "/path/to/python/directory/", 的实例。

然后您需要重新压缩(并删除 .zip 扩展名)。

您可以覆盖 Sublime Text 3 包设置,方法是在 ST3 配置文件夹的子文件夹 Packages 中创建一个包名文件夹,并在那里创建同名配置文件。

用户配置文件夹:

  • Linux: ~/.config/sublime-text-3/Packages/
  • macOS:~/Library/Application Support/Sublime Text 3/Packages/
  • Windows: %APPDATA%/Roaming/Sublime Text 3/Packages/

在这种情况下,创建一个名为 Python 的子文件夹,然后将已安装的 Python.sublime-package 文件从 ST3 安装解压缩到此文件夹以更改 sublime-build 文件,或者只创建以下名为Python.sublime-build 在此文件夹中:

{
    "shell_cmd": "python3 -u \"$file\"",
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python",

    "variants":
    [
        {
            "name": "Syntax Check",
            "shell_cmd": "python3 -m py_compile \"${file}\"",
        }
    ]
}

通过这种方式,您无需更改任何安装文件,否则这些文件可能会被 ST3 的更新覆盖。它仍然是默认的 Python 构建目标。

您可以在 Preferences > Package Settings > Anaconda > Settings-User 上配置您的 anaconda 用户设置,方法是将您想要的 python 版本添加为 "python_interpreter": "python3",(或任何 python)。

E.G.

{
    "auto_formatting": true,
    "autoformat_ignore":
    [
        "E309",
        "E501"
    ],
    "pep8_ignore":
    [
        "E221",
        "E266",
        "E309",
        "E501",
        "E722",
        "W503"
    ],
    "anaconda_linter_phantoms": false,
    "anaconda_linter_underlines": false,
    "anaconda_linter_mark_style": "none",
    "display_signatures": false,
    "disable_anaconda_completion": false,
    "auto_complete_triggers":
    [{"selector": "source.python - string - comment - constant.numeric",
                  "characters": "."
                }
    ],
    "python_interpreter": "python3",
}