Mercurial > emacs
changeset 100044:f42890851326
Add and use minibuffer-confirm-exit-commands variable
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-1483
author | Miles Bader <miles@gnu.org> |
---|---|
date | Sat, 29 Nov 2008 18:07:15 +0000 |
parents | 40a45069dd91 |
children | 3ec2cc2d35c1 |
files | lisp/ChangeLog lisp/minibuffer.el |
diffstat | 2 files changed, 11 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Sat Nov 29 17:06:11 2008 +0000 +++ b/lisp/ChangeLog Sat Nov 29 18:07:15 2008 +0000 @@ -1,3 +1,8 @@ +2008-11-29 Miles Bader <miles@gnu.org> + + * minibuffer.el (minibuffer-confirm-exit-commands): New variable. + (minibuffer-complete-and-exit): Use it. + 2008-11-29 Chong Yidong <cyd@stupidchicken.com> * term/x-win.el (x-gtk-stock-cache): New hash table.
--- a/lisp/minibuffer.el Sat Nov 29 17:06:11 2008 +0000 +++ b/lisp/minibuffer.el Sat Nov 29 18:07:15 2008 +0000 @@ -542,6 +542,11 @@ ;; through the previous possible completions. (setq completion-all-sorted-completions (cdr all))))) +(defvar minibuffer-confirm-exit-commands + '(minibuffer-complete minibuffer-complete-word) + "A list of commands which cause an immediately following +`minibuffer-complete-and-exit' to ask for extra confirmation.") + (defun minibuffer-complete-and-exit () "Exit if the minibuffer contains a valid completion. Otherwise, try to complete the minibuffer contents. If @@ -595,7 +600,7 @@ ((eq minibuffer-completion-confirm 'confirm-after-completion) ;; Similar to the above, but only if trying to exit immediately ;; after typing TAB (this catches most minibuffer typos). - (if (eq last-command 'minibuffer-complete) + (if (memq last-command minibuffer-confirm-exit-commands) (progn (minibuffer-message "Confirm") nil) (exit-minibuffer)))