【问题标题】:Using SublimeText with Python 3.4在 Python 3.4 中使用 SublimeText
【发布时间】:2015-02-12 18:15:41
【问题描述】:

我使用的是 Mac (OS X 10.10.2),想使用 SublimeText 而不是 IDLE。我的问题是我想使用 Python 3.4,而 SublimeText 使用我 Mac 上的 2.x Python。

我已经用谷歌搜索过,并尝试并尝试遵循指南,甚至是 on this website,但我不知所措,因为我对自己在做什么知之甚少。

我想要的只是一个能让我编写、运行、与 Python 3.4 交互的程序,而且我觉得通过一些调整我可以让 SublimeText 符合要求。

编辑:

对不起,我在花了几个小时搞乱 sublimetext 之后写了这个深夜,我的大脑是肉汁。

无论如何,我会尝试更具体。我正在运行安装了 SublimeText2 和 SublimeRepl 的 OS X 10.10.2。目前,ST2 正在运行 Python 2,但我想运行 3.4(我从 python.org 安装)和 SublimeREPL,这样我就可以用 ST2 完全替换 Python IDLE。

引用上面链接的线程:

第一个选项是将 Main.sublime-menu 文件复制到 您的本地用户配置文件夹,如果您已经有一个, 您将需要合并这两个内容。将所有python调用替换为 python3,并调整标题属性以提及 Python 3(例如 Python 3 - 运行当前文件)。

现在,当您通过 Cmd+Shift+P 启动命令启动器时(应该是 OSX 中的键盘快捷键,对吗?),然后您可以键入 Python 3 和 应该会弹出使用 python3 可执行文件的新命令。

基于此,看来我需要进入main.sublime-menu并将内容复制到我的“本地用户配置文件夹”中,但我不知道这是Preferences > Settings - User还是Preferences > Package Settings > SublimeREPL > Settings - User

这是我的main.sublime-menu。为了让 ST2 使用 python 3.4,需要将所有内容更改为上面引用中提到的 python3? [ { “id”:“工具”, “孩子们”: [{ "caption": "SublimeREPL", “助记符”:“r”, "id": "SublimeREPL", “孩子们”: [ {“标题”:“Python”, "id": "Python",

                 "children":[
                    {"command": "repl_open",
                     "caption": "Python",
                     "id": "repl_python",
                     "mnemonic": "p",
                     "args": {
                        "type": "subprocess",
                        "encoding": "utf8",
                        "cmd": ["python", "-i", "-u"],
                        "cwd": "$file_path",
                        "syntax": "Packages/Python/Python.tmLanguage",
                        "external_id": "python",
                        "extend_env": {"PYTHONIOENCODING": "utf-8"}
                        }
                    },
                    {"command": "python_virtualenv_repl",
                     "id": "python_virtualenv_repl",
                     "caption": "Python - virtualenv"},
                    {"command": "repl_open",
                     "caption": "Python - PDB current file",
                     "id": "repl_python_pdb",
                     "mnemonic": "d",
                     "args": {
                        "type": "subprocess",
                        "encoding": "utf8",
                        "cmd": ["python", "-i", "-u", "-m", "pdb", "$file_basename"],
                        "cwd": "$file_path",
                        "syntax": "Packages/Python/Python.tmLanguage",
                        "external_id": "python",
                        "extend_env": {"PYTHONIOENCODING": "utf-8"}
                        }
                    },
                    {"command": "repl_open",
                     "caption": "Python - RUN current file",
                     "id": "repl_python_run",
                     "mnemonic": "d",
                     "args": {
                        "type": "subprocess",
                        "encoding": "utf8",
                        "cmd": ["python", "-u", "$file_basename"],
                        "cwd": "$file_path",
                        "syntax": "Packages/Python/Python.tmLanguage",
                        "external_id": "python",
                        "extend_env": {"PYTHONIOENCODING": "utf-8"}
                        }
                    },
                    {"command": "repl_open",
                     "caption": "Python - IPython",
                     "id": "repl_python_ipython",
                     "mnemonic": "p",
                     "args": {
                        "type": "subprocess",
                        "encoding": "utf8",
                        "autocomplete_server": true,
                        "cmd": {
                            "osx": ["python", "-u", "${packages}/SublimeREPL/config/Python/ipy_repl.py"],
                            "linux": ["python", "-u", "${packages}/SublimeREPL/config/Python/ipy_repl.py"],
                            "windows": ["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"
                        }
                    }
                    }
                ]}
            ]
        }]
    }
]

我希望这更具体一点,我对此很陌生,对我到底在做什么只有最微弱的了解。非常感谢任何帮助,如果这还不够具体,请告诉我。谢谢!

【问题讨论】:

标签: python macos python-3.x sublimetext2 sublimerepl


【解决方案1】:

这就是custom build systems 的用途。这是我在不创建 .pyc 文件的情况下运行 python 脚本的系统:

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

cmd 是要运行的 bash 命令,因此您可以将 python 替换为 python3,或者您的 python 3 可执行文件的路径。如果要创建.pyc 文件,可以删除-B 参数。

将其保存在一个名为 python3.sublime-build 的文件中,并将该文件放入您的用户包中。

【讨论】:

    【解决方案2】:

    您需要在此文件中进行一些更改:Main.Sublime-menu。

    第一步:在终端中找到 / -iname 'Main.sublime-menu' 找出这个文件的存放位置。你会得到一大串目录,但你应该找到这个 /Library/Application Support/Sublime Text 3/Packages/SublimeREPL/config/Python/Main.sublime-menu。

    第二步:打开上面的 Main.sublime-menu 文件。仅在以“cmd”开头的行中将“python”更改为“python3”。然后保存并尝试。

    希望你会成功。

    【讨论】:

      猜你喜欢
      • 2014-05-20
      • 1970-01-01
      • 1970-01-01
      • 2021-02-11
      • 2018-09-23
      • 2015-06-25
      • 2014-09-30
      • 2015-09-22
      • 1970-01-01
      相关资源
      最近更新 更多