como dar a cada guia de terminal seu próprio título?

1

Eu vejo que existem maneiras de definir o título das abas através do CLI , mas como posso dar a cada guia seu próprio "título"?

  1. top
  2. pinho
  3. git

por padrão, o gnome-terminal parece mostrar <user>@<host>:<path> , o que fica complicado para além das duas guias, IMHO.

(criar muitos perfis é uma maneira de ser uma solução inoportuna)

Notavelmente, Alpine parece magicamente (através da CLI?) definir o título da guia:

    
por Thufir 04.02.2016 / 15:55

3 respostas

2

Como retirado de SuperUser.com ,

O processo é um pouco complexo para explicar aqui, já que é diferente para cada shell que você usa. Em vez disso, darei dois links:

Existem algumas outras coisas a serem levadas em consideração. Para uma mudança única comum a todas as sessões de terminal, você pode simplesmente alterar o ícone Bash (se usar o bash e o gnome) e adicionar --title=title no Gnome.

    
por David 04.02.2016 / 16:20
1

O título pode ser definido usando sequências de escape como mostrado em Como alterar o título do xterm . (Especificamente para bash ).

Em seu exemplo, eles usam a instrução case que define PS1 com uma seqüência de escape fechada.

case $TERM in
    xterm*)
        PS1="\[3]0;\u@\h: \wfunction setTitle
{
   echo -e "3]0;$@
case $TERM in
    xterm*)
        PS1="\[3]0;\u@\h: \wfunction setTitle
{
   echo -e "3]0;$@%pre%7"
}
7\]bash\$ " ;; *) PS1="bash\$ " ;; esac
7" } 7\]bash\$ " ;; *) PS1="bash\$ " ;; esac

A ideia básica é echo echo -e "3]0; STRING\[...\]7" (o prompt PS1 precisa de colchetes .bashrc extras para incluir a seqüência de escape). Assim, você pode adicionar a seguinte função ao seu %code% na parte superior do arquivo:

%pre%

Agora você pode alterar o título à vontade

    
por Sergiy Kolodyazhnyy 04.02.2016 / 16:30
1

Você pode instalar e usar xttitle (observe o t dobrado no nome). Eu uso assim em um arquivo originado pelo meu ~/.bashrc :

# from the "xttitle(1)" man page - put info in window title
update_title()
{
    [ $TERM = xterm -o $TERM = xterm-color ] && xttitle "[$$] ${USER}@${HOSTNAME}:$PWD"
}

cd()
{
    [ -z "$*" ] && builtin cd $HOME
    [ -n "$*" ] && builtin cd "$*"
    update_title
}

Eu também faço isso:

xttitle Mutt && mutt
    
por waltinator 04.02.2016 / 16:46