4

SublimeREPLプラグインコマンドのキーボードショートカットをマップしようとしています。SublimeREPLを見ると、メニュー項目コマンドは次のように定義されているように見えます。

Default.sublime-commands {"caption": "SublimeREPL:開いたフォルダーのSBT"、 "command": "run_existing_window_command"、 "args":{"id": "repl_sbt"、 "file": "config / Scala / Main .sublime-menu"}}

またはで

Main.sublime-menu

               {"command": "repl_open",
                 "caption": "SBT for opened folder",
                 "id": "repl_sbt",
                 "mnemonic": "b",
                 "args": {
                    "type": "subprocess",
                    "encoding": "utf8",
                    "external_id": "scala",
                    "cmd": {"linux": ["sbt"],
                            "osx": ["sbt"],
                            "windows": ["sbt"]},
                    "soft_quit": "\nexit\n",
                    "cwd": "$folder",
                    "cmd_postfix": "\n", 
                    "extend_env": {"osx": {"EMACS": "1", "PATH": "{PATH}:/usr/local/bin"},
                                   "linux": {"EMACS": "1", "PATH": "{PATH}:/usr/local/bin"},
                                   "windows": {"EMACS": "1"}},
                    "suppress_echo": false, 
                    "syntax": "Packages/Scala/Scala.tmLanguage"
                    }
                } 

SublimeREPL.sublime-settingsでキーバインディングを作成してみました:

[{ "keys": ["super+shift+k"], "command": "run_existing_window_command", "args":
        {
            "id": "repl_sbt",
            "file": "config/Scala/Main.sublime-menu"
        }
}]

しかし、私がそれを使おうとすると、Sublimeコンソールはただこう言います:

セレクターのコマンドなし:noop:

私がそれをマップする場合も同じです:

[{ "keys": ["super+shift+k"],  "command": "repl_open",
                 "args": {
                    "type": "subprocess",
                    "encoding": "utf8",
                    "external_id": "scala",
                    "cmd": {"linux": ["sbt"],
                            "osx": ["sbt"],
                            "windows": ["sbt"]},
                    "soft_quit": "\nexit\n",
                    "cwd": "$folder",
                    "cmd_postfix": "\n", 
                    "extend_env": {"osx": {"EMACS": "1", "PATH": "{PATH}:/usr/local/bin"},
                                   "linux": {"EMACS": "1", "PATH": "{PATH}:/usr/local/bin"},
                                   "windows": {"EMACS": "1"}},
                    "suppress_echo": false, 
                    "syntax": "Packages/Scala/Scala.tmLanguage"
                    }

}]
4

1 に答える 1

5

最初のキーバインドは正しく、期待どおりに機能するはずです。場所はPreferences -> Key Bindings - User file にあります。

[{ "keys": ["super+shift+k"], "command": "run_existing_window_command", "args":
        {
            "id": "repl_sbt",
            "file": "config/Scala/Main.sublime-menu"
        }
}]

あなたの説明に基づいて、他のコマンドが super+shift+k をハイジャックしていると思われます。

>>> sublime.log_commands(True)

いつ何が呼び出されるかを確認できます。

于 2012-11-24T09:51:17.640 に答える