如何在Sublime Text 2中取消绑定键绑定?

时间:2013-10-08 10:56:13

标签: keyboard-shortcuts sublimetext2

我习惯按 CTRL + T 在ST2中打开一个新标签。然而,这会调用转置函数。我可以将new_file命令映射到 CTRL + T ,但是可以通过用户键映射文件完全禁用该命令。我的搜索建议将其添加到用户键盘映射。

[ { "keys": ["ctrl+t"], "command": "unbound" } ]

“未绑定”是否是正式认可的禁用快捷方式的方式?

6 个答案:

答案 0 :(得分:20)

我从未查看或阅读有关unbound命令的任何官方文档,但它有效。另一种选择是删除command属性。

{ "keys": ["ctrl+t"] }

这也将解除绑定一个键绑定。

答案 1 :(得分:18)

{ "keys": ["ctrl+-"], "command": "noop" }

将一个密钥绑定到无操作或任何不会带有命令行为的东西,例如" hello",应该可以正常工作。

如果你将来改变主意,这也会保留绑定的主体。

答案 2 :(得分:11)

另外,如果你想要撤消被插件覆盖的快捷方式(我看着你,"终端"):

  1. 首选项 - >中找到您之前的快捷方式键绑定(默认)
  2. 复制该行(例如{ "keys": ["super+shift+t"], "command": "reopen_last_file" }
  3. 打开首选项 - >键绑定(用户)
  4. 在那里添加该行(如果文件为空,则在行之前添加[],因为它是一组命令)

答案 3 :(得分:5)

实际上,在Mac上使用ST3时,这个post确实帮助了解了我的问题。使用Package Resource Viewer,您可以编辑默认的键盘快捷键(Default(OSX).sublime-keymap)并删除您不想要的行。执行此操作后,ST3将不再捕获系统范围的热键。

答案 4 :(得分:4)

Path Tools包中包含key bindings,它覆盖我经常使用的默认Sublime键绑定,具体为: command + shift + V

在Mac上,我可以通过在此处放置一个空白文件来覆盖Path Tools包的所有默认绑定:

~/Library/Application Support/Sublime Text 3/Packages/Path Tools/Default (OSX).sublime-keymap

我希望Sublime软件包安装在用软件包包含将覆盖当前或默认密钥绑定的密钥绑定时警告用户。

答案 5 :(得分:3)

可以通过创建自定义默认绑定文件来覆盖已安装软件包的默认绑定。

例如我想要ctrl-T进行转置,所以我修改了CTags的默认绑定:

  • c:\Users\USER\appdata\Roaming\Sublime Text 3\Installed Packages\CTags.CTags.sublime-package复制到tmp.zip
  • 从zip文件提取Default.sublime-keymapc:\Users\USER\appdata\Roaming\Sublime Text 3\Packages\CTags\
  • 修改或删除此文件的绑定。

如果更新了包,则保留自定义默认绑定文件,因此保留绑定并且必须手动更新任何新绑定。