summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/help.el17
-rw-r--r--test/lisp/help-tests.el18
2 files changed, 22 insertions, 13 deletions
diff --git a/lisp/help.el b/lisp/help.el
index 37aab15df05..15ab3192ad7 100644
--- a/lisp/help.el
+++ b/lisp/help.el
@@ -566,13 +566,16 @@ To record all your input, use `open-dribble-file'."
;; Key bindings
(defun help--key-description-fontified (keys &optional prefix)
- "Like `key-description' but add face for \"*Help*\" buffers."
- ;; We add both the `font-lock-face' and `face' properties here, as this
- ;; seems to be the only way to get this to work reliably in any
- ;; buffer.
- (propertize (key-description keys prefix)
- 'font-lock-face 'help-key-binding
- 'face 'help-key-binding))
+ "Like `key-description' but add face for \"*Help*\" buffers.
+KEYS is the return value of `(where-is-internal \\='foo-cmd nil t)'.
+Return nil if KEYS is nil."
+ (when keys
+ ;; We add both the `font-lock-face' and `face' properties here, as this
+ ;; seems to be the only way to get this to work reliably in any
+ ;; buffer.
+ (propertize (key-description keys prefix)
+ 'font-lock-face 'help-key-binding
+ 'face 'help-key-binding)))
(defcustom describe-bindings-outline t
"Non-nil enables outlines in the output buffer of `describe-bindings'."
diff --git a/test/lisp/help-tests.el b/test/lisp/help-tests.el
index 7f30b27b00d..833c32ffb27 100644
--- a/test/lisp/help-tests.el
+++ b/test/lisp/help-tests.el
@@ -55,18 +55,24 @@
(should (equal (help-split-fundoc nil t 'usage) nil))
(should (equal (help-split-fundoc nil t 'doc) nil))))
+(ert-deftest help--key-description-fontified ()
+ (should (equal (help--key-description-fontified
+ (where-is-internal #'next-line nil t))
+ "C-n"))
+ (should-not (help--key-description-fontified nil)))
+
;;; substitute-command-keys
(defmacro with-substitute-command-keys-test (&rest body)
`(cl-flet* ((test
- (lambda (orig result)
- (should (equal (substitute-command-keys orig)
- result))))
+ (lambda (orig result)
+ (should (equal (substitute-command-keys orig)
+ result))))
(test-re
- (lambda (orig regexp)
- (should (string-match (concat "\\`" regexp "\\'")
- (substitute-command-keys orig))))))
+ (lambda (orig regexp)
+ (should (string-match (concat "\\`" regexp "\\'")
+ (substitute-command-keys orig))))))
,@body))
(ert-deftest help-tests-substitute-command-keys/no-change ()