终端模式运行Emacs时如何修改minibuffer的文本字体颜色?
修改终端模式下Emacs minibuffer文本颜色配置
配置方法
直接编辑~/.emacs文件,添加如下elisp配置即可,该配置仅在非窗口(terminal)模式下生效,不会影响GUI版Emacs的显示效果:
(when (not (display-graphic-p)) ;; 调整minibuffer提示文本(默认深蓝色区域)的前景色 (set-face-attribute 'minibuffer-prompt nil :foreground "cyan" :weight 'normal) ;; 调整minibuffer内用户输入文本的前景色 (set-face-attribute 'minibuffer nil :foreground "white"))
参数说明
:foreground后面的参数为文本颜色,可直接替换为Emacs支持的命名颜色,常用的高对比度选项有white、green、yellow、lightblue,适配GNOME Terminal默认色板显示正常。- 如果不确定看不清的文本对应的face名称,可将光标移到对应文本位置,执行
M-x describe-face后连续按两次回车,即可查看当前文本绑定的face,替换代码中对应的face名称即可精准调整。 - 临时测试效果时,可将上述代码粘贴到
*scratch*缓冲区,将光标移到代码末尾按下C-j执行,效果会立即生效,确认显示符合预期后再写入配置文件永久保存。
配置保存后,后续以终端模式启动Emacs时会自动加载该配置,Red Hat + GNOME Terminal环境下无需额外调整终端设置。
内容的提问来源于stack exchange,提问作者HelloGoodbye
相关产品推荐
相关产品推荐

