Subject: bug#34939: Some minibuffer behaviour is annoying

From: Drew Adams <[email-masked]>
Date: Thu, 30 May 2019 14:00:27 -0700 (PDT)

> > I haven't been following this thread.  But it looks
> > like this will use `minibuffer-message' for errors
> > raised during minibuffer input, and block `message',
> > except for logging.  Is that right?
> 
> No, it won't block messages.

It will block `message', not messages.  It will hijack
`message' to effect instead `minibuffer-message'.

That's not right or fair.  Code that calls `message'
should get `message' behavior.

> It will display messages together with the minibuffer contents
> instead of replacing it.

Which means that code that _intends_ `message'
behavior, which does (temporarily) replace your
input in the minibuffer, no longer does that.

No way around it - `message' just gets hijacked.

It is so _easy_ for any code to explicitly call
`minibuffer-message' when it wants that effect.
But now you want to make it impossible for code
that calls `message' to get `message' behavior.

Not needed and not the right thing.  You're
impoverishing Emacs behavior by replacing two
possible behaviors with one.

> Currently it requires the user to wait 2 seconds
> before the user can see the minibuffer contents again.

No, it does not.  User input cancels the `message'
text.  And this is during an overall input reading,
remember?  And code that calls `message' can invoke
`(message nil)' to also cancel the `message' text
at _any_ time it deems appropriate.  There is no
mandatory 2-sec wait, such as you suggest.

> Most often, this happens after typing M-n to see if any default values
> are available, and it replaces the minibuffer contents with the message
> “End of history; no default available”.

If you think there is a _particular_ context or
use of `message' that is problematic then fix that.
What you're proposing/doing instead is smashing
with a sledgehammer.

> I have to wait several times
> per day for this message to go away.  Totally it takes ~1 minute per day,
> ~300 minutes (5 hours) per year, and ~50 hours per decade - this is
> a whole workweek of just looking at the message and waiting for Godot.

Ridiculous exaggeration. I use `M-n' all the time
and have never had to wait like that.

This is a bad idea.  If you want to let users opt
in to such a reduction in behaviors then fine, please
do create a user option that lets them opt in for that.
No one will have a problem with that.