Visão geral dos problemas de reanexação de tela UTF8.

Visão geral dos problemas de reanexação de tela UTF8.

Visão geral dos problemas de reanexação de tela UTF8.

Problema:

Criar uma tela que use UTF8 funciona perfeitamente até anexar novamente a referida sessão de tela.

Passos:

ssh remothost
screen -U -S ttytter
[detach screen]
[exit ssh]
xterm -class 'xterm-ttytter' -geometry 175x20 \
  -title 'ttytter' -e ssh -t remotehost "screen -dU -r ttytter"

Detalhes

Eu sou um grande fã dettitare já o uso há algum tempo. Recentemente comecei a usar xterm vs xfce4-terminal/gnome-terminal porque acho que é muito mais limpo. Estou tentando usar UTF8 por motivos pessoais e profissionais e ainda estou tentando resolver alguns bugs.

O anexo inicial (criação) me fornece uma entrada UTF8 que funciona como deveria. $TERM éxterm-256colorsenquanto $LANG éen_US.UTF-8. Isso também é verdade quando eu reconecto a tela, embora não consiga usar certos caracteres, como backspace, que aparece como^ H.

Parece que o problema é específico do comando que estou emitindo para reconectar a tela. Estou tentando descobrir o que pode estar causando esse problema ao reconectar minha tela UTF8. eu tentei-dr.e-dU -r, ambos os quais não estão conseguindo resolver meu problema. Eu tentei dar ao xterm o sinalizador -u8, sem nenhuma mudança no comportamento.

xterm -class 'xterm-ttytter' -geometry 175x20 \
-title 'ttytter' -e ssh -t remotehost "screen -dU -r ttytter"

O acima causa problemas.

ssh remotehost
screen -dU -r ttytter

O acima funciona muito bem.

Configurações

.screenrc

defc1 off
defutf8 on
utf8 on

.Xdefaults

xterm*utf8: 1

.bashrc

export LANG=en_US.UTF-8

Eu realmente apreciarei qualquer orientação sobre como resolver esse problema.

Responder1

Solução

Diferentes 'classes' carregam diferentes arquivos de configuração de/etc/X11/app-default/. Meu problema era que minha nova classe xterm não tinha um arquivo de configuração correspondente.

# cd /etc/X11/app-default
# ln -s XTerm-color xterm-ttytter

O texto acima vinculará as configurações de classe do XTerm-color para xterm-ttytter criando um link simbólico. Dessa forma, quaisquer alterações feitas no XTerm-color também serão aplicadas automaticamente no xterm-ttytter.

O crédito vai para @Nei emFreenode/#xtermpara explicar classes de programa para X11.

Responder2

Os arquivos padrão dos aplicativos xtermsão projetados para incluir XTerm-coloro uso de uma rota diferente. Este recurso

*customization: -color

diria à biblioteca do X Toolkit para carregar um arquivo de recurso terminando com "-color".

Existem vários arquivos app-defaults instalados para xterm. Olhando para o meu /etc/X11/app-defaults, estes são os principais:

-rw-r--r--   1 root         2400 Nov 27 2012    KOI8RXTerm
-rw-r--r--   1 root         3609 Nov 27 2012    UXTerm
-rw-r--r--   1 root        10112 Nov 27 2012    XTerm

e estes são os personalizados por cores:

-rw-r--r--   1 root         6217 Nov 27 2012    KOI8RXTerm-color
-rw-r--r--   1 root         6209 Nov 27 2012    UXTerm-color
-rw-r--r--   1 root         6207 Nov 27 2012    XTerm-color

OXTermeXTerm-coloralguns devem exigir pouca explicação: a classe padrão é XTerme o recurso de personalização adiciona "-color". Os outros usam classes diferentes. Você deve estar interessado na UXTermaula, pois ela define isso

    *VT100.utf8:    1

bem como configurar fontes úteis com UTF-8. O uxtermscript é executado xtermusando a UXTermclasse, além de garantir que as variáveis ​​de ambiente de localidade estejam configuradas.

Leitura adicional:

Responder3

Presumo que você esteja obtendo resultados distorcidos e, se for esse o caso, tente executar o resetcomando ou talvez stty sane. Isso tratará o sintoma, pelo menos.

informação relacionada