Function: hyperbole-set-key
hyperbole-set-key is an autoloaded, interactive and byte-compiled
function defined in hui-mini.el.
Signature
(hyperbole-set-key KEYMAP KEY BINDING)
Documentation
In KEYMAP, bind KEY to Hyperbole minibuffer BINDING.
If KEYMAP is nil, use the value of (global-key-map).
KEY is a key sequence; noninteractively, it is a string or vector of characters or event types, and non-ASCII characters with codes above 127 (such as ISO Latin-1) can be included if you use a vector.
BINDING is one of:
nil - immediately remove key binding from keymap
string - upon key press, execute the BINDING string as a key series
command - upon key press, run the command interactively.
Note that other local or minor mode bindings may shadow/override any binding made with this function.
Key Bindings
Source Code
;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hui-mini.el
;;;###autoload
(defun hyperbole-set-key (keymap key binding)
"In KEYMAP, bind KEY to Hyperbole minibuffer BINDING.
If KEYMAP is nil, use the value of (global-key-map).
KEY is a key sequence; noninteractively, it is a string or vector
of characters or event types, and non-ASCII characters with codes
above 127 (such as ISO Latin-1) can be included if you use a vector.
BINDING is one of:
nil - immediately remove key binding from keymap
string - upon key press, execute the BINDING string as a key series
command - upon key press, run the command interactively.
Note that other local or minor mode bindings may shadow/override any
binding made with this function."
(interactive
(let* ((menu-prompting nil)
(key (read-key-sequence "Set Hyperbole key globally: ")))
(setq hui:menu-keys "")
(list nil
key
;; Read Hyperbole minibuffer menu keys to bind to 'key' in 'keymap'
(concat
;; Normalize the key prefix that invokes the Hyperbole minibuffer menu
(kbd (key-description (car (where-is-internal 'hyperbole))))
(hui:get-keys)))))
(when (and keymap (not (keymapp keymap)))
(error "(hyperbole-set-key): First arg must be either nil or a keymap, not '%s'" keymap))
(unless keymap
(setq keymap (current-global-map)))
(or (vectorp key) (stringp key)
(error "(hyperbole-set-key): Second arg must be a vector or string key sequence, not '%s'" key))
(prog1 (cond ((stringp binding)
(if (string-empty-p binding)
(error "(hyperbole-set-key): Third arg must be a non-empty string")
(define-key keymap key `(lambda () (interactive) (kbd-key:act ,binding)))))
((or (null binding) (commandp binding))
(define-key keymap key binding))
(t
(error "(hyperbole-set-key): Invalid binding for {%s}: '%s'" key binding)))
(when (called-interactively-p 'interactive)
(message "{%s} set to invoke {%s}" (key-description key) binding))))