我的默认粘贴key-bindings是
{ "keys": ["ctrl+v"], "command": "paste" },
{ "keys": ["ctrl+shift+v"], "command": "paste_and_indent" },
我在用户键绑定中使用它们覆盖了它们
{ "keys": ["alt+k"], "command": "paste" },
{ "keys": ["ctrl+k"], "command": "paste_and_indent" },
我使用Dvorak键盘,这意味着您的 V是我的 K。另外,我希望paste_and_indent
为默认值。
但是Ctrl + k执行paste
,而不是paste_and_indent
。我通过在控制台中打开命令记录来确定这一点,使用
sublime.log_commands(True)
但是,如果我对其他命令执行paste_and_indent
命令,例如Ctrl + Alt + k或Alt + k,它将正确调用paste_and_indent
。
我查看了所有已安装软件包的键绑定,但没有看到使用Ctrl + k的任何其他命令。除语法外,我还禁用了大多数软件包。我什至不小心disabled Package Control,但Ctrl + k仅执行paste
。
如何确定并解决此冲突,所以Ctrl + k执行paste_and_indent
?
检查FindKeyConflicts
插件。在多种情况下,有几种选择可以查看所有键绑定,也可以仅查看冲突的键绑定。所有选项均可通过命令面板使用。