Subject: bug#35238: 27.0.50; Clarify eventp behaviour with booleans

From: "Basil L. Contovounesios" <[email-masked]>
Date: Sat, 13 Apr 2019 18:53:12 +0100

Eli Zaretskii <[email-masked]> writes:

> Please make sure the ELisp manual is kept in sync.

While skimming the manual, I came across recent-keys in (info "(elisp)
Recording Input").  Stefan extended this function in Emacs 25.1[1] with
an optional argument INCLUDE-CMDS which causes it to output "events of
the form (nil . COMMAND)".

(The manual wasn't updated to document this alternative behaviour, but I
can do that in addition to / instead of the eventp change if one of ye
doesn't beat me to it.)

The question is, should eventp continue returning non-nil for these
events of the form (nil . COMMAND)?  Or should recent-keys be changed to
return a different form of event?  If my assumption is correct that the
former option is preferred, I will check that the manual documents such
events consistently instead of changing the behaviour of eventp.

Note that (seq-every-p #'eventp (recent-keys t)) is currently non-nil,
and the only caller that specifies INCLUDE-CMDS non-nil is view-lossage,
which doesn't rely on eventp.

[1: eca1ea9655]: * lisp/help.el (view-lossage): ...
  2014-11-09 21:58:52 -0500
  https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=eca1ea96559e04e18a62a61208d501c557dd4cab

>  Also, does this need to be called out in NEWS?

Depends on what actually ends up needing to be changed, I think.
My original intention to treat events of the form (nil ...) as nil now
seems less plausible, so the only changes I foresee are docfixes.

Thanks,

-- 
Basil