Subject: Re: bug#32562: 26; `read-char(-exclusive)' and `characterp'

From: Eli Zaretskii <[email-masked]>
Date: Tue, 11 Sep 2018 10:57:34 +0300

> Date: Mon, 10 Sep 2018 12:48:22 -0700 (PDT)
> From: Drew Adams <[email-masked]>
> Cc: [email-masked], [email-masked]
> 
> > > > A character with modifiers doesn't satisfy characterp, but it is still a
> > > > character (which read-char can return).
> > >
> > > Yes, well, that's what I found a bit confusing wrt the
> > > doc and function names. It wasn't (isn't?) too clear
> > > just what we mean by "character", in that case.
> > 
> > I made the documentation say "character event" where it matters.
> 
> I imagine that you made it clearer (I don't have the new doc).

I hope so.

> But see what I replied to Andreas. It seems like we talk in some
> places about reading a character even if what gets read might
> not be `characterp'. "Character event" doesn't clarify that, for me.
> 
> Seems like the doc (but I don't have time now to search it)
> doesn't distinguish "character" meaning something that is
> `characterp' from other meanings of it (not sure what those
> are, but apparently `read-char' can return such things).

The changes I made can be seen here:

  http://git.savannah.gnu.org/cgit/emacs.git/commit/?h=emacs-26&id=5cf282d65f10f59f7efa63359dfd2b2e124943da

Please read them (in their context of surrounding manual text, of
course), and then see if something is still unclear.  Otherwise, this
discussion is too theoretical to be useful.

> It's not clear to me, at least. Why isn't `chararcterp' necessary
> and sufficient for testing whether something is a character?

It is.  But it is not sufficient for testing whether something is a
character input event, because an input event can include modifiers,
and valid character codepoints don't include modifiers.