如何使用Anaconda的解释器设置SublimeREPL?

问题描述 投票:12回答:3

我喜欢Sublimetext中的Python,但我真正需要的是一种用于数据探索的交互模式。但是,对于我一生来说,我无法让SublimeREPL使用Anaconda的解释器。任何想法将不胜感激。

我已在SublimeREPL.settings.user文件中添加了以下内容,但没有任何作用:

{
    "default_extend_env": {"PATH": "Users/anton/anaconda/envs/py3k/bin/python3:{PATH}"}
}
python sublimetext anaconda
3个回答
16
投票

Packages/User文件夹中,创建具有以下内容的SublimeREPL/config/Python/Main.sublime-menu

[
    {
        "id": "tools",
        "children":
        [{
            "caption": "SublimeREPL",
            "mnemonic": "r",
            "id": "SublimeREPL",
            "children":
            [
                {
                    "caption": "Python",
                    "id": "Python",

                    "children":[
                        {
                            "command": "repl_open",
                            "caption": "Python - Anaconda",
                            "id": "repl_python",
                            "mnemonic": "p",
                            "args": {
                                "type": "subprocess",
                                "encoding": "utf8",
                                "cmd": ["/path/to/Anaconda/python", "-i", "-u"],
                                "cwd": "$file_path",
                                "syntax": "Packages/Python/Python.tmLanguage",
                                "external_id": "python",
                                "extend_env": {"PYTHONIOENCODING": "utf-8"}
                            }
                        },
                        {
                            "command": "repl_open",
                            "caption": "IPython - Anaconda",
                            "id": "repl_python_ipython",
                            "mnemonic": "p",
                            "args": {
                                "type": "subprocess",
                                "encoding": "utf8",
                                "autocomplete_server": true,
                                "cmd": ["/path/to/Anaconda/python", "-u", "${packages}/SublimeREPL/config/Python/ipy_repl.py"],
                                "cwd": "$file_path",
                                "syntax": "Packages/Python/Python.tmLanguage",
                                "external_id": "python",
                                "extend_env": {
                                    "PYTHONIOENCODING": "utf-8",
                                    "SUBLIMEREPL_EDITOR": "$editor"
                                }
                            }
                        }
                    ]
                }
            ]
        }]
    }
]

"cmd"行中,将/path/to/Anaconda/python更改为要使用的python可执行文件的实际路径。如果您使用的是Windows,请使用单个/作为路径分隔符,或使用两个\\

c:/Anaconda/bin/python.exe
# or
c:\\Anaconda\\bin\\python.exe

保存文件,您现在应该具有Tools -> SublimeREPL -> Python -> Python - AnacondaIPython - Anaconda菜单选项,才能使用Anaconda解释器启动REPL。如果您安装了多个版本的Python(例如2.7和3.3),则可以复制children内容并适当地更改captioncmd路径。


7
投票

警告:这是一个古老的问题,可以接受的答案可以使您的问题消失,它并不能直接回答您的问题。 (我会对此发表评论,但我没有足够的声誉。)

您的用户设置行不起作用的原因是,您指定的路径不正确。在Users之前不包含斜杠,因此它是相对路径而不是绝对路径,并且还提供了Python二进制文件的完整路径,而不是包含二进制文件的目录。重写您必须执行的操作:

{
    "default_extend_env": {"PATH": "/Users/anton/anaconda/envs/py3k/bin:{PATH}"}
}

应解决您的问题。此外,我认为最好的做法是将Default SublimeREPL设置文件的内容复制到用户设置文件,然后在末尾添加default_extend_env行。


0
投票

我按照可接受的答案进行了操作,但是看到两个选项变灰了:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.