手动更改 xfce4 终端的配色方案

mit*_*trx 9 xfce colors themes xfce4-terminal

我想绑定一个快捷方式来更改我的日晒配色方案(深色和浅色)。为此,我需要知道终端更改其配色方案的命令,但我还没有找到这样的命令,我不得不一次又一次地转到首选项菜单并切换预设方案。有没有办法为终端配色方案制作这种切换器?

mur*_*uru 9

XFCE4 终端将用户首选项存储在$XDG_CONFIG_HOME/xfce4/terminal/terminalrc(通常,~/.config/xfce4/terminal/terminalrc- 如果您没有更改任何首选项,则可能不存在)。我发现 XFCE4 终端监视此文件并在更改时重新加载设置,因此您可以写入此文件以更改设置。

但是,您无法编辑单个条目来更改颜色。各种调色板实际上是一组设置。例如:

$ cat /usr/share/xfce4/terminal/colorschemes/solarized-dark.theme 
[Scheme]
Name=Solarized (dark)
Name[bg]=???????? (?????)
Name[fr]=Solarisé (foncé)
Name[nl]=Overbelicht (donker)
Name[th]=???????? (???)
Name[uk]=?????????? (??????)
ColorForeground=#839496
ColorBackground=#002b36
ColorCursor=#93a1a1
TabActivityColor=#dc322f
ColorPalette=#073642;#dc322f;#859900;#b58900;#268bd2;#d33682;#2aa198;#eee8d5;#002b36;#cb4b16;#586e75;#657b83;#839496;#6c71c4;#93a1a1;#fdf6e3
ColorBold=#93a1a1
ColorBoldUseDefault=FALSE
Run Code Online (Sandbox Code Playgroud)

terminalrc看起来像:

$ cat .config/xfce4/terminal/terminalrc                           
[Configuration]
ColorForeground=#839496
FontName=Ubuntu Mono 12
ColorBackground=#002b36
ColorCursor=#93a1a1
ColorBold=#93a1a1
ColorBoldUseDefault=FALSE
ColorPalette=#073642;#dc322f;#859900;#b58900;#268bd2;#d33682;#2aa198;#eee8d5;#002b36;#cb4b16;#586e75;#657b83;#839496;#6c71c4;#93a1a1;#fdf6e3
TabActivityColor=#dc322f
TabActivityColor=#dc322f
Run Code Online (Sandbox Code Playgroud)

可以看出,无法轻松识别颜色来自哪个调色板。

编写此脚本似乎并不安全,但这是一种低效的尝试:

$ cat /usr/share/xfce4/terminal/colorschemes/solarized-dark.theme 
[Scheme]
Name=Solarized (dark)
Name[bg]=???????? (?????)
Name[fr]=Solarisé (foncé)
Name[nl]=Overbelicht (donker)
Name[th]=???????? (???)
Name[uk]=?????????? (??????)
ColorForeground=#839496
ColorBackground=#002b36
ColorCursor=#93a1a1
TabActivityColor=#dc322f
ColorPalette=#073642;#dc322f;#859900;#b58900;#268bd2;#d33682;#2aa198;#eee8d5;#002b36;#cb4b16;#586e75;#657b83;#839496;#6c71c4;#93a1a1;#fdf6e3
ColorBold=#93a1a1
ColorBoldUseDefault=FALSE
Run Code Online (Sandbox Code Playgroud)

将此复制到您的某个位置PATH(例如,~/bin/xfce-color-switch)。然后:

$ xfce4-color-switch dark-pastels
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

$ xfce4-color-switch solarized   
No such colorscheme: solarized
$ xfce4-color-switch solarized-dark
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

您必须为此记住颜色方案名称,但是一旦我弄清楚它们,我将添加有关如何添加制表符完成的说明。


Vas*_*kov 7

更好的方法是:创建自己的配色方案,并让自己从众多配色方案中选择一个。

为此,请创建目录:

mkdir -p ~/.local/share/xfce4/terminal/colorschemes
Run Code Online (Sandbox Code Playgroud)

并将这样的文件放在里面:

[Scheme]
Name=my good profile
ColorForeground=#4ccd4ccd4ccd
ColorBackground=#f851f465ebe7
TabActivityColor=#d8d8a9a97f7f
ColorCursor=#f0f0b6b66666
ColorSelection=#16163b3b5959
ColorPalette=rgb(0,0,0);rgb(170,0,0);rgb(0,170,0);rgb(170,85,0);rgb(0,0,170);rgb(170,0,170);rgb(0,138,138);rgb(170,170,170);rgb(85,85,85);rgb(255,85,85);rgb(85,255,85);rgb(196,160,0);rgb(85,85,255);rgb(255,85,255);rgb(68,204,204);rgb(255,255,255)
Run Code Online (Sandbox Code Playgroud)

如果您的~/.config/xfce4/terminal目录中已经配置了 terminalrc 文件,则只需复制相应的行即可。

执行此操作后,您的新配色方案将出现在主列表中。因此,例如,您可以同时拥有自定义白色主题和自定义黑色主题。