Como eu defino a variável de ambiente TERM para o aplicativo Gnome Terminal Emulator?

7

A variável de ambiente TERM é padronizada como xterm, então o arquivo .bashrc não fornece cores no shell por padrão.

Como posso alterar a variável de ambiente TERM para xterm-color somente para o aplicativo emulador de terminal gnome?

Atualização: Por cor completa, quero dizer, altera o prompt de comando para usar cores, além de exibir a saída, como listagem de diretórios em cores também.

    
por Andy Fusniak 27.04.2015 / 09:58

2 respostas

6

Por gnome-terminal

Edite as configurações do perfil em gnome-termninal :

Substitua /bin/bash pelo seu comando shell e use seu parâmetro para TERM .

Você também pode editar as entradas com dconf . Abra um terminal e inicie dconf-editor :

dconf-editor

Abra a entrada org/gnome/terminal/legacy/profiles: e selecione seu perfil. Altere o valor para custom-command .

    
por A.B. 27.04.2015 / 10:13
6

Existem dois problemas aqui.

Uma é como detectar se você está rodando dentro do gnome-terminal (ou qualquer outro aplicativo usando o mesmo widget vte para a emulação do terminal). Supondo que você esteja em um Ubuntu suficientemente recente, a presença da variável $VTE_VERSION informa isso. Você poderia editar seu .bashrc para conter algo como

if [ -n "$VTE_VERSION" ]; then
    # Gnome-terminal and other vte3-based emulators
    color_prompt=yes
fi

A outra questão é que, por alguma razão, o .bashrc do padrão do Ubuntu tenta procurar xterm-color , o que não é realmente usado hoje em dia. Ou o padrão xterm (que suporta cores de qualquer maneira), ou o mais moderno xterm-256color são as escolhas populares, o padrão lentamente se movendo em direção ao último. (O gnome-terminal mudou seu padrão de xterm para xterm-256color em 3.16, que está presente no Ubuntu 15.10 além)

Se você quiser seguir em frente e já tiver muitas cores em vários aplicativos, recomendamos que mude para TERM=xterm-256color , o que também pode ser feito na ramificação if acima.

O .bashrc do Ubuntu está obsoleto para usar xterm-color . Eu prefiro muito mais modificar esses bits no script em torno de qualquer $TERM que você já tenha ( xterm ) ou preferiria ter (talvez xterm-256color ), e não o contrário, modificando $TERM para corresponder .bashrc de exigência.

    
por egmont 27.04.2015 / 11:48