Подтвердить что ты не робот

Изменять тему терминала Gnome

Я хотел бы создать настройку на своей локальной машине (Ubuntu GNOME), в которой окно терминала имеет другой фоновый цвет в зависимости от того, вошел ли я на свой локальный компьютер или ssh'd на удаленную машину.

Есть ли способ сделать это?

4b9b3361

Ответ 1

Это не делает то, что вы просили, но, вероятно, делает то, что вы хотите.

Вы можете изменить свой .bashrc (или эквивалентный файл инициализации оболочки), чтобы задать запрос на основе того, используете ли вы ssh или нет.

то есть. поместите что-то вроде:

if [ -n $SSH_TTY ]; then
     export PS1=`echo -en '\033[42m\w\$ '`;
fi;

в конце вашего файла .bashrc на удаленном компьютере. \033[42m является ANSI Escape Code, который изменяет цвет фона на зеленый.

Таким образом, фоновый цвет вашего терминала будет зеленым (или пурпурным, или голубым или любым другим) только при входе на удаленную машину.

Ответ 2

Возможно, вы захотите проверить параметры gnome-terminal:

gnome-terminal --help

дает

 --window-with-profile=PROFILENAME

Оберните это в оболочку script:

#!/bin/bash
gnome-terminal --window-with-profile=PROFILENAME

то do

ssh-term

Если вы хотите изменить другое, загляните в aterm и другие термины. Также изучите Devilspie, который может делать более динамические изменения, основанные на таких вещах, как заголовок окна (удаление оконных украшений и т.д.).

http://burtonini.com/blog/computers/devilspie

Ответ 3

Возможно, вам стоит взглянуть на GConf. В основном это для Gnome, что для Registry для Windows. Большинство приложений Gnome используют его для хранения своих настроек. Вы можете просматривать его с помощью таких инструментов, как GConf-Editor или из командной строки с помощью gconftool-2:

$ gconftool-2 --all-entries /apps/gnome-terminal/profiles/Default
background_color = #000000000000
palette = #2E2E34343636:#CCCC00000000 [ snipped ]
... many more lines

Здесь вы найдете все настройки, доступные в диалоговом окне "Настройки", а также еще несколько. Ключи можно также изменить с помощью --set, см. "man gconftool-2" для деталей.

Существуют также привязки библиотек GConf для многих языков программирования.

Ответ 4

У меня есть некоторые скрипты, которые достигают этой цели для gnome-terminal. Вы можете найти их в https://github.com/xyrix/gnome-terminal-profile-switcher

script работает, создавая временный профиль для всех терминалов, а затем изменяя значения, установленные во временном профиле, копироваться из ваших обычных профилей.

Это позволяет вам изменить профиль текущего гном-терминала с помощью script.

В репозитории используется пример "safe_ssh" script, чтобы продемонстрировать использование.

Ответ 5

export PROMPT_COMMAND='echo -ne "\033]0;${HOSTNAME}: ${PWD}\007"'