Configurando $ TERM para a tela gnu

12

Então, eu tenho uma tela compilada com 256 cores, rodando no Konsole no modo de 256 cores. Se a tela inicial, o TERM está definido como "tela". Se eu exportar manualmente o TERM para screen-256color, tudo funcionará perfeitamente.

Eu tenho duas perguntas. A primeira é por que a tela está configurando o TERM para "tela" em vez de "tela-256 cores" quando suporta isso? A segunda é que, se eu tiver a seguinte linha no meu arquivo .screenrc

term    screen-256color

por que a tela ainda não está definindo meu mandato?

Informações adicionais: Estou executando a versão de tela 4.00.03jw4 (FAU) 2-May-06 no Kubuntu Jaunty amd64

Zxaos
fonte
O termo screen-256color funciona aqui com a versão screen 4.00.03jw4 (FAU) 2-mai-06 no teste Debian. Mais detalhes, por favor.
Derobert 5/06/09
Parece que estou executando a mesma versão da tela que você. Gostaria de saber se é um problema terminfo?
Zxaos 5/06/09
Sim, provavelmente o seu terminfo não tem screen-256color, de modo ecrã recusa corretamente para set terminfo para que, uma vez que os aplicativos que você ia correr sob ele seria um fracasso
njsf
Se eu defini-lo manualmente, as coisas funcionam e 'cores de tput' ecoam o número correto de cores. De qualquer forma, eu não sei o suficiente sobre terminfo para corrigir isso, então. Alguma sugestão?
Zxaos 6/06/09
Se tput funcionar, você terá os registros terminfo.
Derobert

Respostas:

10

Tela sempre define TERM como "tela" por padrão. No entanto, você deve perceber que uma tela TERM = ainda suporta cores.

Eu testei a adição de "term screen-256color" ao meu ~ / .screenrc e ele definiu o TERM para "screen-256color" para mim (versão da tela 4.00.03 (FAU) 23-Oct-06). É possível que a tela esteja procurando no lugar errado para o seu arquivo .screenrc?

Você também pode tentar iniciar a tela da seguinte maneira:

screen -T screen-256color

Veja se isso funciona.

yadimka
fonte
A especificação manual do terminal inicia a tela com o termo correto. (A razão pela qual me importo é que o Vim parece não querer jogar bonito, com cores, com tela em vez de tela com 256 cores, a menos que eu o force no modo 256 cores. Como se a tela estivesse procurando meu .screenrc errado lugar, como é que eu verificar isso?
Zxaos
Obrigado, sua sugestão me levou a descobrir que eram os perfis de tela instalados que estavam atrapalhando a análise do meu .screenrc.
Zxaos
5

O problema acabou sendo alguns perfis de tela conflitantes que foram instalados na minha máquina. Embora eles tenham adquirido meu .screenrc local, eles me impediram de definir o prazo. Desativar o uso de perfis (renomei o link simbólico ~ / .screen-profiles para outra coisa) fez com que a tela lesse o termo conforme definido no meu arquivo .screenrc.

Zxaos
fonte
0

Adicione seu '~ / .screenrc':

attrcolor b ".I"
termcapinfo xterm 'Co # 256: AB = \ E [48; 5;% dm: AF = \ E [38; 5;% dm'
defbce "on"
drybjed
fonte
Não. A variável TERM ainda está definido para 'tela', mesmo quando se inicia tela com presente na .screenrc
Zxaos