Hacer que los caracteres de 256 colores Y del dibujo lineal funcionen en PuTTY


31

Tengo problemas para configurar PuTTY con Ubuntu.

Estoy tratando de hacer que los caracteres de línea funcionen en aptitud, así como el soporte de 256 colores, pero solo puedo obtener uno u otro.

  • Ubuntu Config
    • Usando Ubuntu de 64 bits
    • El tipo de terminal xterm-256color o putty-256color proporciona 256 colores, pero caracteres de línea incorrectos.
    • El tipo de terminal linux proporciona líneas adecuadas en aptitud, pero solo 16 colores.
  • PuTTY Config
    • Usando fuente con caracteres Unicode. (DejaVu Sans Mono)
    • Se supone que los datos recibidos están en UTF-8.
    • Establezca para usar puntos de código de dibujo lineal Unicode.

Salida 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=

Respuestas:


42

El problema es que PuTTY en modo UTF-8 ignora los comandos 1 "Juego de caracteres alternativos" VT100 y ncurses intentos de usar el juego de caracteres "gráfico" para dibujar la GUI. (Los caracteres del cuadro de dibujo están en las mismas posiciones klmqxque normalmente estarían).

export NCURSES_NO_UTF8_ACS=1 para su entorno, debería solucionar el problema diciéndole a ncurses que siempre use caracteres de dibujo de cuadro Unicode cuando se selecciona un entorno local UTF-8.

1 Hay una entrada de lista de deseos PuTTY para esto, junto con una explicación de por qué el comportamiento actual es mejor .

Actualización (12/05/2018): Parece que esta combinación será compatible con PuTTY 0.71.


Eso es interesante. Siempre usé la consola Lucida porque el dibujo lineal siempre funcionó en modo UTF-8. Ahora puedo usar fuentes mucho mejores. Gracias. :)
Ariel

8
Solo quiero señalar que ejecutar un programa que convierte el juego de caracteres alternativo a UTF-8 también soluciona el problema. Encontré esto en el enlace que proporcionó. El mejor programa de ejemplo es la pantalla.
Suiza

2
no desenterrar publicaciones antiguas, pero KiTTY , una bifurcación PuTTY, proporciona una casilla de verificación para "Permitir dibujo de línea ACS en UTF" (configuración de sesión nueva / actual-> Ventana-> Traducción) que parece funcionar bien con aplicaciones como aptitude.
sobreprescrito el

1
@swiss: no es lo screenque hace la conversión, sino ncurses.
Thomas Dickey

Estoy trabajando en Putty y usando zsh. Tengo un problema similar a OP, ya que en VIM, ciertos caracteres como la flecha en NERDtree no se muestran. Cuando hago "exportar NCURSES_NO_UTF8_ACS = 1", y abro VIM nuevamente, no hace nada diferente. Las flechas aún no se muestran. ¿Tienes idea de lo que está pasando?
alpha_989

4

Esto ahora se implementa como una opción en PuTTY git master .

Masilla 0.71 ->

Categoría -> Ventana -> Traducción -> marque "Habilitar dibujo lineal VT100 incluso en modo UTF-8"

captura de pantalla

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.