【问题标题】:How to create a keyboard shortcut for SublimeREPL如何为 SublimeREPL 创建键盘快捷键
【发布时间】:2013-10-11 11:56:43
【问题描述】:

我是 Mac OS 上的 Sublime Text 2 的新手。 我安装了 SublimeREPL 包。

是否可以创建键盘快捷键来使用 SublimeREPL 运行文件?

更准确地说,这是一个屏幕截图。我想避免浏览此菜单并使用键盘快捷键快速运行。

【问题讨论】:

    标签: macos sublimetext sublimerepl


    【解决方案1】:

    您可以使用 Sublime 键绑定为 屏幕截图中的命令设置键盘快捷键

    1. 打开 Sublime。

    2. 转到 首选项 > 键绑定 - 用户

    3. 将这些行添加到括号之间的打开文件中:

      { "keys": ["ctrl+alt+b"], "command": "run_existing_window_command", "args":
      {
          "id": "repl_python_run",
          "file": "config/Python/Main.sublime-menu"
      }}
      
    4. 保存。

    完成了!您可以键入任何组合键而不是 "ctrl+alt+b",但请确保它不是由 Sublime 本身保留的(检查 Preferences > Key Bindings - Default

    注意:这适用于 Windows 中的 Sublime。我认为 Sublime 在 Mac OS/Linux 上不会有任何区别。

    【讨论】:

    • 非常有帮助的答案。在 Linux 上为我解决了这个问题,并从巨大的痛苦中解脱出来!
    • 在 Mac OS X 上也能正常工作。非常感谢!
    • 适用于 Sublime 3,Windows 10 也是如此。
    【解决方案2】:

    您可以在任何应用程序中为您可以选择的任何菜单项设置键盘快捷键。

    1. 转到系统偏好设置键盘快捷方式应用快捷方式

    2. 点击+添加新的快捷方式。

    3. 应用程序设置为Sublime Text.app,将菜单标题设置为菜单选项的确切名称,然后选择键盘快捷键

    4. 点击添加

    【讨论】:

      【解决方案3】:

      我发现我丢失了与已安装的 sublimeREPL 的键绑定,所以我必须找到如何找回它,因为这对我来说是节省时间必不可少的。我也在一台没有升华 Repl 的电脑上使用它,并且两者都适用。这在 2019 年对我有用,版本 3.2

      在首选项/键绑定中(在安装包控制和 sublimeREPL 之后)。我也做了这个video

      [
      
      {"keys": ["ctrl+b"], "command": "repl_open",
       "caption": "Python - RUN current file",
       "id": "repl_python_run",
       "mnemonic": "d",
       "args": {
          "type": "subprocess",
          "encoding": "utf8",
          "cmd": ["C:/Users/giova/AppData/Local/Programs/Python/Python37-32/python.exe", "-u", "-i", "$file_basename"],
          "cwd": "$file_path",
          "syntax": "Packages/Python/Python.tmLanguage",
          "external_id": "python",
          "extend_env": {"PYTHONIOENCODING": "utf-8"}
              }}
      ]
      

      p.s.:更改 python.exe 的位置,因为它存储在您的电脑中。

      您也可以这样做:

      [
      
      {"keys": ["ctrl+b"], "command": "repl_open",
       "caption": "Python - RUN current file",
       "id": "repl_python_run",
       "mnemonic": "s",
       "args": {
          "extend_env": {"PYTHONIOENCODING": "utf-8"},
          "cmd": ["py", "-u", "-i", "$file_basename",],
          "type": "subprocess",
          "encoding": "utf8",
          "cwd": "$file_path",
          "syntax": "Packages/Python/Python.tmLanguage",
          "external_id": "python",
          "view_id": "*REPL* [python]",
              }}
      ]
      

      要使用不同版本的 python,你可以输入 py -2.7,如果你已经安装了它们。 您也可以在 cmd 列表中使用“python”。 要查看 python 的位置,可以导入 sys 并从 python 本身查看 sys.path。您也可以添加“-m”、“-pdb”来进行调试,也许可以使用其他组合键。

      这在 3.2 中再次起作用

      [
      { "keys": ["ctrl+b"], "command": "run_existing_window_command", "args":
      {
          "id": "repl_python_run",
          "file": "config/Python/Main.sublime-menu"
      }}
      ]
      

      【讨论】:

      • 谢谢。在 W10 和 Sublime3.2 上工作。
      【解决方案4】:

      Go to Preferences -> Key Bindings, and write this in the window "Sublime-keymap --User"

      [
      {
          "keys": ["ctrl+alt+b"],
          "command": "repl_open",
          "args": {
                      "cmd": ["python", "-u", "-i", "$file_basename"],
                      "cwd": "$file_path",
                      "encoding": "utf8",
                      "extend_env": {"PYTHONIOENCODING": "utf-8"},
                      "external_id": "python",
                      "syntax": "Packages/Python/Python.tmLanguage",
                      "type": "subprocess"
                  }
      }]
      

      【讨论】:

        【解决方案5】:

        我对罗米娜的回答有补充, 我使用了她的代码,但它以 Python 默认版本打开,在我的情况下(Linux Mint)它是 Python 2.7, 因此,如果您遇到问题,只需使用以下代码更改她的代码:

        [
        {
            "keys": ["ctrl+alt+b"],
            "command": "repl_open",
            "args": {
                        "cmd": ["python3", "-u", "-i",     "$file_basename"],
                        "cwd": "$file_path",
                        "encoding": "utf8",
                        "extend_env": {"PYTHONIOENCODING": "utf-8"},
                        "external_id": "python3",
                        "syntax": "Packages/Python/Python.tmLanguage",
                        "type": "subprocess"
                    }
        }]
        

        它适用于 Python 3(当然,如果你安装了它)

        【讨论】:

          【解决方案6】:

          tq,添加调试

          { "keys": ["ctrl+b"], "command": "run_existing_window_command", "args":
                  {
                  "id": "repl_python_pdb",
                  "file": "config/Python/Main.sublime-menu"
                  }
          },
          

          【讨论】: