我需要在 KDE Konsole 中使用 GNOME 终端颜色。
我不确定从哪里可以从 GNOME 终端获取最新的调色板,但我想这可能有效: https: //gitlab.gnome.org/GNOME/gnome-terminal/-/blame/master /src/terminal-profile-editor.cc?ref_type=heads#L198
static const GdkRGBA terminal_palettes[TERMINAL_PALETTE_N_BUILTINS][PALETTE_SIZE] =
{
/* Based on GNOME 3.32 palette: https://developer.gnome.org/hig/stable/icon-design.html.en#palette */
{
COLOR (0x1e, 0x1e, 0x1e), /* Suggested background for contrast */
COLOR (0xc0, 0x1c, 0x28), /* Red 4 */
COLOR (0x26, 0xa2, 0x69), /* Green 5 */
COLOR (0xa2, 0x73, 0x4c), /* Blend of Brown 2 and Brown 3 */
COLOR (0x12, 0x48, 0x8b), /* Blend of Blue 5 and Dark 4 */
COLOR (0xa3, 0x47, 0xba), /* Purple 3 */
COLOR (0x2a, 0xa1, 0xb3), /* Linear addition Blue 5 + Green 5, darkened slightly */
COLOR (0xff, 0xff, 0xff), /* Light 1 */
COLOR (0x5e, 0x5c, 0x64), /* Dark 2 */
COLOR (0xf6, 0x61, 0x51), /* Red 1 */
COLOR (0x33, 0xd1, 0x7a), /* Green 3 */
COLOR (0xe9, 0xad, 0x0c), /* Blend of Yellow 4 and Yellow 5 */
COLOR (0x2a, 0x7b, 0xde), /* Blend of Blue 3 and Blue 4 */
COLOR (0xc0, 0x61, 0xcb), /* Purple 2 */
COLOR (0x33, 0xc7, 0xde), /* Linear addition Blue 4 + Green 4, darkened slightly */
COLOR (0xd0, 0xcf, 0xcc) /* Blend of Light 3 and Light 4 */
},
— 总共 16 种颜色。
现在我需要将它们变成 KDE Konsole 调色板,但我不明白上面的颜色如何与 Konsole 配色方案编辑器中显示的颜色相对应:
各位有什么想法吗?
我宁愿建议简单地打开其首选项对话框,切换到其颜色选项卡并单击颜色以获取其十六进制值(例如
#ff0000
),而不是研究 GNOME Terminal 的源代码。您应该将这些一一复制到 Konsole 的颜色选择器中。通过打开 GNOME 终端的图形首选项对话框,与研究其源代码相比,哪种颜色对应于 Konsole 的哪种颜色应该更明显。
(您在其源代码中找到的内容是正确的,但您在那里看不到它们的实际颜色,您必须找到您想要使用的内置调色板,默认的前景色+背景色在其他地方定义,并且您必须从该格式转换为标准格式。这就是为什么我不建议从这里开始。)
不过,映射并不完全是 1:1。
Konsole 的“强烈前景”可能与 GNOME 终端的“粗体颜色”相匹配,但我不完全确定。我也不确定 Konsole 的“强烈背景”代表什么,这可能是 GNOME 终端所没有的。
Konsole 的“颜色”和“浓色”列,在“颜色 1”到“颜色 8”行中,与 GNOME 终端的“调色板”相匹配,只是垂直排列而不是水平排列。
“淡色”是一个很少使用的概念。Konsole 允许您配置它们中的每一个。GNOME Terminal 使用硬连线公式,我认为每个 R、G 和 B 十六进制值都是同一行中正常颜色值的 2/3。如果您愿意,您可以手动计算这些。例如,红色通道中的
#ff0000
十六进制ff
,即十进制255,它的2/3是十进制170,aa
十六进制。绿色和蓝色通道为 0,仍为 0。因此变为#aa0000
。另请注意,GNOME 终端有一个“以明亮的颜色显示粗体文本”复选框,在最近的版本中默认禁用,但我不确定 Konsole 支持其等效行为,我认为(虽然我可能是错的)它总是表现得像它在 GNOME 终端中启用。Konsole 有一个“以粗体字体绘制强烈的颜色”,但事实恰恰相反,我坚信这是一个错误的概念。
因此,您将无法获得 100% 完全相同的行为,但这就是您可以将颜色配置为尽可能接近的方法。