我在我的本地Linux机器上和远程集群的login节点上都在控制台窗口中使用了emacs。 我经常使用emacs,并且在我的.emacs文件中将前景色设置为白色,如下所示:
(set-foreground-color "white") (set-background-color "black")
但是,当我运行emacs时,前景不是白色的; 它是灰色的,很难阅读。 在我的Mac上,具有相同设置的控制台窗口中的emacs显示为正确的白色。 但是,在konsole和xterm的两个linux系统上,它都是灰色的。
如果有问题,我将TERM
设置为xterm-color,桌面运行RHEL 5,集群节点运行RHEL 4(CentOS)。
这是Linux设置terminal颜色的一些默认设置吗? 我怎么白变白?
注意:这是与控制台emacs,而不是X下的emacs -nw
如果你有DISPLAY
设置,那就是emacs -nw
。
在我的Emacs(这是运行在终端下,而不是X)颜色brightwhite
看起来不错。 在RHEL5我有我的TERM
环境变量设置为xterm-256color
。 如果工作正常,你应该可以运行这些脚本并看到256色的输出。 在Emacs下,当你做Mx list-colors-display
时,你应该看到一个相当平滑的颜色斜坡(没有明显重复的颜色)。 如果没有,你可能错过了正确的termcap条目(尝试安装libtermcap-devel
包,我认为)。
如果我将TERM
更改为xterm-color
,则在list-colors-display
的输出中, brightwhite
会显示为灰色。
我不确定关于RHEL4。
关于什么:
(set-foreground-color "brightwhite")
回应评论:
在emacs中,运行Mx list-colors-display
,它应该显示emacs认为可以在终端上使用的所有颜色。
如果你只是使用反向视频的控制台版本是足够好的?
$ emacs -nw -rv
看起来你只是设置前景色。
(set-foreground-color "white") (set-foreground-color "black")
我相信你的意思是后者set-background-color
。
运行Emacs时我可以确认这一点:
$ emacs -nw -bg black -fg white
太。
我做了一些实验,你可以在emacs中设置控制台的颜色,但是你仅限于这个调色板:
black blue cyan green magenta red white yellow
你得到的白色是灰色的; 全明亮的白色被保留为粗体文本。 所以,如果你跑
Mx facemenu-set-bold
你会得到大胆的(明亮的白色)文本为以后插入。
我没有运气试图强制默认的面部大胆。 (我真的不明白emacs中的脸是如何工作的。)
我还发现我在终端模式下有奇怪的颜色,并最终追溯到字体定制。 我有这样的事情:
(custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(default ((t (:inherit nil :stipple nil :background "#000a00" :foreground "#ffffed" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 113 :width normal :foundry "unknown" :family "Droid Sans Mono")))))
我删除了前景和背景属性,一切开始寻找hunky-dory。