Руководство. Настройка заголовков вкладок в Терминал Windows

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

В этом руководстве описано следующее:

  • Использование параметра tabTitle
  • Установка заголовка оболочки
  • Использование параметра suppressApplicationTitle.

Использование параметра tabTitle

Параметр tabTitle позволяет определить начальный заголовок для нового экземпляра оболочки. Если он не задан, вместо него используется name профиля. Каждая оболочка по-разному реагирует на эту настройку.

Shell Поведение
PowerShell Заголовок задан.
Командная строка Заголовок задан. Если команда запущена, она временно добавляется в конец заголовка.
Ubuntu Заголовок игнорируется, вместо него задается user@machine:path
Debian Заголовок задан.

Примечание.

Хотя Ubuntu и Debian запускают Bash, для них характерно разное поведение. Таким образом мы видим, что у разных дистрибутивов может быть разное поведение.

Установка заголовка оболочки

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

Shell Command
PowerShell $Host.UI.RawUI.WindowTitle = "New Title"
Командная строка TITLE New Title
Bash* echo -ne "\033]0;New Title\a"

Обратите внимание, что некоторые дистрибутивы Linux (например, Ubuntu) задают заголовок автоматически, когда вы взаимодействуете с оболочкой. Если указанная выше команда не работает, выполните следующую команду:

export PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
echo -ne '\033]0;New Title\a'

В результате заголовок будет изменен на New Title.

Для упрощения доступа добавьте в конец ~/.bashrc следующий код:

settitle () {
  export PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
  echo -ne '\033]0;'"$1"'\a'
}

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

settitle 'New Title'

Использование параметра suppressApplicationTitle

Так как оболочка может управлять собственным заголовком, она может в любое время перезаписать заголовок вкладки. Например, модуль posh-git для PowerShell добавляет в заголовок сведения о репозитории Git.

Терминал Windows позволяет подавлять изменения, внесенные в заголовок. Для этого в профиле задайте для параметра suppressApplicationTitle значение true. В результате новые экземпляры профиля задают для видимого заголовка значение tabTitle. Если значение tabTitle не задано, для видимого заголовка задается значение name профиля.

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

Ресурсы