Criar caracteres de desenho de linha AND de 256 cores ambos no PuTTY

31

Estou tendo problemas para configurar o PuTTY com o Ubuntu.

Estou tentando fazer com que os caracteres de linha funcionem no aptitude, bem como no suporte de 256 cores, mas só consigo um ou outro.

  • Configuração do Ubuntu
    • Usando o Ubuntu de 64 bits
    • O tipo de terminal xterm-256color ou putty-256color fornece caracteres de linha com 256 cores, mas incorretas.
    • O tipo terminal linux fornece linhas apropriadas no aptitude, mas apenas 16 cores.
  • Configuração PuTTY
    • Usando fonte com caracteres Unicode. (DejaVu Sans Mono)
    • Os dados recebidos são assumidos como UTF-8.
    • Defina para usar pontos de código de desenho de linha Unicode.

Saída de locale:

LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
suíço
fonte

Respostas:

42

O problema é que o PuTTY no modo UTF-8 ignora 1 comando "Conjunto de caracteres alternativos" do VT100 e ncurses tenta usar o conjunto de caracteres "gráficos" para desenhar a GUI. (Os caracteres de desenho da caixa estão nas mesmas posições klmqxque normalmente.)

export NCURSES_NO_UTF8_ACS=1 no seu ambiente, ele deve corrigir o problema, dizendo às ncurses para sempre usar caracteres de desenho de caixa Unicode quando um código de idioma UTF-8 for selecionado.

1 Há uma entrada na lista de desejos do PuTTY para isso, além de explicações sobre o melhor comportamento atual .

Atualização (12/05/2018): Parece que essa combinação será suportada no PuTTY 0.71.

gravidade
fonte
Isso é interessante. Eu sempre usei o Lucida Console porque o desenho da linha sempre funcionava no modo UTF-8. Agora eu posso usar fontes muito melhores. Obrigado. :)
Ariel
8
Eu só quero salientar que a execução de um programa que converte o conjunto de caracteres alternativo em UTF-8 também resolve o problema. Encontrei isso no link que você forneceu. O melhor exemplo de programa é tela.
Swiss
2
para não desenterrar postagens antigas, mas o KiTTY - uma bifurcação do PuTTY - fornece uma caixa de seleção para "Permitir desenho de linha ACS em UTF" (novas / atuais configurações de sessão-> Janela-> Tradução), que parece funcionar bem com aplicativos como o aptitude.
overprescrib
11
@ Swiss: não é o screenque faz a conversão, mas ncurses.
Thomas Dickey
Estou trabalhando em Putty e usando zsh. Estou com um problema semelhante ao OP, pois no VIM, certos caracteres como seta no NERDtree não estão sendo exibidos. Quando eu "exporto NCURSES_NO_UTF8_ACS = 1" e abro o VIM novamente, ele não faz nada diferente. As setas ainda não são exibidas. Alguma idéia do que está acontecendo?
alpha_989
4

Agora isso é implementado como uma opção no PuTTY git master .

Massa 0,71 ->

Categoria -> Janela -> Tradução -> marque "Ativar desenho de linha VT100, mesmo no modo UTF-8"

captura de tela

ismail
fonte