Durch erneutes Anbringen des Bildschirms (mit laufendem irssi) wird die Fenstergröße geändert

9

Immer wenn ich mich wieder mit meinem abgetrennten Bildschirm (der Irssi enthält) verbinde, wird die Größe meines Putty-Bildschirms auf die Größe geändert, die er beim Start hatte. Wenn ich danach die Fenstergröße ändere, den Bildschirm abnehme und die Größe zurücknehme, wird die Größe des Fensters wieder auf die ursprüngliche Größe geändert. Mit Fenster meine ich das Kittfenster auf meiner Windows-Box. Wie kann ich diese Funktion deaktivieren?

Verwenden von Windows XP als mein lokales und CentOS 6.0 als Remote-Betriebssystem. Kitt 0,61.

eis
quelle

Antworten:

10

Sie können auch verhindern, dass der Bildschirm die Größe von Remotesitzungen ändert. Die andere Antwort verhindert dies in Ihrer einen lokalen Kittinstallation - aber was ist, wenn Sie zu einer anderen Workstation kommen?

Um zu verhindern, dass der Bildschirm die Größe von xterms ändert, müssen Sie Folgendes tun:

  • Bearbeiten /etc/screenrc
  • Finden Sie dies dieses Stück Text

# Long time I had this in my private screenrc file. But many people
# seem to want it (jw):
# we do not want the width to change to 80 characters on startup:
# on suns, /etc/termcap has :is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l:

#termcap xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
#terminfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'

  • Wenn Sie diese beiden Termcap-Zeilen und den Bildschirm auskommentieren, verhalten Sie sich von nun an.

Ich bin gerade auf dieses Problem gestoßen, habe gegoogelt, die Antwort hier gefunden , getestet und dachte, es könnte für andere nützlich sein.

Beachten Sie, dass wenn Sie die globale screenrc-Konfiguration nicht bearbeiten können oder möchten, ~/.screenrcdies für Ihren aktuellen Benutzer in Ordnung ist.

Zlatko
quelle
Ich würde versucht sein , dies als die akzeptierte Antwort zu markieren , aber es scheint , ich bin nicht in der Lage , es zu testen , wie sich das Verhalten ging weg ... Habe upvote mindestens aber :)
uvb
Ja! hat es jetzt getestet und funktioniert genau wie beschrieben.
Eis
Ich bin froh, dass es für dich funktioniert hat :)
Zlatko
Der Kommentar von pmodin auf der ursprünglichen Site hat diese Antwort in meinem Fall behoben: Ich musste sie als "xterm *" festlegen, da meine Kittkonfiguration xterm-color als TERM verwendet.
Mikuz
Ich arbeite nicht für mich. Ich kann die Größe nicht ändern, indem ich 4.02.01 verwende. Ich versuche auch, mit screen -AR oder einer beliebigen Kombination aus screen -Ar zu starten. Der erste Start mit screen funktioniert einwandfrei, und der erste Start von screen -A funktioniert einwandfrei. Habe dies auch auf .screenrc, was es fälschen soll, und gehe nicht. escape ^agefolgt von bindkey ^ad detach
Brian Thomas
12

Habe die Antwort gefunden. Die Funktion wird als "Größenänderung des Remote-Terminals" bezeichnet und kann unter Konfiguration -> Terminal -> Funktionen -> Größenänderung des ferngesteuerten Terminals deaktivieren deaktiviert werden, wie in der PuTTY-Konfiguration beschrieben .

Ich weiß jedoch nicht genau, warum das erneute Anbringen des Bildschirms die Größe der Remote-Anforderung im Fenster ändert.

eis
quelle
1
Das hat bei mir gut funktioniert. Ich habe eine termcapinfo-Zeile in meinem .screenrc, die den Scrollback-Puffer weiterleitet. Ich verstehe nicht, wie die termcapinfo-Zeile analysiert wird, und möchte mich nicht damit anlegen.
Morphit
2

Der akzeptierten Antwort fehlt eine Erklärung für die Phänomene. Hier ist eine:

  • Die lange Zeichenfolge für isist eine Initialisierungszeichenfolge für das Terminal, die normalerweise mit rs(verwendet von reset) identisch ist .
  • Das angegebene Beispiel enthält eine Steuersequenz, die das Terminal von 132 auf 80 Spalten zurücksetzt. Nur dieser Teil ist die "3" in \E[?1;3;4;6l, die in vier Steuerelemente aufgeteilt werden könnte. Diejenige , die die Breite beeinflusst, ist \E[?3l(siehe XTerm-Steuersequenzen für "132 Column Mode (DECCOLM)").
  • Dies ist zufällig eine VT100-Sequenz, die in der Beschreibung des x11R5 xterm- Terminals verwendet wurde.
  • Wenn der Bildschirm gestartet (oder angehängt) wird, wird das Terminal für alle Fälle initialisiert. Das ändert die Breite des Terminals.
  • CentOS 6 ist jetzt ein bisschen alt; Die aktuelle Upstream- xtermBeschreibung verwendet seit einiger Zeit eine kürzere Sequenz, die mehr Dinge initialisiert.
  • Die neuere / kürzere Sequenz sieht folgendermaßen aus: is2=\E[!p\E[?3;4l\E[4l\E>(definiert in xterm-basic). Der \E[!pTeil ist DECSTR, der Zeichensätze, Farb- und Videoattribute zurücksetzt. Die ältere Sequenz hat das nicht getan; zu sagen screen, es zu benutzen funktioniert, ist aber nicht so sauber.
  • Wenn Sie eine andere TERMEinstellung verwenden, hat die Anpassung in .screenrckeine Auswirkung (da sie TERMzur Anpassung an die jeweilige Einstellung verwendet wird).
  • Insbesondere wenn Sie so etwas verwenden xterm-256color, können Sie das gleiche Verhalten erneut bemerken.
Thomas Dickey
quelle