A variável de ambiente TERM
é uma maneira que você, o usuário,
pode informar programas (por exemplo, emacs
, grep
, less
, ls
e vim
)
em que tipo de terminal eles estão sendo executados, para que eles saibam quais são seus parâmetros, incluindo quais recursos ele possui e quais seqüências de escape precisa emitir para acessá-los. Isso existe porque é muito difícil, em geral,
para o software para determinar isso por si
(e era praticamente impossível quando os usuários interagiam
com computadores através de terminais que eram externos,
e só conectado ao computador por um cabo de dados).
gnome-terminal
é um programa que fornece serviços semelhantes a terminais
para o usuário e os programas que o usuário executa dentro do terminal.
gnome-terminal
pode estar ciente das variáveis de ambiente
que foram definidos em seu ambiente,
antes de ser invocado ( DISPLAY
sendo o exemplo óbvio),
mas não tem conhecimento de variáveis de ambiente que são definidas
nos processos que estão sendo executados sob ele.
Portanto, gnome-terminal
tem todas as capacidades que possui.
Pode ser possível ajustar / restringir esses fatores externamente,
por exemplo, por meio de opções de linha de comando, o ambiente pré-existente,
arquivos de configuração e diálogos no quadro da janela,
mas não alterando TERM
no shell na janela.
Se é capaz de exibir 256 cores,
então é capaz de exibir 256 cores,
e você será capaz de fazer isso
enviando as seqüências de escape apropriadas.
Mas, contanto que você tenha TERM
definido como xterm
,
os programas que você executa acreditarão que você está dizendo a eles
que eles estão funcionando em um terminal compatível com oito cores,
e assim eles restringirão seus pedidos (seqüências de escape)
para esses recursos .
Você precisa definir TERM
para xterm-256color
,
para não permitir que gnome-terminal
exiba 256 cores,
mas para dizer programas como grep
e ls
para perguntar
para usar mais de 8 cores.