我希望能够在现有的 rxvt-unicode 终端窗口中在浅色和深色方案之间切换,就像在 gnome-terminal 中切换配置文件一样。
最好的方法是在脚本之外定义颜色.Xresources
吗?
我将以下内容添加到我的文件中,以按和或或~/.Xresources
即时更改颜色。Ctrl789
! change to red background
URxvt.keysym.C-7: command:\033]11;#ff0000\007
! change to light background
URxvt.keysym.C-8: command:\033]11;#ffffff\007
! change to dark gray background
URxvt.keysym.C-9: command:\033]11;#777777\007
Run Code Online (Sandbox Code Playgroud)
如果要同时设置前景色和背景色,只需连接命令即可(有些颜色是通过名称定义的):
! change to red background
URxvt.keysym.C-7: command:\033]11;#ff0000\007\033]10;yellow\007
Run Code Online (Sandbox Code Playgroud)
您可以使用一个简单的echo
命令来测试您的颜色,如下所示:
echo -e '\033]11;#ff0000\007\033]10;yellow\007' # changes to red background and yellow foreground
Run Code Online (Sandbox Code Playgroud)
我使用代码11 作为背景颜色,使用代码10 作为前景色。Thomas Dickey引用的 Urxvt 定义表明使用49 和 39代替(我测试过并且也有效)。
如果您想像 gnome-terminal (或 konsole)一样切换配置文件,那就是对正在运行的终端进行更改。 xrdb
不会那样做的。
如果您想更改前景色/背景默认颜色,可以使用 xterm动态颜色转义序列(rxvt-unicode 实现的,正如我在Urxvt:动态更改背景颜色 中所述)。