freeX: Tips & Tricks
|
»less« löscht das Terminal
In einem X-Term löschen »less« und »vim« das Terminal bevor sie ihren eigenen Bildschirm anzeigen und wenn das Programm beendet wird. Das verhindert zwar, daß das Terminal von diesen Programmen beschrieben wird, bedeutet jedoch auch, daß man nicht mehr von diesem kopieren kann, nachdem das Programm beendet ist.
Schlimmer noch, wenn nur 10 Zeilen angezeigt werden sollen und »less -E« aufgerufen wird, sieht man gar nichts. »less« wird oft mit dem Parameter »-E« gestartet, damit das Programm nur dann manuell beendet werden muß, wenn mehr Zeilen angezeigt werden als auf den Bildschirm passen.
Genaugenommen löschen beide Programme das Terminal nicht, sondern nutzen lediglich ein Feature vom X-Term aus, das allerdings tatsächlich nur relativ selten genutzt wird. X-Terms bieten nicht nur das sichtbare Terminal sondern darüberhinaus noch ein zweites alternatives. Mit speziellen Kontrollsequenzen wird zwischen beiden Terminals hin- und hergeschaltet. Dabei wird der Inhalt des bisherigen Terminals gesichert und das jeweils andere angezeigt.
Die Programme »vim« und »less« nutzen dieses aus, schalten beim Start auf das alternative Terminal, beschreiben selbst nur dieses und schalten beim Programmende wieder zurück. Wen diese Einstellung stört, startet »less« mit dem Parameter »-X« bzw. »--no-init«, um die Anweisungen zum Initialisieren und Deinitialisieren des Terminals zu unterdrücken.
Wenn kein Programm auf den alternativen Bildschirm zugreifen soll, muß dieses Feature jedoch im X-Term direkt deaktiviert werden. Das geschieht im laufenden Betrieb durch die Einstellung »Enable Alternate Screen« in den »VT Options«, in die man mit Ctrl-Mittlere-Maustaste gelangt (siehe Abbildung).
Natürlich ist es auch möglich, den alternativen Bildschirm vollständig und für jedes zukünftige X-Term zu deaktivieren. Dazu werden die XResourcen angepaßt, was durch die folgende Zeile in die Datei »~/.Xdefaults« geschieht:
XTerm.VT100.titeInhibit: true
Diese Einstellung ist allerdings erst beim nächsten Start von X11 aktiv. Soll sie noch in der gleichen Session aktiviert werden, dann wird die Datei erneut eingelesen. Das geschieht mit dem folgenden Befehl:
xrdb -merge ~/.Xdefaults