При использовании byobu заголовок вкладки моего терминала установлен на user@fqdn (IP) - byobu
, что может быть довольно длинным в зависимости от домена. Как мне ограничить его чем-то более коротким, например user@hostname
, или еще лучше, задать zsh
заголовок? Я пробовал устанавливать BYOBU_NO_TITLE=1
, следуяэтот баг, но это, я думаю, позволяет локальной оболочке устанавливать заголовок, а не удаленной.
Это может быть очень раздражающим, так как Terminator устанавливает длину каждого заголовка вкладки одинаковой, поэтому одного очень длинного заголовка достаточно, чтобы сделать все они очень длинными. В худшем случае, я бы хотел, чтобы я мог просто обрезать часть до максимальной длины (например, user@f ... byobu
).
Я уже добавил функцию для .zshrc
установки заголовка:
case $TERM in
xterm*|screen*)
if [[ -n $SSH_TTY ]]
then
precmd () {print -Pn "\e]0;%m: %~\a"}
else
precmd () {print -Pn "\e]0;%~\a"}
fi
;;
esac
Это работает, если я не использую byobu:
Вкладка слева — это сеанс SSH без byobu, а вкладка справа — с byobu.
С предложением Serg установить IP_EXTERNAL
значение 1 я могу избавиться от IP, сократив заголовок. Я бы предпочел решение, которое передает заголовок, установленный zsh (или другими приложениями, такими как Vim), в терминал - похоже, что byobu/tmux блокирует их.
решение1
ОБНОВЛЕНИЕ: 10 апреля 2015 г.
Мое текущее решение, которое не зависит от использования оболочки или терминала, заключается wmctrl
в использовании скрипта и размещении полного пути к скрипту в .byoburc
. Работает с gnome-terminal, terminator, sakura — практически с любым termimal Вот скрипт:
#!/bin/bash
# Description: byobu always has string ") - byobu" in it's window title
# like user@hostname (192.168.0.2) - byobu
# So why not find windows with exact same string, and tell wmctrl to
# set the title for us ? That's all we do here
BYOBU_WINDOW=$( wmctrl -lx | awk '/) - byobu/ {print $1}' )
sleep 0.5
wmctrl -ir $BYOBU_WINDOW -N "MYTITLEHERE"
Оригинальный пост
Что касается gnome-terminal
этого, вы можете установить настройки профиля, чтобы сохранить начальный заголовок, указанный в настройках профиля. Ниже представлен скриншот моего byuobu с опцией сохранения начального заголовка и с опцией замены начального заголовка
Что касается Терминатора, я скачаю его и посмотрю, применимо ли к нему то же самое.
решение2
Я обнаружил, что byobu использует tmux в бэкэнде. А у tmux есть несколько способов задать заголовок терминала с помощью следующих строк .byoubu/.tmux.conf
:
set -g set-titles on
set -g set-titles-string "#(pwd)"
где #(pwd)
устанавливает его в рабочий каталог диапазон параметров можно найти на странице руководства tmux в разделе форматов
копнув немного глубже, выясняется, что byobu по умолчанию комментирует именно эти две строки, /usr/share/byobu/profiles/tmux
чтобы задать свой собственный заголовок