Subject: bug#5849: 23.1.95; completion-auto-help blocks icomplete-mode

From: Stefan Monnier <[email-masked]>
Date: Sat, 24 Jul 2010 00:18:25 +0200

> Yes, obviously this is what I meant.  Like this:

> === modified file 'lisp/minibuffer.el'
> *** lisp/minibuffer.el	2010-03-24 18:02:56 +0000
> --- lisp/minibuffer.el	2010-04-10 18:49:41 +0000
> ***************
> *** 528,536 ****
>                 ;; Show the completion table, if requested.
>                 (cond
>                  ((not exact)
> !                 (if (case 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
> --- 528,537 ----
>                 ;; Show the completion table, if requested.
>                 (cond
>                  ((not exact)
> !                 (if (cond (icomplete-mode 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

It's a good workaround, thanks.  Note that most other messages from the
completion code are similarly problematic, I think.  So maybe we should
have a buffer-local completion-inhibit-messages variable, which
icomplete could set in the minibuffer.

        Stefan