例如,当您通过C-x-C-f打开文件时,您可以使用TAB键自动完成文件名,如果有多个可能的自动完成选项,则会弹出一个包含可能的选项列表的完成缓冲区。问题是,在打开文件后,缓冲区所在的窗口会切换回正常模式,但它不会关闭。是否有任何方法可以使这些缓冲区在文件被打开后自动关闭?
非常抱歉回复晚了,但这是我的做法:;; Remove completion buffer when done (add-hook 'minibuffer-exit-hook '(lambda () (let ((buffer "*Completions*")) (and (get-buffer buffer) (kill-buffer buffer))))) 在 GNU Emacs 22.x 和 23.x 上测试通过
尽管它不能直接解决您的问题,但您是否考虑过使用ido-mode作为打开文件的机制?ido-mode将绑定C-x C-f到ido-find-file,这允许您交互式地打开文件(在minibuffer中选择名称冲突,使用C-s和其他巧妙的功能),我发现这是一种更容易找到文件的方法,而且可以完全摆脱*Completions*缓冲区。
emacs -q
) 的状态。你能提供更多细节吗?<kbd>C-x C-f</kbd>可能没有绑定到find-file
吗? - Trey Jackson