xtitle не меняет заголовок в Ubuntu 11.04

Я пытаюсь найти способ быстро изменить заголовок окна Gnome Terminal 2.32.1, так как у меня довольно много открытых, и я редактирую разные файлы в каждом, используя компилятор в одном, следя за файлами журнала. в других и пр. Следовательно, мне больно искать окно, которое я хочу, когда все говорят pax@pax-desktop:~.

Этот вопрос побудил меня попробовать xtitle, но по какой-то причине он фактически не меняет название.

Выполнение xtitle xyzzy приводит к отсутствию видимой обратной связи, но передача его через od подтверждает, что он выводит escape-последовательность (что я предполагаю, что правильно, хотя я не проверял подробно):

pax@pax-desktop:~/porn_dir$ xtitle xyzzy | od -xcb
0000000    5d1b    3b32    7978    7a7a    0779    5d1b    3b31    7978
        033   ]   2   ;   x   y   z   z   y  \a 033   ]   1   ;   x   y
        033 135 062 073 170 171 172 172 171 007 033 135 061 073 170 171
0000020    7a7a    0779
          z   z   y  \a
        172 172 171 007
0000024

Я могу зайти в меню Terminal | Set Title и изменить его там, но я бы предпочел решение для командной строки, поскольку я могу сделать это автоматически (например, создать псевдоним vi, который устанавливает заголовок на vi filename перед запуском редактора и сбрасывает его при выходе).

В настройках профиля начальный заголовок установлен на Terminal, а When terminal commands set their own titles - на Replace initial title. Также есть только один профиль Default, который я использую.

6
задан 13 April 2017 в 15:25

2 ответа

Складывается xtitle хорошо работает и изменяет заголовок. Однако в значении по умолчанию существует раздел .bashrc следующим образом:

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
    ;;
*)
    ;;
esac

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

Путем комментария PS1=... строка выше, заголовок остается установленным на то, что Вы выбираете.

Это имеет побочный эффект не обновления тока user@host состояние для всех терминалов. Выборочно включить это для просто текущей оболочки, перед выполнением xtitle использование:

export PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

(Помните, необходимо получить это в терминале, не называют/получают из сценария!)

5
ответ дан 13 April 2017 в 15:25

Если вы используете Gnome Terminal, также убедитесь, что в Edit -> Profile Preferences -> Title and Command для параметра When terminal commands set their own titles установлено значение Replace initial title (по умолчанию).

0
ответ дан 13 April 2017 в 15:25

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

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