1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-24 10:38:38 +00:00

(where-is): Repport also aliases of the passed command.

This commit is contained in:
Juanma Barranquero 2002-11-07 16:46:11 +00:00
parent cd21c04ac9
commit 7a698dc1c5
2 changed files with 36 additions and 15 deletions

View File

@ -1,3 +1,7 @@
2002-11-07 Juanma Barranquero <lektu@terra.es>
* help.el (where-is): Repport also aliases of the passed command.
2002-11-07 Markus Rost <rost@math.ohio-state.edu>
* cus-dep.el (custom-make-dependencies): Fix comment inserted in

View File

@ -420,21 +420,38 @@ If INSERT (the prefix arg) is non-nil, insert the message in the buffer."
(list (if (equal val "")
fn (intern val))
current-prefix-arg)))
(let* ((remapped (remap-command definition))
(keys (where-is-internal definition overriding-local-map nil nil remapped))
(keys1 (mapconcat 'key-description keys ", "))
(standard-output (if insert (current-buffer) t)))
(if insert
(if (> (length keys1) 0)
(if remapped
(princ (format "%s (%s) (remapped from %s)" keys1 remapped definition))
(princ (format "%s (%s)" keys1 definition)))
(princ (format "M-x %s RET" definition)))
(if (> (length keys1) 0)
(if remapped
(princ (format "%s is remapped to %s which is on %s" definition remapped keys1))
(princ (format "%s is on %s" definition keys1)))
(princ (format "%s is not on any key" definition)))))
(let ((func (indirect-function definition))
(map nil)
(standard-output (if insert (current-buffer) t)))
(mapatoms #'(lambda (symbol)
(when (and (not (eq symbol definition))
(fboundp symbol)
(eq func (indirect-function symbol)))
(setq map (cons symbol map)))))
(princ (mapconcat
#'(lambda (symbol)
(let* ((remapped (remap-command symbol))
(keys (mapconcat 'key-description
(where-is-internal symbol
overriding-local-map
nil nil
remapped)
", ")))
(if insert
(if (> (length keys) 0)
(if remapped
(format "%s (%s) (remapped from %s)"
keys remapped symbol)
(format "%s (%s)" keys symbol))
(format "M-x %s RET" symbol))
(if (> (length keys) 0)
(if remapped
(format "%s is remapped to %s which is on %s"
definition symbol keys)
(format "%s is on %s" symbol keys))
(format "%s is not on any key" symbol)))))
(cons definition map)
";\nand ")))
nil)
(defun string-key-binding (key)