0

我正在为 SublimeText2 开发 Prolog REPL 插件。就像序言解释器本身一样,我想为相同的操作提供多个不同的键绑定;例如,可以同时使用;n取消repl 提出的解决方案。目前,为了实现这一点,我只需复制键绑定:

{ "keys": [";"], "command": "mycmd", "args": {},
"context":
    [
        { "key": "setting.some_setting", "operator": "equal", "operand": true },
        { "key": "replmode_p"}
    ]
},
{ "keys": ["n"], "command": "mycmd", (etc ...) }

这会大大增加键绑定文件的大小,因为许多定义都相当大,因为它们只适用于特定的上下文。有没有办法在不复制绑定的情况下做到这一点,或者我可以做些什么来优化它?

4

1 回答 1

1

例如,只需快速浏览即可Preferences->Key Bindings-Default显示相同命令的多个条目

{ "keys": ["backspace"], "command": "left_delete" },
{ "keys": ["shift+backspace"], "command": "left_delete" },
{ "keys": ["ctrl+shift+backspace"], "command": "left_delete" },

{ "keys": ["shift+delete"], "command": "cut" },
{ "keys": ["ctrl+insert"], "command": "copy" },
{ "keys": ["shift+insert"], "command": "paste" },
{ "keys": ["ctrl+x"], "command": "cut" },
{ "keys": ["ctrl+;"], "command": "cut" },
{ "keys": ["ctrl+c"], "command": "copy" },
{ "keys": ["ctrl+v"], "command": "paste" },

就在前 40 行(在 Windows 上),所以不幸的是我认为答案是否定的。我能想到的唯一方法,

{ "keys": ["ctrl+k", "ctrl+d"], "command": "find_under_expand_skip" },

将双键序列映射到动作 - hiting CtrlK,然后 hitCtrlD运行命令。

对不起!

于 2013-07-11T16:12:06.923 回答