Dynamischer Zeilenumbruch im GNOME-Terminal

27

Wie können Sie erreichen, dass die Zeilen im GNOME-Terminal dynamisch umgebrochen werden, wenn Sie die Größe des Fensters ändern?

Marius Butuc
quelle

Antworten:

19

Zum Zeitpunkt der Frage war dies in Gnome Terminal nicht möglich. Ein Update wurde jedoch Ende 2013 durchgeführt. Diese Änderung hat es nicht in Ubuntu 14.04 geschafft, sollte aber Teil von Ubuntu 14.10 sein.

Laut dem Problem im Launchpad können Sie diese Funktion heute nutzen, indem Sie die Gnome-Team-PPA aktivieren. Sie können das Gnome-Team-Staging-PPA (Staging erforderlich, um die neueste Version zu erhalten) folgendermaßen aktivieren

 sudo apt-add-repository ppa:gnome3-team/gnome3-staging

Aktualisieren Sie Ihre Quellen

sudo apt-get update

Installieren Sie gnome-terminal neu, um die neueste Version zu erhalten

sudo apt-get install gnome-terminal

Überprüfen Sie, ob Sie Version 3.13 oder höher haben (ab dem 10. September sollte 3.13.1 sein).

$ gnome-terminal --version
GNOME Terminal 3.12.1
Michael Martin-Smucker
quelle
Ich habe gerade die aktualisierte Gnome-Team-PPA installiert, jetzt habe ich Gnome Terminal 3.10.2. Kein dynamischer Zeilenumbruch. So...?
Jay Sullivan
@notfed Du brauchst wahrscheinlich 3.12, das für Ubuntu 14.04 im stagingppa verfügbar ist . Versuchen Sie (auf eigenes Risiko)ppa:gnome3-team/gnome3-staging
Michael Martin-Smucker
Habe gerade versucht das "normale" ppa:gnome3-team:gnome3ppa hinzuzufügen , habe eine Version die 3.10 war. Nach dem Hinzufügen habe ppa:gnome3-team:gnome3-stagingich die richtige Version 3.13.1 bekommen, damit ich bestätigen kann, dass dies funktioniert.
Victor Bjelkholm
Es ist die Versionsnummer von VTE, die wirklich zählt. Das Feature erschien in vte-0.36 (sollte dementsprechend echo $VTE_VERSIONmindestens 3600 melden).
egmont
1
Ich habe jetzt GNOME Terminal 3.12.3auf Ubuntu 14.04 diese Methode verwendet und das Reflow funktioniert.
nh2
11

Das Gnome-Standardterminal erlaubt dies nicht. Wenn Sie jedoch im Terminal tippen screen, wird das Terminal in einem Terminal-Emulator ausgeführt, dessen Größe korrekt geändert wird.

Zum Beispiel - hier ist mein Home-Ordner während der Ausführung ls -l

Bildbeschreibung hier eingeben

und hier ist der gleiche Bildschirm horizontal verändert

Bildbeschreibung hier eingeben

Gnome-Terminal automatisch mit Screen starten

cp /usr/share/applications/gnome-terminal.desktop ~/.local/share/applications

Bearbeiten Sie dann die Datei gnome-terminal.desktop und ändern Sie die Exec-Befehlszeile in:

