In PuTTY funktionieren beide Zeichen für das Zeichnen mit 256 Farben und Linien

17953
Swiss

Ich habe Probleme beim Einrichten von PuTTY mit Ubuntu.

Ich versuche Linienzeichen in aptitude sowie 256-Farben-Unterstützung zum Laufen zu bringen, kann aber nur das eine oder das andere bekommen.

  • Ubuntu Config
    • Verwenden Sie 64-Bit-Ubuntu
    • Der Terminaltyp xterm-256color oder putty-256color ergibt 256-Farben, aber falsche Zeilenzeichen.
    • Der Linientyp Linux gibt die richtigen Linien in Aptitude an, aber nur 16 Farben.
  • PuTTY Config
    • Schriftart mit Unicode-Zeichen verwenden. (DejaVu Sans Mono)
    • Es wird davon ausgegangen, dass sich die empfangenen Daten in UTF-8 befinden.
    • Legen Sie die Verwendung von Unicode-Strichzeichnungspunkten fest.

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

2 Antworten auf die Frage

39
grawity

Das Problem ist, dass PuTTY im UTF-8-Modus 1 VT100-Befehl "Alternate Character Set" ignoriert und ncurses versucht, den "grafischen" Zeichensatz zum Zeichnen der GUI zu verwenden. (Die Boxzeichen befinden sich an den gleichen Positionen wie klmqxnormalerweise.)

export NCURSES_NO_UTF8_ACS=1 In Ihrer Umgebung sollte das Problem dadurch behoben werden, dass ncurses aufgefordert wird, immer Unicode-Boxzeichen zu verwenden, wenn ein UTF-8-Gebietsschema ausgewählt wird.

1 Dazu gibt es einen PuTTY- Wunschliste-Eintrag und eine Erklärung, warum das aktuelle Verhalten besser ist .

Update (2018.05.12): Es scheint, dass diese Kombination wird in PuTTY 0.71 unterstützt werden.

Das ist interessant. Ich habe Lucida Console immer nur verwendet, weil die Strichzeichnung immer nur im UTF-8-Modus funktionierte. Jetzt kann ich viel bessere Schriftarten verwenden. Vielen Dank. :) Ariel vor 13 Jahren 0
Ich möchte nur darauf hinweisen, dass das Durchlaufen eines Programms, das den alternativen Zeichensatz in UTF-8 konvertiert, auch das Problem behebt. Ich habe dies anhand des von Ihnen angegebenen Links gefunden. Das beste Beispielprogramm ist Bildschirm. Swiss vor 13 Jahren 8
nicht um alte Beiträge zu finden, sondern [KiTTY] (http://kitty.9bis.net/) - eine PuTTY-Verzweigung - enthält ein Kontrollkästchen für "ACS-Linienzeichnung in UTF zulassen" (neue / aktuelle Sitzungseinstellungen-> Fenster- > Übersetzung), die mit Apps wie aptitude gut zu funktionieren scheint. overprescribed vor 8 Jahren 2
@swiss: Es ist kein ** `screen` **, der die Konvertierung durchführt, sondern **` ncurses` **. Thomas Dickey vor 8 Jahren 1
Ich arbeite in Putty und verwende zsh. Ich habe ein ähnliches Problem wie OP, da in VIM bestimmte Zeichen wie der Pfeil in NERDtree nicht angezeigt werden. Wenn ich "NCURSES_NO_UTF8_ACS = 1" exportiere und VIM wieder öffne, macht es nichts anderes. Die Pfeile werden immer noch nicht angezeigt. Irgendeine Idee, was los ist? alpha_989 vor 7 Jahren 0
@ alpha_989: Das ist überhaupt nicht das gleiche Problem, da Pfeile überhaupt nicht Teil des ACS waren. Sie sind schon rein UTF-8. Was siehst du an ihrer Stelle? grawity vor 7 Jahren 0
@grawity, wenn ich mich auf dem Remote-Server befinde, sehe ich Folgendes: https://imgur.com/R0T4hO5 alpha_989 vor 7 Jahren 0
Ich sehe die Pfeile wie erwartet in NERDtree. Wenn ich mich jedoch über ssh anmelde, sehe ich, dass die Pfeile durch Boxen ersetzt werden. https://imgur.com/cfejBDi alpha_989 vor 7 Jahren 0
Ich habe alle hier in diesem Thread veröffentlichten Lösungen ausprobiert, aber es wurde nicht gelöst: https://serverfault.com/questions/475925/how-to-fix-putty-showing-garbled-characters. Aber wie Sie darauf hingewiesen haben, ist das Problem vielleicht nicht dasselbe. Haben Sie eine Idee, wie Sie dieses Problem beheben können oder die Ursache des Problems? alpha_989 vor 7 Jahren 0
Ok .. ich habe es selbst gelöst. Für den Fall, dass jemand anderes das gleiche Problem hat, liegt die Lösung vor: https://github.com/scrooloose/nerdtree/issues/522#issuecomment-163673920 Sie können auch die standardmäßige Consolas-Schriftart verwenden alpha_989 vor 7 Jahren 0
3
ismail

Dies ist jetzt als Option in PuTTY git master implementiert .