From: Philip Kaludercic Date: Thu, 11 Apr 2024 07:00:50 +0000 (+0200) Subject: Allow 'help-quick' to use a non-global keymap X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=52a2b5d95c1a16e0f2b32eea597ec7a606f981fd;p=emacs.git Allow 'help-quick' to use a non-global keymap * lisp/help.el (help-quick-sections): Mention 'help-quick-use-map' in docstring. (help-quick-use-map): Add new variable, defaulting to the global-map. (help-quick): Use new variable. (cherry picked from commit 6c721af9c8ee2229af57491cc2833f6743c8ddab) --- diff --git a/lisp/help.el b/lisp/help.el index 97d0bfaa731..9b020486f55 100644 --- a/lisp/help.el +++ b/lisp/help.el @@ -171,9 +171,15 @@ Value should be a list of elements, each element should of the form (GROUP-NAME (COMMAND . DESCRIPTION) (COMMAND . DESCRIPTION)...) -where GROUP-NAME is the name of the group of the commands, -COMMAND is the symbol of a command and DESCRIPTION is its short -description, 10 to 15 characters at most.") +where GROUP-NAME is the name of the group of the commands, COMMAND is +the symbol of a command and DESCRIPTION is its short description, 10 to +15 characters at most. The bindings for COMMAND are looked up from the +keymap specified in `help-quick-use-map'.") + +(defvar help-quick-use-map global-map + "Keymap that `help-quick' should use to lookup bindings. +Avoid changing the global value of this variable. Instead bind a +different map dynamically.") (declare-function prop-match-value "text-property-search" (match)) @@ -193,7 +199,7 @@ the documentation of the command bound to that key sequence." (let ((max-key-len 0) (max-cmd-len 0) keys) (dolist (ent (reverse (cdr section))) (catch 'skip - (let* ((bind (where-is-internal (car ent) nil t)) + (let* ((bind (where-is-internal (car ent) help-quick-use-map t)) (key (if bind (propertize (key-description bind)