unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
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#19064: bug#17272: bug#19064: bug#17272: bug#19064: 25.0.50; `message' overwrites `y-or-n-p' prompt, so user misses it
Date: Sun, 17 Nov 2019 15:54:20 -0800 (PST)	[thread overview]
Message-ID: <4ffe34ef-019e-49bf-b2b0-76ee9ce88fcf@default> (raw)
In-Reply-To: <87lfsew4ek.fsf@mail.linkov.net>

> > So you're saying it wasn't a mistake for you to say
> > that _user input_ (not a prompt) is permanently
> > hidden?
> 
> The minibuffer is composed of both the prompt and user input.
> Both the prompt and user input are hidden permanently
> by the message covering the whole minibuffer.

It was about `y-or-n-p', which, I repeat, does NOT
use the minibuffer.  It prompts in the echo area,
and it calls `read-key', which does not read textual
input from anywhere - certainly not the minibuffer.

You are doubling down, but you haven't yet provided
any recipe that shows that user input gets hidden
permanently.  The only thing you've shown is that
an echo-area prompt can be overwritten, and so be
lost, by subsequent echo-area output (such as from
`message').  And that's just what the original bug
reports reported in the first place!

Still, you repeat that user input is permanently
hidden.  Please show how.

> > If you had seen `(yes or no)' then you would be
> > using the minibuffer.  And if you had started to
> > type, say, `ye' for `yes', then your minibuffer
> > input would have been obscured only temporarily by
> > the compilation message.
> 
> Not temporarily, but permanently.

Not when I follow your recipe.  And not even if I
redefine `dired-deletion-confirmer' as `y-or-n-p'.

I guess you've indirectly confirmed that you did
redefine `dired-deletion-confirmer' as `y-or-n-p'?
Otherwise, how is it that you saw `(y or n)' and
not `(yes or no)'?

But if you did that then the `y-or-n-p' prompt
would be sent to the echo area; it would not be
used in the minibuffer.  The minibuffer wouldn't
be involved in your recipe at all.

On the other hand, you now seem to be indirectly
saying that you did see `(yes or no)'.  Is that
it?  Just what is your recipe?  Please start from,
say, `emacs -Q' with, say, Emacs 26.3.

Writing to the echo area does not affect minibuffer
input.  And it does not exit the minibuffer.  It
obscures minibuffer input _temporarily_, until you
hit a key, for example.

AFAIK, this is just a fact.  I know of no possibility
that allows writing to the echo area to lose your
minibuffer input or hide it permanently.

For a write to the echo area to do that, the echo
area would need to permanently hide the minibuffer.
I don't see that happening.

So no, I disagree with a claim that minibuffer
input is permanently hidden.  Until you can show
a recipe to reproduce that.

> > Using the echo area for a "prompt" is, IMO, not a
> > great idea.
> 
> I agree, this is why using the minibuffer is better.

Yes.  But only when it makes sense to use the
minibuffer. That's generally not the case for
reading a single char or a key sequence.  We have
`read-char' and `read-key' for a reason.

The minibuffer is not the best UI for every
interaction.  (And that's coming from someone who
uses the minibuffer for more than most people do.)

Is your plan to make `read-key' and such use the
minibuffer?  I _really_ hope not.  And I hope you
won't do that to `y-or-n-p'.

As I acknowledged - and as I reported originally
in bug #19064, there _is_ a problem with prompting
in the echo area, which is what `y-or-n-p' does
(likewise, other functions that call things like
`read-key').

I mentioned some possible remedies for that
in my previous mail (and before that).  And I
mentioned a different remedy in my original
report for #19064.

And the remedy I suggested in the #19064 report
was apparently the same one given by the OP of
#17272.  We both suggested, independently, that
`message' be made to hold off, if some dialog is
in progress that uses the echo area for a prompt
and that reads a char/key.

And Michael suggested another approach, also
reasonable.

Just what the right fix is for those two merged
bugs can be discussed.  But neither involves the
minibuffer.

And neither should be "fixed" by making it involve
the minibuffer.  And AFAICT, any discussion of the
minibuffer in the context of these two bugs is just
a distraction or obfuscation.

The problem is this: losing an echo-area prompt by
`y-or-n-p' because of a subsequent write to the
echo area, in particular by `message'.

The problem reported by these two bugs has nothing
whatsoever to do with the minibuffer, AFAIK.

Why you introduced the minibuffer into this, I don't
know.  If there's another bug, which involves the
minibuffer (e.g., input loss or permanent hiding
in some way), then maybe file a bug report for that?
This bug - these 2 merged bugs, are not about the
minibuffer.  Or if you really think they are, please
explain how.





  reply	other threads:[~2019-11-17 23:54 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                       ` bug#17272: " Drew Adams
2019-11-13 21:29                     ` 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                                           ` Drew Adams [this message]
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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4ffe34ef-019e-49bf-b2b0-76ee9ce88fcf@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 public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).