...
setenv PAGER less
setenv BLOCKSIZE K
setenv CLICOLOR
# Colors!
set red="%{\033[1;31m%}"
set green="%{\033[0;32m%}"
set yellow="%{\033[1;33m%}"
set blue="%{\033[1;34m%}"
set magenta="%{\033[1;35m%}"
set cyan="%{\033[1;36m%}"
set white="%{\033[0;37m%}"
set end="%{\033[0m%}" # This is needed at the end
...
# Prompt style
set prompt = "${yellow}`/bin/hostname -s` %#${end} "
set promptchars = "%#"
(这仅针对 X11,而不是 Wayland 或其他显示管理系统。其中一些技术可以使用其他工具应用,例如GNOME Shell的辅助功能。)
我可以想到两种获得琥珀色显示的方法:插入一个合成插件来修复所有颜色,并创建一个颜色配置文件将所有颜色校正为琥珀色等价物。这两者都可能涉及比它们值得付出更多的努力(除了学习方面)。
正如sigvei 的回答中所解释的那样,您可以通过操纵每个通道的伽玛来获得原色显示的良好近似值;
xcalib
也可以访问它,并允许直接控制亮度和对比度以及指定伽马值:结果显示为绿色。亮度和对比度应用于伽马斜坡,因此
xrandr
可以让您获得相同的结果。仍然可以更精细地控制伽马斜坡,但这不会允许您将所有内容重新映射为琥珀色。您可以将通道“钳制”到特定范围,例如,鲜红色会引入一些绿色,因此看起来更像琥珀色,但深红色会出现绿色......
以下代码显示了如何解决这个问题(没有错误处理):
(您需要
-lX11 -lXxf86vm
链接。)xrandr --output $OUTPUT --gamma 1:0.01:0.01
为您提供几乎单色的红底黑字。三元组数字是用于伽马校正的 rgb 值,以 : 分隔,范围为 0-1。替换
1:0.01:0.01
为0.01:1:0.01
绿色和0.01:0.01:1
蓝色。除了这三种基本颜色之外,很难制作任何其他颜色。一旦你开始让一种以上的颜色通过,它就会变得非常明显。此方法仅适用于深色/黑色背景,因为亮白色的伽马校正只是白色。
用于
xrandr -q
查找要用于的输出 ID$OUTPUT
;例如,我的笔记本电脑屏幕是 LVDS-1。如果您使用支持插件的合成窗口管理器,您可能会制作一个插件来根据需要更改屏幕像素,即计算输入像素的亮度并使用琥珀色调制结果(根据需要来回应用伽马校正)。
这是一个破解 KDE 窗口管理器 KWin 中的反转效果的示例,以实现此目的。这个 hack 包括简单地用自定义代码替换位于 KWin 源代码树下的反转效果着色器
effects/invert/data/1.40/invert.frag
(假设您的 GPU 能够支持 GLSL 1.40):在 KDE4 KWin 中,您可以简单地替换安装到的着色器文件(已在上面给出的代码
/usr/share/apps/kwin/shaders/1.40/invert.frag
中替换为)。不幸的是,从 KDE5 开始,着色器作为 Qt 资源内置在插件二进制文件中,因此您必须使用在源树中编辑的文件重新编译 KWin,才能应用新的着色器。texcoord0
varyingTexCoords
结果看起来像下面的屏幕截图所示,当效果通过其快捷键组合激活时(在 KDE4 KWin 上,在带有专有
nvidia
驱动程序的 Geforce GTX 750Ti 上测试)。注意鼠标光标保持不变,因为它通常不是由窗口管理器渲染的,所以它应该以另一种方式改变,或者像缩放效果那样模拟。哇!虽然可以更改终端的颜色。我很确定您不打算将您的桌面体验转换为灰度。
也就是说,这里涉及到几个活动部件。最相关的是您选择的终端模拟器。例如
xterm
( FreeBSD ) ( Linux ) 允许对表示的许多方面进行修改。如果您正在寻找黑色背景上的琥珀色文本(琥珀色单色)。你可以这样实现在我的桌面左上角创建一个 87 行 x 57 列的 Xterm 窗口,其背景为黑色,带有琥珀色文本,使用我的登录 shell 和琥珀色闪烁块光标
您甚至可以更改指针的颜色
-ms color
注意我选择了金色,因为它看起来最接近我记得我的琥珀色单色显示器的实际颜色。您可以在X11 颜色表中找到所有可用的颜色
说到登录外壳;另一个影响因素是您选择的外壳。我的是(t)csh,鉴于我对此很熟悉,我将为此提供另一个示例;
这是我的相关摘录
.cshrc
这将有效地在黑色背景上提供琥珀色提示。您可以调整
ANSI
转义序列以获得您正在寻找的确切黄色(琥珀色)阴影。您也可以将这些转义序列应用于任何其他 shell 提示符。