Ich habe ein kleines Problem mit dem GNU-Bildschirm. Auf meinem RaspberryPi läuft eine GNU-Bildschirmsitzung. Wenn ich mich jetzt manchmal dem Terminal anschließe, sehe ich seltsame Zeichen, wenn ich auf Fedora klicke (ich verwende Terminator). Diese Zeichen hängen von den Koordinaten meiner Maus ab ... Scheint, als ob das an GNU Screen gesendete Klickereignis falsch dekodiert wurde. Diese Zeichen beinhalten Dinge wie
kM#kM - Z3#Z3 - q-#q-
etc…
Ich dachte zuerst, es sei ein Problem mit meinem, tty
also ging ich und eröffnete eine neue GNU Screen-Sitzung auf meinem RaspberryPi: überhaupt kein Problem.
Ich habe stty -a
an beiden Sitzungen teilgenommen und festgestellt, dass es Unterschiede gibt. Ich habe dann eine stty -g > ~/stty-good-settings
gute Sitzung durchgeführt und diese mit der schlechten Sitzung geladen stty `cat ~/stty-good-settings`
(ich habe die Werte danach verglichen, die Einstellungen wurden erfolgreich geladen), aber ich habe immer noch das Problem in einer der Bildschirmsitzungen und nicht in der anderen!
Ich bin nicht sicher, was passiert, wenn dies an meinem TERM
Wert (in beiden tty
Fällen gleich), meinen Einstellungen, meinem Terminal liegt.
quelle
tmux
von Zeit zu Zeit auch mit. Irgendwann scheinen die Terminal-Multiplexer banan zu werden und die Eingänge falsch zu dekodieren (xterm
könnte hier auch etwas zu sagen haben).reset
behebt das normalerweise für mich.reset
auf dem Bildschirm! Vielen Dank für die Lösung, aber ich würde gerne einen Einblick erhalten, warum ...Antworten:
Etwas, das im GNU-Bildschirm ausgeführt wird, entschied, dass es stattdessen in einem xterm (oder ähnlichem) ausgeführt wurde, und aktivierte den Application Mouse-Modus. (Oder etwas, das Sie in diesem Terminal ausführen, bevor Sie eine Verbindung zum GNU-Bildschirm hergestellt haben, möglicherweise sogar vor ssh, das sich nicht richtig zurückgesetzt hat.) Dies ist häufig der Fall, wenn $ TERM nicht "screen", sondern z. B. "xterm" oder "screen" ist. xterm ”. Letzteres tritt auf
ncurses-term
installierten Debian-Systemen (und Derivaten) auf . Versuchen Sie, dieses Paket zu löschen (auf Host und Raspi).Ansonsten kann
reset
(wie schon gesagt)printf \\x033c
vorübergehend geholfen werden. Oder natürlich die richtigen Escape-Sequenzen, um Ihren Terminal-Emulator anzuweisen, den Mausmodus zu deaktivieren.quelle
reset
hat den Trick gemacht. Vielen Dank.reset
hat seinen Platz, löscht aber Ihren Bildschirm. Wenn Sie ausgeführt werdenxterm
oder etwas Kompatibles verwenden , ist dies die kürzeste und am wenigsten störende OptionDas ist in der nicht explizit genannt Maus - Tracking - Abschnitt von XTerm- Steuersequenzen , sondern
xterm
ermöglicht es Ihnen , (deaktivieren) Mausmodus zurücksetzen , indem Sie eine der möglichen Modi ausgeschaltet, die eingeschaltet werden können. Diese sind als benannte Konstanten dokumentiert:und
9
ist die kürzeste.Der Mausmodus wird von vielen Anwendungen aktiviert. Wenn man das Programm verlässt, ohne es auszuschalten, entstehen die seltsamen Zeichen, die Sie gesehen haben. ncurses-Anwendungen deaktivieren den Mausmodus, in
endwin
dem alle gut erzogenen Anwendungen den Aufruf verfluchen. Andere Anwendungen verwenden möglicherweise keine (n) Flüche oder vergessen den Anrufendwin
.ncurses-Anwendungen überprüfen, ob der xterm-mouse-Modus verfügbar ist, indem sie die
kmous
Fähigkeit testen (was Teil derscreen
Terminalbeschreibung ist). Das hat sich seit der normale Weg zu Test für die Funktion gewesen 1999 , so dass es unwahrscheinlich ist , dass eine Anwendung Mausmodus aktiviert versehentlich. Es zeigt vielmehr eine Anwendung an, die vergessen hat, ihre Arbeit zu erledigen.Es gibt übrigens keinen
screen.xterm
Eintrag in Debiansncurses-term
Paket (es ist hilfreicher, es zu behalten als es zu entfernen). Hier ist eine Liste aller bildschirmbezogenen Einträge in diesem Paket. Die meisten werden zum Beheben vonscreen
Verhaltensabweichungen für verschiedene Terminals verwendet:quelle