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?

TheLQ
quelle
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:

Dustin Kirkland
quelle
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.

Lekensteyn
quelle
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!

DanielS
quelle
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

Edvaldo Silva
quelle