diff options
-rw-r--r-- | lisp/help.el | 17 | ||||
-rw-r--r-- | test/lisp/help-tests.el | 18 |
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 () |