diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2011-05-03 22:19:32 -0300 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2011-05-03 22:19:32 -0300 |
commit | ef80fc093a3b13ee9c1575c54b7831bc9cf2ef8b (patch) | |
tree | 77f4041776fd0cd73d8c23f86ae292157e5ee361 /lisp/minibuffer.el | |
parent | dd5a5ee08cb51d0b0be8f92b8d57aa326d7a7295 (diff) | |
download | emacs-ef80fc093a3b13ee9c1575c54b7831bc9cf2ef8b.tar.gz |
* lisp/minibuffer.el (completion--message): New function.
(completion--do-completion, minibuffer-complete)
(minibuffer-force-complete, minibuffer-complete-word): Use it.
(completion--do-completion): Don't ignore completion-auto-help when in
icomplete-mode.
Diffstat (limited to 'lisp/minibuffer.el')
-rw-r--r-- | lisp/minibuffer.el | 37 |
1 files changed, 17 insertions, 20 deletions
diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index 7bd256afc79..41399f3f141 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el @@ -558,6 +558,10 @@ candidates than this number." (defvar completion-fail-discreetly nil "If non-nil, stay quiet when there is no match.") +(defun completion--message (msg) + (if completion-show-inline-help + (minibuffer-message msg))) + (defun completion--do-completion (&optional try-completion-function) "Do the completion and return a summary of what happened. M = completion was performed, the text was Modified. @@ -585,9 +589,9 @@ E = after completion we now have an Exact match. (cond ((null comp) (minibuffer-hide-completions) - (when (and (not completion-fail-discreetly) completion-show-inline-help) + (unless completion-fail-discreetly (ding) - (minibuffer-message "No match")) + (completion--message "No match")) (minibuffer--bitset nil nil nil)) ((eq t comp) (minibuffer-hide-completions) @@ -657,15 +661,13 @@ E = after completion we now have an Exact match. (minibuffer-hide-completions)) ;; Show the completion table, if requested. ((not exact) - (if (cond (icomplete-mode t) - ((null completion-show-inline-help) t) - ((eq completion-auto-help 'lazy) - (eq this-command last-command)) - (t completion-auto-help)) + (if (case completion-auto-help + (lazy (eq this-command last-command)) + (t completion-auto-help)) (minibuffer-completion-help) - (minibuffer-message "Next char not unique"))) + (completion--message "Next char not unique"))) ;; If the last exact completion and this one were the same, it - ;; means we've already given a "Next char not unique" message + ;; means we've already given a "Complete, but not unique" message ;; and the user's hit TAB again, so now we give him help. ((eq this-command last-command) (if completion-auto-help (minibuffer-completion-help)))) @@ -703,11 +705,9 @@ scroll the window of possible completions." t) (t (case (completion--do-completion) (#b000 nil) - (#b001 (if completion-show-inline-help - (minibuffer-message "Sole completion")) + (#b001 (completion--message "Sole completion") t) - (#b011 (if completion-show-inline-help - (minibuffer-message "Complete, but not unique")) + (#b011 (completion--message "Complete, but not unique") t) (t t))))) @@ -765,9 +765,8 @@ Repeated uses step through the possible completions." (end (field-end)) (all (completion-all-sorted-completions))) (if (not (consp all)) - (if completion-show-inline-help - (minibuffer-message - (if all "No more completions" "No completions"))) + (completion--message + (if all "No more completions" "No completions")) (setq completion-cycling t) (goto-char end) (insert (car all)) @@ -955,11 +954,9 @@ Return nil if there is no valid completion, else t." (interactive) (case (completion--do-completion 'completion--try-word-completion) (#b000 nil) - (#b001 (if completion-show-inline-help - (minibuffer-message "Sole completion")) + (#b001 (completion--message "Sole completion") t) - (#b011 (if completion-show-inline-help - (minibuffer-message "Complete, but not unique")) + (#b011 (completion--message "Complete, but not unique") t) (t t))) |