我希望能够在emacs搜索模式下使用M-v
热键来粘贴文本。我知道我可以将绑定添加到isearch-mode-map
但是当我尝试绑定yank
作为方法时,它会将文本拉入当前缓冲区,而不是搜索输入。如何在搜索模式下按C-y
时找到调用的命令?
答案 0 :(得分:3)
使用isearch-yank-kill
代替yank
。试试(lookup-key isearch-mode-map (kbd "C-y"))
。我使用minibuffer-inactive-mode-map
,minibuffer-local-map
,minibuffer-local-completion-map
。你可以通过 Ch v - m a p TAB 。函数(current-local-map)
可以提供帮助。另请参阅http://www.gnu.org/software/emacs/manual/html_node/elisp/Controlling-Active-Maps.html
更新:当前本地键盘的名称,功能keymap-symbol
的定义,请参阅https://stackoverflow.com/a/14490054/1937596
如果您使用
(setq enable-recursive-minibuffers t)
您可以在迷你缓冲区中通过热键拨打(eval-expression)
并执行(current-local-map)
或(keymap-symbol (current-local-map))
答案 1 :(得分:2)
键入 C-s C-h k C-y 会告诉您:
C-y运行命令isearch-yank-kill。
更一般地说,在isearching时键入 C-h k ,然后键入您想要了解的键序列。当然,当你不搜索时,类似于 C-h k 。
键入 Ch b ,而isearching显示isearch绑定的所有,这同样类似于 Ch的输出 b 当你没有搜索时。
另一个isearch帮助绑定是 Ch m 以显示模式帮助, Ch Ch 为您提供上述所有菜单。