Mercurial > emacs
diff lisp/complete.el @ 100016:92d948bc8621
(PC-do-complete-and-exit): Synch to 2008-11-24 change to
minibuffer.el; recognize `confirm' and `confirm-after-completion'
values for minibuffer-completion-confirm.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Fri, 28 Nov 2008 19:11:58 +0000 |
parents | cf3a44c40410 |
children | 172ab771edf9 |
line wrap: on
line diff
--- a/lisp/complete.el Fri Nov 28 19:10:40 2008 +0000 +++ b/lisp/complete.el Fri Nov 28 19:11:58 2008 +0000 @@ -330,13 +330,22 @@ ((= (point-max) (minibuffer-prompt-end)) ;; Duplicate the "bug" that Info-menu relies on... (exit-minibuffer)) - ((eq minibuffer-completion-confirm 'confirm-only) + ((eq minibuffer-completion-confirm 'confirm) (if (or (eq last-command this-command) (test-completion (field-string) minibuffer-completion-table minibuffer-completion-predicate)) (exit-minibuffer) (PC-temp-minibuffer-message " [Confirm]"))) + ((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 (and (memq last-command '(PC-complete minibuffer-complete)) + (not (test-completion (field-string) + minibuffer-completion-table + minibuffer-completion-predicate))) + (PC-temp-minibuffer-message " [Confirm]") + (exit-minibuffer))) (t (let ((flag (PC-do-completion 'exit))) (and flag