我的.emacs文件中有以下内容:
(global-set-key "\M-s" 'switch-to-buffer)
然而,当我处于直接模式“查看目录”时,M-s不会执行“切换到缓冲区”,而是显示M-s等待更多输入。
在直接模式下,如何使切换到缓冲区工作?
答案 0 :(得分:2)
M-s
现在是Isearch前缀键。在Dired模式下,默认情况下你有这些绑定(从'emacs -Q'尝试M-s C-h
):
Major Mode Bindings Starting With M-s:
key binding
--- -------
M-s a Prefix Command
M-s f Prefix Command
M-s f C-s dired-isearch-filenames
M-s f ESC Prefix Command
M-s a C-s dired-do-isearch
M-s a ESC Prefix Command
M-s f C-M-s dired-isearch-filenames-regexp
M-s a C-M-s dired-do-isearch-regexp
Global Bindings Starting With M-s:
key binding
--- -------
M-s . isearch-forward-symbol-at-point
M-s _ isearch-forward-symbol
M-s h Prefix Command
M-s o occur
M-s w isearch-forward-word
M-s h . highlight-symbol-at-point
M-s h f hi-lock-find-patterns
M-s h l highlight-lines-matching-regexp
M-s h p highlight-phrase
M-s h r highlight-regexp
M-s h u unhighlight-regexp
M-s h w hi-lock-write-interactive-patterns
因此,您选择将绑定M-s
绑定到不同的地方并不是一个很好的选择,对于Dired模式和一般情况而言。你可以这样做,但是你要么必须定义一个不同的Isearch前缀密钥,要么在前缀密钥上没有Isearch命令。
请记住,当Emacs似乎在等待更多密钥时,您可能会输入前缀密钥。请记住,您可以(通常)键入前缀键,然后单击C-h
以查看具有该前缀的键。
如果您使用库help-fns+.el,则可以使用C-h M-k
(describe-keymap
)获取为给定键映射定义的所有(非菜单)键的人类可读列表绑定到变量。在这种情况下,C-h M-k dired-mode-map
会显示该键映射中的所有键。