Subject: bug#10191: dired-query (in dired-aux.el) fails for certain help-char's, Emacs 23 and 24

From: Christopher Genovese <[email-masked]>
Date: Fri, 2 Dec 2011 08:22:43 -0500

Hi Andreas,

    I understand that and tried to specifically address that point in my
report.
But I could have been clearer.

    I think that a change in this regard, even the minimal one I proposed,
is
worthwhile for at least two reasons. First, because setting help-char to
?\M-\C-h works
in terms of its main functionality (acting as a help character), it seems
unnecessary for
it to break a dired operation because of the formatting of a string.
Second, if the function
is going to be doctrinaire about help-char's type, then it has an
obligation, I think, to recognize
that not everyone uses a help "char" and might use help-event-list instead.
It should
then still do a characterp to avoid an error in those cases, possibly using
the car of
help-event-list for the error message when the characterp call returns
false.
This is not that different from my proposed change, and I'd be happy with
that.

     On the broader question, I would also argue that help-char should be
"help-event"
or "help-keyboard-event".  This is an example of one of the things in emacs
that are
IMHO too closely tied to the default keymap.  I set C-h to
delete-backward-char,
M-h to backward-kill-word, and C-M-h to help char. This is a quite
efficient arrangement
and should not cause breakage in simple services just because it deviates
from
the default. This is Emacs after all. (Also, from the naive user's
viewpoint, there
is not that much difference between specifying ?\M-\C-h and ?\C-h.  They
both *look*
like characters.)

    -- Chris

On Fri, Dec 2, 2011 at 03:36, Andreas Schwab <[email-masked]> wrote:

> Christopher Genovese <[email-masked]> writes:
>
> > For example, I set my help-char to ?\M-\C-h, which works fine in general.
> > But despite looking like a character, ?\M-\C-h does not satisfy
> > #'characterp, which causes
> > the problem. Technically perhaps, help-char should be a character but
> from
> > the user's point
> > of view, both of these should qualify.
>
> ?\M-\C-h isn't a character, it is a character with modifiers, and as
> such does not qualify.  A character is something which can be inserted
> in a buffer or string as-is, for example.
>
> Andreas.
>
> --
> Andreas Schwab, [email-masked]
> GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
> "And now for something completely different."
>