From: Stefan Monnier Date: Thu, 5 Jul 2007 19:42:43 +0000 (+0000) Subject: (PC-do-complete-and-exit): Add support for the new X-Git-Tag: emacs-pretest-23.0.90~12043 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=f15ca9448322563c50e70e81d62c31eb57df0ae3;p=emacs.git (PC-do-complete-and-exit): Add support for the new `confirm-only' confirmation mode. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 30badf7f856..653dd294452 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2007-07-05 Stefan Monnier + + * complete.el (PC-do-complete-and-exit): Add support for the new + `confirm-only' confirmation mode. + 2007-07-05 Chong Yidong * cus-edit.el (custom-commands): New variable. diff --git a/lisp/complete.el b/lisp/complete.el index 3f83296474d..b90553b1816 100644 --- a/lisp/complete.el +++ b/lisp/complete.el @@ -328,14 +328,24 @@ See `PC-complete' for details." (PC-do-complete-and-exit))) (defun PC-do-complete-and-exit () - (if (= (point-max) (minibuffer-prompt-end)) ; Duplicate the "bug" that Info-menu relies on... - (exit-minibuffer) + (cond + ((= (point-max) (minibuffer-prompt-end)) + ;; Duplicate the "bug" that Info-menu relies on... + (exit-minibuffer)) + ((eq minibuffer-completion-confirm 'confirm-only) + (if (or (eq last-command this-command) + (test-completion (field-string) + minibuffer-completion-table + minibuffer-completion-predicate)) + (exit-minibuffer) + (PC-temp-minibuffer-message " [Confirm]"))) + (t (let ((flag (PC-do-completion 'exit))) (and flag (if (or (eq flag 'complete) (not minibuffer-completion-confirm)) (exit-minibuffer) - (PC-temp-minibuffer-message " [Confirm]")))))) + (PC-temp-minibuffer-message " [Confirm]"))))))) (defun PC-completion-help ()