From: Drew Adams <drew.adams@oracle.com>
To: Juri Linkov <juri@linkov.net>
Cc: Michael Heerdegen <michael_heerdegen@web.de>,
Lars Ingebrigtsen <larsi@gnus.org>,
17272@debbugs.gnu.org, 19064@debbugs.gnu.org
Subject: bug#17272: bug#19064: bug#17272: bug#19064: 25.0.50; `message' overwrites `y-or-n-p' prompt, so user misses it
Date: Tue, 12 Nov 2019 15:23:04 -0800 (PST) [thread overview]
Message-ID: <e959f613-0332-4c97-b8d2-3092da16295b@default> (raw)
In-Reply-To: <87tv78g2jw.fsf@mail.linkov.net>
> > `message', unlike `minibuffer-message', not only
> > interrupts input (switching to the echo area).
> > By doing so it also takes over that complete space.
> >
> > Yes, that hides your input temporarily - but that's
> > the point.
>
> No, `message' hides your input not temporarily,
> but permanently. That's the problem.
How so, _permanently_? That's not what I see,
ever.
Permanent hiding means your input is lost,
destroyed/irretrievable - impossible to show
again.
I've never seen `message' - or any other use of
the echo area, destroy minibuffer input. Input
is in the minibuffer, not in the echo area.
Completely separate - by design.
Maybe there's some particular scenario where
something that _looks_ like "permanent hiding"
seems to happen. If so, then it's that scenario
that needs fixing.
I see zillions of uses of `message' when the
minibuffer is active, and input is never hidden
permanently. And I don't see how it could be.
I notice the Subject line of this bug says that
`message' overwrites a prompt. If that happens
then (1) that prompt must be in the echo area,
not the minibuffer, and (2) presumably we're not
talking about input in the minibuffer anyway.
A minibuffer prompt is not in the echo area,
so it cannot be overwritten by `message'.
Sounds like you're doing something unusual,
which doesn't really involve prompting in the
minibuffer for minibuffer input.
What's more, `y-or-n-p' doesn't use (hasn't used)
the minibuffer. It prompts in the echo area,
and it uses `read-key', which doesn't use the
minibuffer. That's a main feature of `y-or-n-p'
and of `read-key' - no use of the minibuffer.
So you must really be doing something unusual,
if not unkosher. Sounds like you've painted
yourself into a corner and are now painting up
the walls. Maybe you've dreamed up some kind
of "solution" in search of a problem, or you've
created a problem out of thin air, which then
calls for a crazy "solution".
> And `minibuffer-message' fixes it both ways:
> when the minibuffer is active, it displays the
> message at the end of the minibuffer for 2 seconds.
Display at the end of the minibuffer input is
NOT a fix. It can't be. I already listed
specific advantages of `message', one of which
is to interrupt your input and use the entire
echo area to display a message.
`minibuffer-message' has its own specific
advantages, and thus specific use cases. It
does not replace `message' and its advantages.
> When the minibuffer is not active, it displays
> the message in the echo area for 2 seconds
> (the timeout is configurable).
That too is BAD. Code should be able to control
the interruption in the standard ways: `sit-for'
and `sleep-for'. Those allow much more control
than just a time limit for ephemeral display.
> > Don't stop _callers_ from determining the
> > appropriate behavior. If a caller uses
> > `message' then respect that. If the caller
> > does something stupid then fix the caller.
>
> Callers will be able to determine the
> appropriate behavior using new variable
> like `display-messages-in-minibuffer'.
I haven't seen the code or doc. But based on
what you say above, about your "configurable"
time limit, that doesn't sound promising, at all.
Beyond this - there's no substitute, whatever
you might cook up, for _also_ letting `message'
do what it's always done. This is about backward
compatibility, of course, but it's about much more
than that.
If you want to add some different behavior, you're
free to add it. But don't subtract the existing,
and very longstanding, behavior. Add your favorite
new behavior as an _addition_, letting users opt
in to choose it, if they want.
Hopefully, any damage you're doing with this you're
doing only in Lisp, so at least I (and others) will
be able to undo it - at least by redefining things
as they were. But it really should not come to that.
Sounds like a sad state of affairs - not happy to
see things proceed like this.
I expect a lot of damage from this, at least to my
use of Emacs and my code. Hope I'm wrong and it's
easy to undo it. The right thing would be for you
not to oblige anyone to do anything to retrieve the
previous (since Day One), sane behavior. _Opt-in_,
not just willy-nilly, destruction (or progress, as
you might see it).
If you push forward with this, and if it's not
opt-in, please document explicitly how to retrieve
the previous behavior, i.e., how to opt out.
next prev parent reply other threads:[~2019-11-12 23:23 UTC|newest]
Thread overview: 90+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-15 18:38 bug#19064: 25.0.50; `message' overwrites `y-or-n-p' prompt, so user misses it Drew Adams
2015-12-26 16:30 ` Lars Ingebrigtsen
2015-12-26 17:19 ` Drew Adams
2015-12-26 17:45 ` Michael Heerdegen
2015-12-26 17:57 ` Lars Ingebrigtsen
2019-10-07 17:41 ` bug#17272: " Lars Ingebrigtsen
2019-10-08 9:15 ` Michael Heerdegen
2019-10-08 15:44 ` bug#17272: " Lars Ingebrigtsen
2019-11-05 23:10 ` bug#19064: " Juri Linkov
2019-11-08 20:58 ` Lars Ingebrigtsen
2019-11-08 21:19 ` bug#19064: " Drew Adams
2019-11-09 23:01 ` Juri Linkov
2019-11-12 2:13 ` bug#17272: " Lars Ingebrigtsen
2019-11-12 15:34 ` Drew Adams
2019-11-12 22:20 ` Juri Linkov
2019-11-12 23:23 ` Drew Adams [this message]
2019-11-13 21:29 ` bug#17272: " Michael Heerdegen
2019-11-13 21:53 ` Juri Linkov
2019-11-13 23:24 ` bug#17272: " Drew Adams
2019-11-14 15:46 ` Michael Heerdegen
2019-11-14 16:28 ` bug#17272: " Drew Adams
2019-11-14 17:06 ` Michael Heerdegen
2019-11-14 17:17 ` Drew Adams
2019-11-14 20:29 ` Michael Heerdegen
2019-11-16 20:53 ` Juri Linkov
2019-11-16 22:37 ` Michael Heerdegen
2019-11-17 1:42 ` bug#19064: bug#17272: " Drew Adams
2019-11-17 21:58 ` Juri Linkov
2019-11-17 23:54 ` bug#19064: " Drew Adams
2019-11-17 5:52 ` Lars Ingebrigtsen
2019-11-17 5:52 ` Lars Ingebrigtsen
2019-11-17 21:59 ` bug#17272: " Juri Linkov
2019-11-18 21:10 ` Juri Linkov
2019-11-19 8:13 ` Lars Ingebrigtsen
2019-11-19 11:11 ` bug#19064: " João Távora
2019-11-19 22:39 ` bug#17272: " Juri Linkov
2019-11-19 23:38 ` João Távora
2019-11-20 22:10 ` Juri Linkov
2019-11-20 23:44 ` João Távora
2019-11-21 21:39 ` Juri Linkov
2019-11-22 7:48 ` Eli Zaretskii
2019-11-23 19:02 ` Juri Linkov
2019-11-23 19:14 ` Eli Zaretskii
2019-11-26 23:18 ` bug#19064: " Juri Linkov
2019-11-27 0:46 ` Drew Adams
2019-11-21 8:22 ` martin rudalics
2019-11-21 21:44 ` Juri Linkov
2019-11-22 8:08 ` martin rudalics
2019-11-23 18:56 ` Juri Linkov
2019-11-23 19:16 ` Eli Zaretskii
2019-11-19 22:28 ` Juri Linkov
2019-11-20 10:55 ` Lars Ingebrigtsen
2019-11-20 22:18 ` Juri Linkov
2019-11-21 21:54 ` Juri Linkov
2019-11-21 23:07 ` bug#19064: " Lars Ingebrigtsen
2019-11-23 21:54 ` Juri Linkov
2019-11-26 23:44 ` Juri Linkov
2019-11-27 11:55 ` bug#19064: " Lars Ingebrigtsen
2019-11-28 22:45 ` Juri Linkov
2019-11-06 22:18 ` Juri Linkov
2019-11-09 22:57 ` Juri Linkov
2019-11-10 9:46 ` martin rudalics
2019-11-10 20:45 ` bug#38164: quit-restore-window doesn't restore point in man Juri Linkov
2019-11-11 9:33 ` martin rudalics
2019-11-12 20:50 ` Juri Linkov
2019-11-13 8:04 ` martin rudalics
2019-11-13 21:29 ` Juri Linkov
2019-11-14 9:20 ` martin rudalics
2019-11-14 23:13 ` Juri Linkov
2019-11-15 8:13 ` martin rudalics
2019-11-18 21:21 ` Juri Linkov
2019-11-19 3:28 ` Eli Zaretskii
2019-11-19 7:56 ` martin rudalics
2019-11-19 16:06 ` Eli Zaretskii
2019-11-19 16:53 ` martin rudalics
2019-11-19 17:36 ` Eli Zaretskii
2019-11-19 18:15 ` martin rudalics
2019-11-19 23:03 ` Juri Linkov
2019-11-20 7:59 ` martin rudalics
2019-11-20 22:35 ` Juri Linkov
2019-11-20 16:02 ` Eli Zaretskii
2020-09-21 13:08 ` Lars Ingebrigtsen
2021-04-04 18:13 ` Basil L. Contovounesios
2021-04-04 18:28 ` Eli Zaretskii
2021-04-04 19:19 ` Lars Ingebrigtsen
2021-04-04 19:36 ` Eli Zaretskii
2021-04-04 19:40 ` Lars Ingebrigtsen
2021-04-04 19:38 ` Lars Ingebrigtsen
2015-12-26 17:53 ` bug#19064: 25.0.50; `message' overwrites `y-or-n-p' prompt, so user misses it Lars Ingebrigtsen
2015-12-26 18:10 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=e959f613-0332-4c97-b8d2-3092da16295b@default \
--to=drew.adams@oracle.com \
--cc=17272@debbugs.gnu.org \
--cc=19064@debbugs.gnu.org \
--cc=juri@linkov.net \
--cc=larsi@gnus.org \
--cc=michael_heerdegen@web.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.