显示未绑定的密钥


30

我想为头盔的新用法定义惊人的键绑定,令人惊叹的模式btw,并且我想做到这一点而不覆盖其他键的用法。我意识到不同键组合的数量是无限的,但是有什么方法可以看到所有未定义的键绑定,例如1级深度?

例如,我想知道在点击后可以使用哪些键绑定C-c,然后获取带有清单的缓冲区C-c some_keys

假设此功能目前不存在?

Answers:


23

签出该free-keys程序包,它为您提供了一个具有相同名称的功能,该功能可以向您显示所有当前未使用的键绑定。

bind-key 还是有用的工具,它为您提供了用于定义自己的绑定的更简洁的语法,即:

(bind-key "C-h C-k" 'free-keys)

bind-key还附带了一个方便的defun,describe-personal-keybindings用于查看您设置的所有键绑定以及是否覆盖了哪些绑定以及您覆盖了哪些绑定。


6

这里有一些想法。他们不会直接回答您的问题,但是可以帮助您确定哪些键绑定可用。

获取所有以前缀开头的键绑定的列表

guide-key包可用于按字母顺序显示以输入的前缀开头的所有键绑定。

下面的屏幕截图显示了以guide-key开头的所有键绑定C-x r。由于可用的绑定按字母顺序列出,因此很容易弄清楚哪些可用的绑定。

屏幕截图还显示了我使用的其他其他关键前缀guide-key

我的以Cx r开头的键绑定

获取您要覆盖的绑定的列表

软件包describe-personal-keybindings随附的功能use-package显示了您覆盖了哪些键绑定,如以下屏幕截图所示。您可以查看此功能的结果,以检查是否无意中取消了绑定。很棒的事情是该函数也显示了所有次要模式的绑定。

describe-personal-keybindings输出的样例


5

您可以点击C-c C-h了解所有以开头的绑定C-c。这适用于“不完整”的任何键序列:点击该键序列,然后C-h查看以该序列开头的所有键绑定。然后,您可以选择列表中未包含的内容。

要知道是否定义了特定的键绑定(以避免覆盖它),可以在当前模式下使用C-h cM-x describe-key-briefly(或C-h kM-x describe-key)查看其定义。


1

冰柱密钥完成 --S-TAB向您显示当前可用的所有键序列(即绑定的,不是免费的),包括在您按下前缀键之后。

例如,C-x r S-TAB显示带有前缀的键序列C-x r

未列出的密钥是未绑定的(免费)。

您可以使用来以不同的方式对显示的按键序列进行排序C-,

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.