Exec=gnome-terminal -x screen -q
fossfreedom
quelle
2
Nach der Installation des Pakets - sudo apt-get install screen- wird der Zeilenumbruch ausgeführt, die Ausführung screenzu diesem Zweck ist jedoch nicht wirklich unauffällig. Mal sehen, welche anderen Problemumgehungen es gibt.
Marius Butuc
sehr wahr- habe mit einem weiteren vorschlag aktualisiert.
fossfreedom
Es gibt ein Thema über Gnome-Terminal + GNU-Bildschirmintegration und einen Fehlerbericht, aber niemand arbeitet daran. Dennoch sieht der GNU-Bildschirm aus wie der Weg zum dynamischen Zeilenumbruch.
Maxime R.
1
Nur noch ein Problem: Jetzt ist Scrollen eine lästige Pflicht. :( Vielleicht schlimmer als keinen Reflow zu haben.
allprog
1
Allen, die darüber nachdenken, dies zu versuchen: Zuerst ist es cool, aber wirklich schrullig, und schließlich habe ich aufgehört, es zu verwenden
Jay Sullivan,
10

Ich mache große Fortschritte bei der Implementierung des Umwickelns in VTE (Gnome-Terminal usw.). Bitte schauen Sie sich den Upstream-Bug unter https://bugzilla.gnome.org/show_bug.cgi?id=336238 an. Probieren Sie meinen Patch aus, wenn Sie ein Hacker sind. Im Falle eines technischen Feedbacks kommentieren Sie diesen Fehler bitte, danke! Hoffentlich landet meine Arbeit bald im Mainstream-VTE.

egmont
quelle
2
Ich möchte Ihnen nur meinen aufrichtigen Dank für diese Arbeit aussprechen. Es ist obszön, dass VTE 2013 nicht neu gewickelt wird.
Justin Force
Wenn dieses Feature es bis zur nächsten Ubuntu-Version schaffen würde, wäre es super, super, super!
Allprog
Ich hoffe es wird es schaffen. Es ist jetzt in der VTE-Version 0.35 enthalten, die als Teil von Gnome 3.12 zu einer stabilen Version 0.36 wird.
Egmont
Leider hat es nicht machen es in ubuntu treuen, aber Sie können Ihre vte (und gnome-terminal) Pakete aus dem gnome3 Staging - Bereich aktualisieren launchpad.net/~gnome3-team/+archive/gnome3-staging/+packages
egmont
7

Gnome-Terminal kann das nicht ( Upstream-Bug ).

Nach einigen Experimenten scheint rxvt-unicode zu funktionieren.

Installation über das Software Center

sudo apt-get install rxvt-unicode

Das Umfließen funktioniert nur, wenn Sie genug Text haben, um den Wert eines ganzen Bildschirms auszufüllen, auch bekannt als, wenn Sie den Scrollback-Puffer gedrückt haben.

Persönlich empfinde ich rxvt als ziemlich hässlich, aber wenn das Auffließen für Sie wichtiger ist, probieren Sie es aus.

Achiang
quelle
Was mich erstaunt ist, dass bis heute niemand daran gedacht hat, ein neues Terminal zu entwickeln, das nicht auf VTE basiert. Deshalb fließen die meisten Terminal-Apps für Linux nicht neu. Schauen Sie sich nur das Terminal.app von Mac OSX an, es fließt wieder und ist einer der besten Terminalemulatoren, die ich je verwendet habe.
Papashou
6

Obwohl ich die Antwort auf diese Frage für eine normale Terminalsitzung leider nicht kenne, weiß ich, wie es geht, wenn Sie den Bildschirm verwenden (auch wenn Sie byobu verwenden): Fügen Sie Ihren Bildschirm wie folgt wieder hinzu:

screen -raAd

Dies skaliert Ihre Bildschirmsitzung, wenn Sie die Größe ändern (und auch vorhandene laufende Sitzungen trennen). Ich verwende dies immer, um eine Bildschirmsitzung wiederherzustellen.

Anna
quelle
2
Das ist cool ... aber jetzt kann ich im Terminal nicht nach oben scrollen ... :(
gregghz
Zum Scrollen in screenfinden Sie diese Frage .
Ruslan,
2

Soweit ich weiß, hängt es von dem Programm ab, das Sie verwenden. Das Terminal selbst kann Text nicht dynamisch umbrechen. Einige Terminalprogramme können jedoch, zB less[1].

Ein Workaround wäre, zu versuchen, [2] das durchzuleiten, was Sie anzeigen möchten less.

[1] http://linuxcommand.org/lts0030.php#less

[2] http://linuxcommand.org/lts0060.php#pipes

Dariel Dato-on
quelle
0

Lösung: Installieren Sie den Bildschirm ( sudo apt-get screen ) und starten Sie ihn in Ihrem Terminal.

ern0
quelle
3
Besser noch, installiere byobu . Grundsätzlich ist es eine nette Sache screen, aber eine nette Sache ist, dass Sie es in allen Terminals automatisch starten lassen können, so dass Sie kaum wissen, dass es da ist.
ams
0

In den letzten mehr als 5 Jahren habe ich regelmäßig längere Sitzungen mit der Pflege und dem Füttern von Linux-Maschinen (an weit entfernten Orten) verbracht. Und im Grunde hat Gnome Terminal es nicht ganz geschafft.

Ich habe oft Windows-basiertes SecureCRT und SecureFX (SFTP) sowohl auf XP und Win7 als auch auf Ubuntu (unter Wine ) verwendet, um mir einen viel besseren Satz von Funktionen zu bieten , einschließlich: Mehrfachfenster und / oder Registerkarten, gespeicherte Einstellungen , Login-Makros, sitzungsspezifische Kolorierung, viele Anpassungen, integriertes SFTP und sogar Skripterstellung. Es gab immer kleinere Pannen (bei Wine, insbesondere bei SFTP), und ich bin unter Ubuntu häufig zu Gnome Terminal zurückgekehrt, um lokale Aufgaben zu erledigen .

Allerdings habe ich seit Anfang dieses Jahres (in der Beta) SecureCRT (ursprünglich für Ubuntu ). Abgesehen von der engeren Integration mit Nautilus (oder etwas anderem) für die SFTP / SSH-Dateiübertragung hat dies meine Verwendung von Gnome Terminal fast verdrängt .

Sogar die Einrichtung neuer Computer ist mit mühelosem Ausschneiden und Einfügen , vollständiger Sitzungserfassung und gespeicherten Verbindungseinstellungen besser . Sogar gegenüber den meisten anderen Terminal-Apps war die Größen-, Fluss- und Zeichensatzänderung immer überlegen.

Ich habe es nicht ausprobiert, aber es wurde gerade für Mac OS X v1.5 (Intel) oder v10.6 + veröffentlicht.

david6
quelle