【问题标题】:How to run Python 3 in Sublime 2 REPL Mac如何在 Sublime 2 REPL Mac 中运行 Python 3
【发布时间】:2013-12-25 22:33:53
【问题描述】:

我的问题如下,我安装了 sublime 2 和 sublime repl 插件一切正常,我唯一需要的是更改在内置控制台的 sublimerepl 上运行的 python 版本。我的意思是,我有 python 2.7.5(预先安装了 maveriks)在 sublime 中运行良好(通过 sublimerepl),我已经通过 python.org 的安装程序安装了 python 3.3.3,我需要使用,我想在sublimerepl控制台上运行这个版本的python但是不知道怎么做。

我知道有 sublime 的替代品,但没有一个比 sublime 更漂亮。

有人可以帮我解决这个问题吗?我在整个互联网上搜索过,找不到任何有用的东西。

顺便说一句,如果我使用终端 python 3.3.3 工作正常(终端>'python3'),我知道这是可能的,因为我的一个朋友让它工作了,我像他一样安装了我的,但我的不工作.

【问题讨论】:

    标签: python macos sublimetext read-eval-print-loop sublimerepl


    【解决方案1】:

    @poke 的answer 很好,但有一些细节需要纠正,我想我只是输入自己的答案,因为它们对于 cmets 来说太长了。首先,.sublime-menu 条目应命名为 Packages/User/SublimeREPL/config/Python/Main.sublime-menu(将文件命名为其他名称不会将其集成到菜单系统中,它必须是 Main.sublime-menuAFAIK)。此外,对于您的系统,您可能应该将"cmd" 行更改为指向/Library/Frameworks/Python.framework/Versions/3.3/bin/python3,这是python.org 安装所在的位置。因此,例如,它在哪里说

    "cmd": ["python", "-i", "-u"],
    

    改成

    "cmd": ["/Library/Frameworks/Python.framework/Versions/3.3/bin/python3", "-i", "-u"],
    

    祝你好运!

    【讨论】:

    • 您对Main.sublime-menu 的看法是正确的,谢谢!但是,如果 OP 可以从终端使用python3 运行 Python 3,那么它很可能在路径中,因此您不需要指定完整路径。
    • @poke - OS X 上的问题之一是从 Dock 启动的程序看到的 $PATH 默认情况下是 /usr/bin:/usr/sbin:/bin:/sbin(小牛队可能已经添加了 /usr/local/bin),而他们没有'看不到 shell 的 $PATH 设置。因此,我认为最好指定确切的路径。当然,总是可以创建一个符号链接到/usr/bin/python3...
    • 我只在 ./Packages/Default/Main.sublime-menu 找到它,但没有 Python 的参考。 (2.0.2 构建 2221)
    • @huggie - 这是Packages/SublimeREPL/config/Python/Main.sublime-menu
    • 知道了,谢谢。它是一个单独的包,默认情况下不附带 sublime。
    【解决方案2】:

    不管你喜不喜欢,但解释器实际上是硬编码到插件中的。对于 Python,这发生在 /config/Python/Main.sublime-menu

    我认为你有两种方法可以解决这个问题:

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

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

    2. 第二个选项是将插件克隆到您的插件目录中,并以与第一个选项相同的方式修改原始 Python Main.sublime-menu 文件。这将摆脱 Python 2 命令,但也会阻止您从通过 PackageManager 发布的原始存储库获取更新;所以你必须自己进行更新。

    【讨论】:

    • 非常感谢你们! poke 和 MattDMoo 现在终于运行 python 3.3.3。
    • @jbernardo 不客气。请注意,除了接受一个答案外,您还可以upvote多个答案,如果他们帮助您解决了您的问题,以表达您的感激之情。
    【解决方案3】:

    我的解决方法是这样的:

    打开文件: /Users/ricardomartinez/Library/Application Support/Sublime Text 3/Packages/SublimeREPL/config/Python/Main.sublime-menu

    替换下面的行:

    "cmd": ["python", "-i", "-u", "-m", "pdb", "$file_basename"],
    

    与:

    "cmd": ["/Library/Frameworks/Python.framework/Versions/3.5/bin/python3", "-i", "-u"],
    

    请注意,有必要指定 python3 exec 的整个路由,因为我在另一个问题中读到 Sublime 不读取 ~/.bash_profile

    希望有所帮助!

    【讨论】:

      【解决方案4】:

      我建议将目录更改为

      /Library/Frameworks/Python.framework/Versions/Current/bin/python3

      这样每当你更新 python 时,SublimeREPL 总是会得到更新的版本。

      【讨论】:

        猜你喜欢
        • 2021-06-23
        • 1970-01-01
        • 2014-04-22
        • 1970-01-01
        • 2014-08-10
        • 2014-08-05
        • 2023-03-07
        • 2013-09-20
        • 2018-03-22
        相关资源
        最近更新 更多