+2011-04-10 Chong Yidong <cyd@stupidchicken.com>
+
+ * minibuffer.el (completion-show-inline-help): New var.
+ (completion--do-completion, minibuffer-complete)
+ (minibuffer-force-complete, minibuffer-complete-word): Inhibit
+ minibuffer messages if completion-show-inline-help is nil.
+
+ * icomplete.el (icomplete-mode): Bind completion-show-inline-help
+ to avoid interference from inline help (Bug#5849).
+
2011-04-10 Leo Liu <sdl.web@gmail.com>
* emacs-lisp/tabulated-list.el (tabulated-list-print-entry): Fix
(if icomplete-mode
;; The following is not really necessary after first time -
;; no great loss.
- (add-hook 'minibuffer-setup-hook 'icomplete-minibuffer-setup)
- (remove-hook 'minibuffer-setup-hook 'icomplete-minibuffer-setup)))
+ (progn
+ (setq completion-show-inline-help nil)
+ (add-hook 'minibuffer-setup-hook 'icomplete-minibuffer-setup))
+ (remove-hook 'minibuffer-setup-hook 'icomplete-minibuffer-setup)
+ (setq completion-show-inline-help t)))
;;;_ > icomplete-simple-completing-p ()
(defun icomplete-simple-completing-p ()
;; is on, the field doesn't cover the entire minibuffer contents.
(delete-region (minibuffer-prompt-end) (point-max)))
+(defvar completion-show-inline-help t
+ "If non-nil, print helpful inline messages during completion.")
+
(defcustom completion-auto-help t
"Non-nil means automatically provide help for invalid completion input.
If the value is t the *Completion* buffer is displayed whenever completion
(cond
((null comp)
(minibuffer-hide-completions)
- (unless completion-fail-discreetly
- (ding) (minibuffer-message "No match"))
+ (when (and (not completion-fail-discreetly) completion-show-inline-help)
+ (ding)
+ (minibuffer-message "No match"))
(minibuffer--bitset nil nil nil))
((eq t comp)
(minibuffer-hide-completions)
(minibuffer-hide-completions))
;; Show the completion table, if requested.
((not exact)
- (if (case completion-auto-help
- (lazy (eq this-command last-command))
- (t completion-auto-help))
+ (if (cond ((null completion-show-inline-help) t)
+ ((eq completion-auto-help 'lazy)
+ (eq this-command last-command))
+ (t completion-auto-help))
(minibuffer-completion-help)
(minibuffer-message "Next char not unique")))
;; If the last exact completion and this one were the same, it
t)
(t (case (completion--do-completion)
(#b000 nil)
- (#b001 (minibuffer-message "Sole completion")
+ (#b001 (if completion-show-inline-help
+ (minibuffer-message "Sole completion"))
t)
- (#b011 (minibuffer-message "Complete, but not unique")
+ (#b011 (if completion-show-inline-help
+ (minibuffer-message "Complete, but not unique"))
t)
(t t)))))
(end (field-end))
(all (completion-all-sorted-completions)))
(if (not (consp all))
- (minibuffer-message (if all "No more completions" "No completions"))
+ (if completion-show-inline-help
+ (minibuffer-message
+ (if all "No more completions" "No completions")))
(setq completion-cycling t)
(goto-char end)
(insert (car all))
(interactive)
(case (completion--do-completion 'completion--try-word-completion)
(#b000 nil)
- (#b001 (minibuffer-message "Sole completion")
+ (#b001 (if completion-show-inline-help
+ (minibuffer-message "Sole completion"))
t)
- (#b011 (minibuffer-message "Complete, but not unique")
+ (#b011 (if completion-show-inline-help
+ (minibuffer-message "Complete, but not unique"))
t)
(t t)))