summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorStefan Kangas <stefan@marxist.se>2021-12-26 00:45:50 +0100
committerStefan Kangas <stefan@marxist.se>2021-12-26 17:03:36 +0100
commit787030b0212d5933c3e4a16ece60b4e2ba8caea4 (patch)
tree3aeb340132f529452612e55dc9d6077d58188003 /lisp/emacs-lisp
parent68f15e815e0a475a13d8169cc5d163cf05e7e524 (diff)
downloademacs-787030b0212d5933c3e4a16ece60b4e2ba8caea4.tar.gz
emacs-787030b0212d5933c3e4a16ece60b4e2ba8caea4.tar.bz2
emacs-787030b0212d5933c3e4a16ece60b4e2ba8caea4.zip
read-multiple-choice: Add face when key not in name string
* lisp/emacs-lisp/rmc.el (rmc--add-key-description): Add face property also when key is not in the name string. * test/lisp/emacs-lisp/rmc-tests.el (test-rmc--add-key-description/with-attributes) (test-rmc--add-key-description/non-graphical-display): Update tests.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/rmc.el13
1 files changed, 10 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/rmc.el b/lisp/emacs-lisp/rmc.el
index 2f4b10efbbd..6264220cd09 100644
--- a/lisp/emacs-lisp/rmc.el
+++ b/lisp/emacs-lisp/rmc.el
@@ -28,15 +28,22 @@
(defun rmc--add-key-description (elem)
(let* ((name (cadr elem))
(pos (seq-position name (car elem)))
+ (graphical-terminal
+ (display-supports-face-attributes-p
+ '(:underline t) (window-frame)))
(altered-name
(cond
;; Not in the name string.
((not pos)
- (format "[%c] %s" (car elem) name))
+ (let ((ch (char-to-string (car elem))))
+ (format "[%s] %s"
+ (if graphical-terminal
+ (propertize ch 'face 'read-multiple-choice-face)
+ ch)
+ name)))
;; The prompt character is in the name, so highlight
;; it on graphical terminals.
- ((display-supports-face-attributes-p
- '(:underline t) (window-frame))
+ (graphical-terminal
(setq name (copy-sequence name))
(put-text-property pos (1+ pos)
'face 'read-multiple-choice-face