Ncurses-Eingabeaufforderungen sehen in PuTTY unter Windows nicht korrekt aus


12

Byobu sieht in PuTTY sehr kaputt aus. Ich habe das Problem mit der Tastenzuordnung bereits behoben, aber dieses Problem ist weder in der Manpage noch bei Google angegeben:

Defekte PuTTY-Konsole

Beachten Sie die fehlerhafte Position der Fensterliste, die fehlerhafte Auswahlposition, die Duplizierung des letzten Fensters, das zufällige a oben rechts und die fehlerhafte Anwendungsoption. Sie können dies nicht sehen, aber die letzte Option ist nicht auswählbar.

Gibt es eine Option in PuTTY, die ich verwenden muss, um dies richtig zu sehen?


Wenn jemand das puttyTag erstellen möchte , wäre das nett
TheLQ

Ich habe kein Windows mehr, kann es also nicht testen, aber ich würde mir die Zeichensatz-Einstellungen von PuTTY ansehen.
11.

1
Der Bildschirm ist großartig - man muss nur einen anständigen haben.screenrc
Marco Ceppi

Antworten:



8

Im Zusammenhang mit Putty fügte ich diese Notiz der einiger Zeit byobu (1) -Manpage :

> PuTTY  users have reported that the
> F2, F3, and F4 shortcut keys are not
> working properly.  PuTTY sends the
> same escape sequences as the linux
> console for F1-F4 by default.  You can
> fix this problem in the PuTTY config,
> Terminal -> Keyboard -> Function keys:
> Xterm R6.

Sehen:


Ich habe das schon getan, um Byobu zumindest nutzbar zu machen.
TheLQ

Nur um zu bestätigen, was ich oben gesagt habe, für alle anderen, die mitkommen: Ich meinte, dass der Screenshot oben mit Kitt im Xterm R6-Modus ist. Dies ist also keine Lösung für dieses Problem.
TheLQ

3

Ubuntu verwendet UTF-8 für sein Terminal, aber byobu scheint den Zeichensatz "ISO-8859-1 (Western European)" für seine Menüs zu verwenden. Sie können den Zeichensatz unter Fenster -> Übersetzung einstellen.

Ich habe den folgenden Code im Internet gefunden und bin immer noch damit zufrieden. byobuMöglicherweise haben Sie mehr Optionen, aber mir gefällt dies auch ( ~/.screenrc):

startup_message off
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{=kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B}%Y-%m-%d %{W}%c %{g}]%{w} %l'
shelltitle "$ |bash"
termcapinfo xterm ti@:te@
altscreen on

Hinweis: Für byobu shelltitle "$ |bash"muss es entfernt / kommentiert werden, sonst funktioniert byobu nicht.


Putty scheint standardmäßig zu sein ISO-8859-1:1998 (Latin-1, West Europe), das ist also nicht das Problem. Das Umschalten auf UTF-8 hat das Terminal extrem langsam gemacht, aber das Menü repariert. Was soll dieser Code aber tun? Hat in byobu nichts geändert
TheLQ

Standardmäßig bietet Ihnen screen nur eine Shell mit mehreren (unsichtbaren) Registerkarten. Mit diesem Code können Sie eine schicke Muschel haben, auf deren Unterseite sich ein (farbiger) Balken befindet [ computername ][ 0$ bash 1-$ bash (2*$bash) ][2010-12-11 16:24 ] 1.30 1.40 1.43.
Lekensteyn

0

Damit byobu in Putty gut aussieht, sollten Sie zwei Änderungen vornehmen.

Erstens ändern Sie Ihre Tastatur auf xterm-R6, wie bereits erwähnt, aber zweitens führen Sie auf Ihrem Linux-Computer den Befehl als normaler Benutzer aus: byobu-select-backendund wählen Sie dann die Option screen(normalerweise 2).

Sollte jetzt super funktionieren! Genießen!


0

Es hat bei mir funktioniert (fit für Putty - temporär):

Fenster -> Übersetzung -> Remote-Zeichensatz: DEC-MCS

Für eine endgültige Lösung in Ihrer Anwendung:

  1. füge die Datei .bashrc hinzu (für alle aktuellen Benutzer) oder füge die Datei etc / bash.bashrc hinzu (für alle Benutzer)

NCURSES_NO_UTF8_ACS = 1

  1. Stell sicher dass du hast:

    • sudo apt-get -install ncurses

    • sudo apt-get installiere libncursesw5-dev

  2. Code hinzufügen: #include <locale.h> #include <ncurses.h> //change curses ------------------------------------- //add in main setlocale(LC_TYPE, "");

  3. Kompilieren Sie die Anwendung mit -lncursesw , etwa so:

    gcc -o arquivo arquivo.c -lncursesw

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.