summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2017-06-19 21:31:50 -0400
committerGlenn Morris <rgm@gnu.org>2017-06-19 21:31:50 -0400
commit70d01daceddeb4e4c49c79473c81420f65ffd290 (patch)
treeea54b29db585bab873cae3253bfc11f200b16f6d
parent087e7e96fc158b7a1a41748d5e740d2c45beb67a (diff)
downloademacs-70d01daceddeb4e4c49c79473c81420f65ffd290.tar.gz
kill-matching-buffers to optionally not confirm
* lisp/files.el (kill-matching-buffers): Add option to not confirm killing. (Bug#27286)
-rw-r--r--lisp/files.el8
1 files changed, 5 insertions, 3 deletions
diff --git a/lisp/files.el b/lisp/files.el
index 2930f30db7f..06f49bba23c 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -6077,16 +6077,18 @@ specifies the list of buffers to kill, asking for approval for each one."
(kill-buffer-ask buffer)))
(setq list (cdr list))))
-(defun kill-matching-buffers (regexp &optional internal-too)
+(defun kill-matching-buffers (regexp &optional internal-too no-ask)
"Kill buffers whose name matches the specified REGEXP.
-The optional second argument indicates whether to kill internal buffers too."
+Ignores buffers whose name starts with a space, unless optional
+prefix argument INTERNAL-TOO is non-nil. Asks before killing
+each buffer, unless NO-ASK is non-nil."
(interactive "sKill buffers matching this regular expression: \nP")
(dolist (buffer (buffer-list))
(let ((name (buffer-name buffer)))
(when (and name (not (string-equal name ""))
(or internal-too (/= (aref name 0) ?\s))
(string-match regexp name))
- (kill-buffer-ask buffer)))))
+ (funcall (if no-ask 'kill-buffer 'kill-buffer-ask) buffer)))))
(defun rename-auto-save-file ()