Я хочу отобразить цветную строку текста в минибуфере, но когда я использую функцию «сообщение», текстовые свойства удаляются.
Как в Emacs отобразить сообщение в минибуфере со свойствами шрифта?
Ответы (1)
Работает на меня:
(message "%s" (propertize "foo" 'face '(:foreground "red")))
У вас, вероятно, был (message (propertize ...))
, который интерпретирует строку с свойствами как строку управления форматом и, следовательно, лишает ее свойств.
person
huaiyuan
schedule
30.04.2010
Есть ли способ сохранить цвет в буфере
*Messages*
?
- person AdrieanKhisbe; 17.07.2014
Если вы видите
#("foo" 0 3 (face (:foreground "red")))
вместо красного foo
, см. здесь объяснение, причина в том, что отображается сообщение, но затем печатается результат выражения, который скрывает сообщение. Помещение его в (interactive)
заставляет его работать так, как ожидалось.
- person Suzanne Soy; 09.02.2016