Subject: bug#8180: 24.0.50; verbose, confusing y-or-n-p prompts in `find-file-no-select'

From: "Drew Adams" <[email-masked]>
Date: Sat, 5 Mar 2011 07:16:35 -0800

There are several `y-or-n-p' prompts in `find-file-no-select' that are
very long (e.g. 6 lines!) and confusing.  Some other (alternative)
user interaction should be found for this.  Either just a short prompt
or, if it is important to convey some background info, then also pop
up an informative window for that.  But do not try to provide such
info in the prompt.
 
This was orginally part of bug #8177.  Eli correctly suggested a
separate bug report for it.  Given the other problem reported in #8177,
these prompts were being seen frequently.  Normally they are seldom
seen, which is probably why this has been broken since Emacs 22.
 
The rest of this bug description is taken from #8177.

The annoying dialog you get uses multiple lines of text (6!) to prompt
in the minibuffer (or in a popup, depending on how you invoke the
function) for a y-or-n answer.  The prompt text is *far* too long and
pretty much incomprehensible to an average user.  This is the `y-or-n-p'
prompt (including its line breaks):
 
"The file maybe-a-very-long-file-name.jpg is already visited literally,
meaning no coding system decoding, format conversion, or local variables.
You have asked to visit it normally,
but Emacs can only visit a file in one way at a time.
 
Do you want to revisit the file normally now? (y or n) "
 
That is _ridiculously_ long and confusing.  It is horribly user
unfriendly.  `find-file-noselect' is now filled to the gills with such
gobbledygook prompts, each more twisted and verbose than the next.
 
It's hard to believe that we have been prompting users this way since
Emacs 22 (the prompts for this are much shorter in Emacs 21).
Fortunately, these prompts not encountered very often.
 
In GNU Emacs 24.0.50.1 (i386-mingw-nt5.1.2600)
 of 2011-02-28 on 3249CTO
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (4.4) --no-opt --cflags
-Ic:/imagesupport/include'