是否有命令要杀死我的emacs中的所有缓冲区?而不是让我一个接一个地做'Ctrl -k',直到没有更多的缓冲区?
谢谢。
答案 0 :(得分:10)
M-x ibuffer
RET
吨 d ý
我强烈建议将 C-x C-b 绑定到ibuffer
,以取代默认绑定:
(global-set-key (kbd "C-x C-b") 'ibuffer)
(我还将< menu> 键绑定到ibuffer
,因为我经常使用它。)
n.b。您可以在常规list-buffers
中使用 Ck 和 x 来标记和终止缓冲区,但我认为每个人都应该使用ibuffer
。 / p>
答案 1 :(得分:7)
我正在使用此函数来杀死emacs中的所有缓冲区
(defun nuke-all-buffers ()
(interactive)
(mapcar 'kill-buffer (buffer-list))
(delete-other-windows))
(global-set-key (kbd "C-x K") 'nuke-all-buffers)
适合我的工作: - )
答案 2 :(得分:1)
非常黑客,但做你想做的事:
(defun my-kill-everything ()
(interactive)
(dolist (cur (buffer-list))
(kill-buffer cur)))
请注意,Emacs始终需要至少一个缓冲区,因此您最终会再次使用空的暂存缓冲区。 (是的,这个命令也会杀死像迷你缓冲器这样的东西,但它会被恢复。正如我写的那样:非常黑客。)