在我的工作环境中,我使用xterm
,有时也gnome-terminal
使用。我喜欢 gnome 终端,但有些颜色比我的 xterm 更难阅读。
我想知道
- 为什么两个终端显示的颜色不同?
- 什么配置文件或设置控制这些颜色?
- 如何复制我的 xterm 颜色以在 gnome-terminal 中使用?
如果存在差异,当我查询$TERM
变量时,两个窗口都会报告xterm
。
左边是 xterm,右边是 gnome-terminal。特别注意第 4 行,xterm 是黄色,gnome-terminal 是橙色。
答案1
两个终端都假装是 xterm,而 xterm 又假装是 DEC 终端。它们都使用相同的字符转义序列来表示“切换到 Bold Red”或其他内容。但“Bold Red”是什么样子,则有待进一步解释。
您可能必须打开两个终端的首选项,检查两者的颜色数值,然后根据需要进行复制。我不确定如何在 XTerm 中转储颜色(我确定它是在 XResources 中编译的),但至少您可以截取此屏幕截图,在编辑器(例如 Gimp)中打开它,然后查看颜色。然后更改您的 Gnome 终端颜色以匹配。
答案2
xterm 的颜色可能是在 20 世纪 90 年代中期选择的,以或多或少地匹配CGA显示器。256 色和 88 色调色板由 Todd Larason 设计(补丁 #111)和 Stephen Wall(补丁 #115) 于 1999 年推出,旨在提供易于编程的调色板(并考虑到 8 色、16 色子集的兼容性)。除了对蓝色使用了,从那时起这些颜色就没有改变过。扩展(超过 16 种)颜色是使用脚本生成的编译默认值预设的。
任何颜色都可以在运行时使用以下方法改变控制序列,以及使用控制序列查询其值。xterm 源包含几个示例脚本,其中包括query-color.pl
,它展示了如何使用OSC 4
。
前 16 种颜色也对应于 X 资源,其值可以在
appres XTerm
gnome-terminal 和 konsole 都带有一些奇怪的颜色对比,这只能通过设计委员会参与外观和感觉来解释。因此,“黑色”可能实际上不是黑色,而是一种令人愉悦的灰色。两者都允许自定义,但都没有记录所使用的颜色(源代码除外)。
关于在 gnome-terminal 中输入配色方案信息的问题之前已经问过。以下是一些有用的链接:
- 配色方案(GNOME 帮助)
- 如何将颜色主题添加到 Gnome-Terminal 的 GUI 首选项中?
- 如何使 solarized 配色方案与 gnome-terminal、tmux 和 vim 配合使用?
如此处所述,gnome-terminal 通过随版本变化的工具来存储其设置(包括配色方案):