【发布时间】:2011-02-14 02:33:46
【问题描述】:
我想在 minibuffer 中显示一个彩色的文本字符串,但是当我使用 'message' 函数时,文本属性被剥离。
【问题讨论】:
标签: emacs elisp font-lock emacs-faces minibuffer
我想在 minibuffer 中显示一个彩色的文本字符串,但是当我使用 'message' 函数时,文本属性被剥离。
【问题讨论】:
标签: emacs elisp font-lock emacs-faces minibuffer
为我工作:
(message "%s" (propertize "foo" 'face '(:foreground "red")))
您可能有(message (propertize ...)),它将属性化字符串解释为格式控制字符串,因此剥离了它的属性。
【讨论】:
(defun lawlist-message (input) (interactive) (message (propertize input 'face 'font-lock-warning-face)))
*Messages* 缓冲区中?
#("foo" 0 3 (face (:foreground "red"))),而不是显示红色foo,看到这里an explanation,原因是显示了消息,但随后打印了表达式的结果,它隐藏了消息。将其放入 (interactive) 使其按预期工作。