diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2007-07-05 19:42:43 +0000 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2007-07-05 19:42:43 +0000 |
commit | f15ca9448322563c50e70e81d62c31eb57df0ae3 (patch) | |
tree | 28b431ccc7a90a91c5d566548387b11d3ca31a7c /lisp/complete.el | |
parent | 9db1942d9a0b5e3fe69d585c1ce52d97e9376fce (diff) | |
download | emacs-f15ca9448322563c50e70e81d62c31eb57df0ae3.tar.gz |
(PC-do-complete-and-exit): Add support for the new
`confirm-only' confirmation mode.
Diffstat (limited to 'lisp/complete.el')
-rw-r--r-- | lisp/complete.el | 16 |
1 files changed, 13 insertions, 3 deletions
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 () |