O terminal XFCE4 armazena as preferências do usuário em $XDG_CONFIG_HOME/xfce4/terminal/terminalrc
(normalmente, ~/.config/xfce4/terminal/terminalrc
- pode não existir se você não tiver alterado nenhuma preferência). Descobri que o Terminal XFCE4 observa esse arquivo e recarrega as configurações quando ele é alterado, para que você possa gravar nesse arquivo para alterar as configurações.
No entanto, não há uma única entrada que você possa editar para alterar as cores. As várias paletas são na verdade um conjunto de configurações. Por exemplo:
$ 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
E terminalrc
será semelhante:
$ 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
Como pode ser visto, não há como identificar facilmente qual paleta as cores vieram.
Criar um script não parece seguro, mas aqui está uma tentativa ineficiente:
#! /bin/bash
if ! [[ -f /usr/share/xfce4/terminal/colorschemes/.theme ]]
then
echo "No such colorscheme: "
exit 1
fi
cd ~/.config/xfce4/terminal
# strip settings from any themes
grep -Fxvf <(cat /usr/share/xfce4/terminal/colorschemes/*.theme) terminalrc > .terminalrc.tmp
grep -v -e Name -e Scheme "/usr/share/xfce4/terminal/colorschemes/.theme" >> .terminalrc.tmp
cp terminalrc terminalrc.bak
mv .terminalrc.tmp terminalrc
Copie isso para algum lugar no seu PATH
(por exemplo, ~/bin/xfce-color-switch
). Então:
$ xfce4-color-switch dark-pastels
$ xfce4-color-switch solarized
No such colorscheme: solarized
$ xfce4-color-switch solarized-dark
Você terá que lembrar os nomes do esquema de cores para isso, mas adicionarei instruções sobre como adicionar a conclusão da tabulação depois que eu os descobrir.