我有很多框架总是在 emacs 中打开。就像我使用 emacsclient(守护进程)并且几乎从不重新启动计算机一样,这些框架永远不会关闭。我可以关闭一个,C-x k
但如何关闭所有打开的框架?
问问题
856 次
2 回答
3
关闭所有框架只是退出,不是吗?
如果要关闭除一帧以外的所有帧,可以使用delete-other-frames
key-sequence C-x 5 1。
于 2013-12-15T18:55:03.393 回答
1
这似乎可以接受。它会询问您终止列表上的缓冲区之一是否有未保存的更改。
(defun close-all-other-buffers-and-frames ()
"Destroy all frames except this one, kill all buffers, display `*scratch*'."
(interactive)
(set-buffer "*scratch*")
(delete-other-frames)
(let ((l (buffer-list)) b)
(while l
(setq b (car l)
l (cdr l) )
(and (buffer-file-name b)
(kill-buffer b) ) ) ) )
我觉得杀死缓冲区的循环可以更优雅地完成——请提出改进建议!
于 2013-12-16T11:00:41.543 回答