Subject: bug#34614: 26.1.92; When reading input in mini-buffer, message to each area overide the input prompt

From: Zhang Haijun <[email-masked]>
Date: Sat, 23 Feb 2019 08:05:28 +0000

> 在 2019年2月23日，下午3:53，martin rudalics <[email-masked]> 写道：
> 
> >> minibuffer-message-timeout
> >
> > On timeout of minibuffer-message-timeout, can emacs trigger a redisplay?
> 
> That's what I tried in 'auto-revert-handler':
> 
>      (when (and auto-revert-verbose
>                 (not (eq revert 'fast)))
>        (message "Reverting buffer `%s'." (buffer-name))
>        (when (> (minibuffer-depth 0))
>          (sit-for minibuffer-message-timeout)
>          (message nil)))
> 
> But then the message flashes for a short moment here, Emacs redisplays
> and switches back to the prompt.  So for some reason 'sit-for' doesn't
> work as advertised when Emacs is waiting for input.
> 
> martin

I see the variable 'minibuffer-message-timeout’ is defined in c source code. Maybe emacs processes it in c source code already, which conflicts with sit-for?