GNU bug report logs - #54161
27.2; `define-minor-mode' with alist of key bindings

Previous Next

Package: emacs;

Reported by: Drew Adams <drew.adams <at> oracle.com>

Date: Fri, 25 Feb 2022 17:49:02 UTC

Severity: normal

Found in version 27.2

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 54161 <at> debbugs.gnu.org (full text, mbox):

From: Drew Adams <drew.adams <at> oracle.com>
To: Drew Adams <drew.adams <at> oracle.com>, "54161 <at> debbugs.gnu.org"
 <54161 <at> debbugs.gnu.org>
Subject: RE: 27.2; `define-minor-mode' with alist of key bindings
Date: Fri, 25 Feb 2022 22:33:01 +0000
> The doc (both Elisp manual and doc string) says this:
> 
>  The optional argument KEYMAP specifies the keymap for the minor
>  mode.  If non-'nil', it should be a variable name (whose value is a
>  keymap), a keymap, or an alist of the form
> 
>       (KEY-SEQUENCE . DEFINITION)
> 
>  where each KEY-SEQUENCE and DEFINITION are arguments suitable for
>  passing to 'define-key'.
> 
> I think that's the case in these examples, no?  Both (kbd "C-o") and
> "\C-o" are suitable args for `define-key'.
> 
> What am I missing?

I guess I understand it now.  I think the language
about something "suitable for passing" to `define-key'
is what's misleading, and confused me.  Usually we
speak instead of an argument that is "acceptable to
function ____".  "Passing" suggests an unevaluated
value you're passing, which is then evaluated as the
actual argument for the function.

But even that wouldn't be as clear as this could be.
I'd suggest making it very clear somehow, that neither
KEY-SEQUENCE nor DEFINITION gets evaluated.  Maybe add
a short example.

In any case, you can close this bug, if you like.
Consider it user feedback of something I found confusing.






This bug report was last modified 3 years and 135 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.