Я часто открываю три терминала, и мне действительно нравится стиль наличия палитр разного цвета на каждом.
У меня есть несколько сохраненных цветовых палитр, и я хотел бы, чтобы значение по умолчанию прогрессировало через мои сэкономленные профили каждый раз, когда я открываю терминал, так, чтобы, если я открываю 3, они были каждым различные цвета без меня имеющий необходимость вручную изменить профиль на 2.
Какие-либо мысли?
Спасибо!
:
Сценарий полагает, что Вы используете терминал гнома , который является терминалом Ubuntu по умолчанию.
Прежде, чем запустить скрипт, откройте терминал гнома и создайте некоторые профили (Редактирование> Предпочтение> Профили) с различными настройками, как Вы желаете (цвет фона, цвет текста..). Можно назвать их Profile1, Profile2, Profile3 и так далее. Создайте достаточно Профилей для покрытия количества Терминалов, которые будут открыты, но если более высокое количество терминалов будет открыто, то профиль по умолчанию будет использоваться.
сценарий создает файл ~/.bash_color_changer , от которого он зависит, так как он скажет сценарий, если терминал открывался регулярно или после запроса .bashrc.
Добавляют сценарий в конец Вашего файл ~/.bashrc .
Сценарий:
Добавляют к .bashrc
:
#Change color according to the number of Bash shells opened
#Creates the .Bash_Color_Changer file if it's not present
if ! [ -f ~/.Bash_Color_Changer ]; then
echo ORIGINAL > ~/.Bash_Color_Changer
fi
#Array holding the name of the profiles: Substitute it for the names you're using
Color_counter=(Profile1 Profile2 Profile3)
#Finds out the number of opened bashs counting the lines containing "bash"
#in the pstree function. (-c deactivates compact display to avoid it showing
#lines with "2*[bash]" instead of one for each bash)
Number_of_bashs=$(($(pstree -c | grep "bash" | wc -l)-1))
#Checks if the terminal being opened was opened by the user or by
#the script, and act according to it
if [ $(cat ~/.Bash_Color_Changer) = ORIGINAL ]; then
if ((Number_of_bashs < ${#Color_counter[*]})); then
echo COPY > ~/.Bash_Color_Changer
gnome-terminal --tab-with-profile-internal-id=${Color_counter[${Number_of_bashs}]}
exit
fi
else
echo ORIGINAL > ~/.Bash_Color_Changer
fi
Протестированный, но не экстенсивно.Приятного отдыха!
Ха-ха, очень интересный. Я мог бы попытаться делать это также. Я главным образом только выполняю несколько терминалов и браузер.
, Таким образом, я озирался и нашел это - https://github.com/sos4nt/dynamic-colors. Очень аккуратный небольшой проект, который помогает Вам достигнуть части того, что Вы хотите.
Теперь, в каталоге colorschemes/
того проекта, Вы будете видеть, что он в настоящее время имеет 4 цветовых схемы. Можно добавить столько, сколько Вы нуждаетесь/хотите.
Так, чтобы заставить каждый терминал выбирать различную систему цветов, я добавил бы функцию к моему .bash_profile
или .bashrc
или везде, где, такой, что функция делает две вещи:
dynamic-colors switch colorscheme-name
на основе (1). Hope это помогает!
P.S. Я записал бы сценарий для Вас, но я очень не хочу кормить с ложечки, и я - ленивая AF :)
Konsole на самом деле поддерживает эту функциональность исходно. Konsole действительно мощен и высоконастраиваем.
, Если у Вас нет Konsole затем просто sudo apt install konsole
Вдобавок ко всему, если Вы работаете над тремя серверами одновременно, можно включать некоторые изящные псевдонимы показанный здесь
Одна опция могла использовать xfce4-terminal
. Это очень похоже на терминал Ubuntu по умолчанию (который является gnome-terminal
) и многие из него - использование пакетов зависимости gtk компонент, который делает это подходящей альтернативой.
Сначала установите его с
sudo apt-get install xfce4-terminal
Затем откройте его, Перейдите к Редактированию-> Предпочтения, Избранная Вкладка Цветов и проверьте опцию, которая говорит, Варьируйтесь цвет фона для каждой Вкладки и Теперь выйдите.
Сделайте терминал по умолчанию xfce4-terminal
или измените ярлык Ctrl-Alt-T
открыть его.
Теперь, каждый раз, когда Вы открываетесь, Вам подарят различную цветовую палитру.
Полезные ссылки: