我怎样才能杀死所有的';缓冲区';在我的emacs中

我怎样才能杀死所有的';缓冲区';在我的emacs中,emacs,Emacs,是否有命令杀死我的emacs中的所有缓冲区?而不是让我一个接一个地执行“Ctrl-k”直到没有更多的缓冲区 谢谢。M-xibufferRET tDy 我强烈建议将C-xC-b绑定到ibuffer,以替代默认绑定: (全局设置键(kbd“C-x C-b”)“ibuffer) (我还将我的密钥绑定到了ibuffer,因为我经常使用它。) n、 b.您可以在常规的列表缓冲区中使用C-k和x来标记和杀死缓冲区,但我认为每个人都应该使用ibuffer,真的。高度黑客化,但您需要: (defun my-k

是否有命令杀死我的emacs中的所有缓冲区?而不是让我一个接一个地执行“Ctrl-k”直到没有更多的缓冲区

谢谢。

M-x
ibuffer
RET
tDy

我强烈建议将C-xC-b绑定到
ibuffer
,以替代默认绑定:

(全局设置键(kbd“C-x C-b”)“ibuffer)
(我还将我的密钥绑定到了
ibuffer
,因为我经常使用它。)


n、 b.您可以在常规的
列表缓冲区中使用C-k和x来标记和杀死缓冲区,但我认为每个人都应该使用
ibuffer
,真的。

高度黑客化,但您需要:

(defun my-kill-everything ()
  (interactive)
  (dolist (cur (buffer-list))
    (kill-buffer cur)))

请注意,Emacs总是至少需要一个缓冲区,因此最终还是会得到一个空的临时缓冲区。(是的,这个命令也会杀死像minibuffer这样的东西,但是它会被还原。正如我写的:高度黑客化。)

我正在使用这个函数杀死emacs中的所有缓冲区

(defun nuke-all-buffers ()
  (interactive)
  (mapcar 'kill-buffer (buffer-list))
  (delete-other-windows))

(global-set-key (kbd "C-x K") 'nuke-all-buffers)

对我来说效果很好:-)

最快的黑客方法是键盘宏。C-xc-(C-xc-kc-xc-)C-u0,然后在一段时间后C-g,因为它会在重复杀死暂存缓冲区时卡住。你可以说
'kill-buffer
而不是
(lambda(x)(kill-buffer x))
。这会杀死所有缓冲区,并且只保留
*scratch*
@stackundflow