Измените цветовую схему для терминала xfce4 вручную

Я хочу связать ярлык, чтобы изменить мои соляризованные цветовые схемы (темные и светлые). Для этого мне нужно знать команду для терминала, чтобы изменить его цветовую схему, но я не нашел такой, и мне нужно время от времени переходить в меню настроек и переключать предустановленные схемы. Есть ли способ сделать такой тип переключателя для цветовых схем терминала?

7
задан 21 September 2015 в 00:33

2 ответа

Терминал 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

И 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

Как видно, нет никакого способа легко определить, из какой палитры цвета прибыли.

Сценарии это не кажется безопасным, но здесь является неэффективной попыткой:

#! /bin/bash
if ! [[ -f /usr/share/xfce4/terminal/colorschemes/$1.theme ]]
then
    echo "No such colorscheme: $1"
    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/$1.theme" >> .terminalrc.tmp
cp terminalrc terminalrc.bak
mv .terminalrc.tmp terminalrc

Копия это к где-нибудь в Вашем PATH (например, ~/bin/xfce-color-switch). Затем:

$ xfce4-color-switch dark-pastels

enter image description here

$ xfce4-color-switch solarized   
No such colorscheme: solarized
$ xfce4-color-switch solarized-dark

enter image description here

необходимо будет помнить названия системы цветов этого, но я включу инструкции, как добавить заполнение клавишей Tab, после того как я понимаю их.

0
ответ дан 21 September 2015 в 10:33
  • 1
    В то время как эти grep -zP команда работала бы в этом конкретном случае (файл, состоящий точно из двух строк), это будет в целом полагать, что любой обычный разделенный от новой строки файл одна строка, таким образом, любой дамп целое содержание файла (если будет соответствие где-нибудь), или ничто; обычно это не то, для чего люди используют grep. – Marc van Leeuwen 11 December 2016 в 06:33

Лучший подход был бы: создайте свою собственную цветовую схему и позвольте себе выбирать один через многих.

, Чтобы сделать это, создайте каталог:

mkdir -p ~/.local/share/xfce4/terminal/colorschemes

И файлы места как эта внутренняя часть:

[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)

, Если у Вас есть уже настроенный terminalrc файл в Вашем ~/.config/xfce4/terminal каталог, можно просто скопировать соответствующие строки.

После выполнения так, Ваша новая цветовая схема появляется в основном списке. Таким образом, у Вас могут, например, быть и пользовательская белая цветная тема и пользовательский черный цвет.

0
ответ дан 21 September 2015 в 10:33

Другие вопросы по тегам:

Похожие вопросы: