Das Erstellen von 256-Farben- UND Linienzeichen funktioniert in PuTTY

31

Ich habe Probleme beim Einrichten von PuTTY mit Ubuntu.

Ich versuche, Linienzeichen in Eignung sowie 256-Farben-Unterstützung arbeiten zu lassen, kann aber nur die eine oder andere bekommen.

  • Ubuntu Config
    • Verwenden von 64-Bit-Ubuntu
    • Der Terminaltyp "xterm-256color" oder "putty-256color" gibt 256-farbige, aber falsche Zeilenzeichen an.
    • Terminal-Typ Linux gibt richtige Linien in Eignung, aber nur 16 Farben.
  • PuTTY Konfig
    • Verwenden von Schriftarten mit Unicode-Zeichen. (DejaVu Sans Mono)
    • Es wird davon ausgegangen, dass die empfangenen Daten in UTF-8 vorliegen.
    • Legen Sie fest, dass Unicode-Strichcodepunkte verwendet werden.

Ausgabe von 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=
schweizerisch
quelle

Antworten:

42

Das Problem ist, dass PuTTY im UTF-8-Modus 1 VT100-Befehle "Alternativer Zeichensatz" ignoriert und ncurses versucht, den "grafischen" Zeichensatz zum Zeichnen der GUI zu verwenden. (Die Zeichen in der Box befinden sich an den gleichen Positionen wie klmqxnormalerweise.)

export NCURSES_NO_UTF8_ACS=1 In Ihrer Umgebung sollte das Problem behoben werden, indem ncurses angewiesen wird, bei Auswahl eines UTF-8-Gebietsschemas immer Unicode-Boxzeichen zu verwenden.

1 Dazu gibt es einen PuTTY- Wunschzetteleintrag sowie eine Erklärung, warum das aktuelle Verhalten besser ist .

Update (12.05.2018): Diese Kombination wird anscheinend in PuTTY 0.71 unterstützt.

Grawity
quelle
Das ist interessant. Ich habe nur immer Lucida Console verwendet, weil das Strichzeichnen immer nur im UTF-8-Modus funktioniert hat. Jetzt kann ich viel bessere Schriften verwenden. Vielen Dank. :)
Ariel
8
Ich möchte nur darauf hinweisen, dass das Ausführen eines Programms, das den alternativen Zeichensatz in UTF-8 konvertiert, auch das Problem behebt. Ich habe dies über den von Ihnen angegebenen Link gefunden. Das beste Beispielprogramm ist screen.
Schweizer
2
Alte Beiträge nicht ausgraben, aber KiTTY - ein PuTTY- Zweig - bietet ein Kontrollkästchen für "ACS-Strichzeichnung in UTF zulassen" (neue / aktuelle Sitzungseinstellungen-> Fenster-> Übersetzung), das mit Apps wie aptitude gut zu funktionieren scheint.
overprescribed
1
@swiss: es ist nicht screenwas die umstellung macht, aber ncurses.
Thomas Dickey
Ich arbeite in Putty und benutze zsh. Ich habe ein ähnliches Problem wie OP, da in VIM bestimmte Zeichen wie Pfeil in NERDtree nicht angezeigt werden. Wenn ich "NCURSES_NO_UTF8_ACS = 1 exportieren" und VIM erneut öffne, ändert sich nichts. Die Pfeile werden immer noch nicht angezeigt. Irgendeine Idee, was los ist?
alpha_989
4

Dies ist jetzt als Option in PuTTY git master implementiert .

Kitt 0,71 ->

Kategorie -> Fenster -> Übersetzung -> Häkchen bei "VT100-Strichzeichnung auch im UTF-8-Modus aktivieren"

Bildschirmfoto

ismail
quelle