GNU bug report logs -
#34614
26.1.92; When reading input in mini-buffer, message to each area overide the input prompt
Previous Next
Reported by: Zhang Haijun <ccsmile2008 <at> outlook.com>
Date: Fri, 22 Feb 2019 12:19:01 UTC
Severity: normal
Tags: fixed
Found in version 26.1.92
Fixed in version 27.0.50
Done: Juri Linkov <juri <at> linkov.net>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
I got it. Thanks for your explaination.
It is strange that minibuffer-message-timeout is defined in C.
But the timeout is processed in lisp (in the function minibuffer-message).
在 2019年11月8日 +0800 AM6:58,Juri Linkov <juri <at> linkov.net>,写道:
The prompt is replaced with the message from autorevert. And after
about 2~3 seconds (not fixed), the prompt comes back. What controls
the delay(2~3 seconds)? It is not the value of
minibuffer-message-timeout, which is 0.6. Is this expected?
The problem is that when auto-revert-handler calls minibuffer-message,
the current buffer is not the minibuffer, because functions that call
auto-revert-handler (auto-revert-notify-handler, auto-revert--end-lockout,
or auto-revert-buffers) change the current buffer using with-current-buffer.
When the current buffer is not the minibuffer then minibuffer-message
just calls (message "%s" message) and then does
(sit-for (or minibuffer-message-timeout 1000000))
And it behaves differently with the following test code:
(progn (run-with-idle-timer 3 nil
(lambda ()
(minibuffer-message "Reverting buffer `%s'." (buffer-name))))
(call-interactively 'find-file))
This works well. The prompt is NOT replaced. The message is appended
to the end of the prompt and disappears after 0.6 second.
To work well like this, minibuffer-message should be called outside
of with-current-buffer code block. Yesterday I fixed Man-bgproc-sentinel
in bug#19064 to call minibuffer-message outside of with-current-buffer.
But auto-revert functions require complete rewrite. I don't see
how this could be fixed with a simple change.
[Message part 2 (text/html, inline)]
This bug report was last modified 5 years and 250 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.