From 2041a621ba5be0c4b2f563a554263b37d4192ce2 Mon Sep 17 00:00:00 2001 From: Matthias Meulen Date: Sat, 27 Nov 2021 22:43:20 +0100 Subject: [PATCH] `project-kill-buffers` displays list of buffers to kill * lisp/progmodes/project.el (project-kill-buffers): Temporarily display list of buffers to kill --- lisp/progmodes/project.el | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el index ed076a683d..0d8ed3646a 100644 --- a/lisp/progmodes/project.el +++ b/lisp/progmodes/project.el @@ -1281,9 +1281,26 @@ project-kill-buffers (mapc #'kill-buffer bufs)) ((null bufs) (message "No buffers to kill")) - ((yes-or-no-p (format "Kill %d buffers in %s? " - (length bufs) - (project-root pr))) + ((with-current-buffer-window + (get-buffer-create "*Buffer List*") + `(display-buffer--maybe-at-bottom + (dedicated . t) + (window-height . (fit-window-to-buffer)) + (preserve-size . (nil . t)) + (body-function + . ,#'(lambda (_window) + (list-buffers-noselect nil bufs)))) + #'(lambda (window _value) + (with-selected-window window + (unwind-protect + (progn + (setq confirm nil) + (yes-or-no-p + (format "Kill %d buffers in %s? " + (length bufs) + (project-root pr)))) + (when (window-live-p window) + (quit-restore-window window 'kill)))))) (mapc #'kill-buffer bufs))))) -- 2.30.2