Subject: bug#55301: 27.2; RFE: Auto-create defcustom for declared minor mode keymap

From: Phil Hudson <[email-masked]>
Date: Mon, 9 May 2022 10:52:58 +0100

How about ":type '(alist :key-type key-sequence :value-type function)"?

On Mon, 9 May 2022 at 10:34, Lars Ingebrigtsen <[email-masked]> wrote:
>
> Phil Hudson <[email-masked]> writes:
>
> > What I am proposing is something along the lines of this: when a mode
> > (major or minor, it's strictly irrelevant) declares a keymap, part of
> > the processing of the expansion of the mode definition should include
> > a defcustom enabling the user to customize that keymap using the
> > Customize UI, rather than (only) by writing elisp code.  In other
> > words, where foo-mode-map is currently implemented (I assume) using a
> > defvar, that should change to a defcustom.  That's really all I'm
> > suggesting: change the defvar (or whatever) to a defcustom.
>
> Emacs doesn't have a Customize UI to alter keymaps, so changing defvars
> to defcustom isn't currently useful (because there's no :type that
> could be used other than `sexp').
>
> It would be possible to create such an UI, of course, but it would work
> quite differently than all other Customize widgets.  I don't think
> anybody wants to have the entire definitions of keymaps in their .emacs
> files -- they want to add a keystroke or remove a keystroke or two, and
> that's it.  (And, besides, they want to get new keystrokes that are
> added to the maps.)
>
> But it'd be nice to have; sure.
>
> --
> (domestic pets only, the antidote for overdose, milk.)
>    bloggy blog: http://lars.ingebrigtsen.no