在emacs中,如何为当前缓冲区显示阴影/重写的键绑定?运行describe-bindings(C-h b)时它们不会显示.
换句话说:如何查看缓冲区中活动的模式是否存在冲突的键绑定?
只需致电describe-mode:C-hm
大多数模式文档字符串将显示其键盘映射,此处用于列出它们的方法也会告诉您绑定是否被遮蔽.
它并没有告诉你它被它所掩盖的东西,但当然这对于检查C-hc或者是微不足道的C-hk.
例如:
key binding
--- -------
[...]
C-M-q indent-sexp
(that binding is currently shadowed by another mode)
Run Code Online (Sandbox Code Playgroud)
该文本由函数生成,该函数在调用函数时substitute-command-keys处理模式docstring documentation.
例如:
(substitute-command-keys "\\{lisp-interaction-mode-map}")
Run Code Online (Sandbox Code Playgroud)
以下功能也很有用:
(key-binding KEY &optional ACCEPT-DEFAULT NO-REMAP POSITION) ;; dominant binding
(global-key-binding KEYS &optional ACCEPT-DEFAULT)
(local-key-binding KEYS &optional ACCEPT-DEFAULT)
(minor-mode-key-binding KEY &optional ACCEPT-DEFAULT) ;; discover keymap(s)
Run Code Online (Sandbox Code Playgroud)