Wie füge ich dem tmux-Fenster eine horizontale Aufteilung hinzu, die sich über die gesamte Breite des übergeordneten Fensters erstreckt?

29

Wie kann ich ein neues drittes horizontales Fenster erzeugen, das sich über die gesamte Breite erstreckt, wenn ein tmux-Fenster vertikal in zwei Bereiche unterteilt ist?

zB Wie komme ich daraus:

Ctr-b %

+–––––––––+–––––––––+
|         |         |
|         |         |
|         |         |  
|         |         |
|         |         |
+–––––––––+–––––––––+

dazu?

Ctr-b %
Ctr-b ...was jetzt?

+–––––––––+–––––––––+
|         |         |
|         |         |
|         |         |  
|         |         |
|         |         |
+–––––––––+–––––––––+
|                   |
|                   |
+–––––––––––––––––––+

an Stelle von?

Ctr-b %
Ctr-b "

+––––––––+––––––––––+
|        |          |
|        |          |  
|        |          |
|        |          |
|        |          |
|        +––––––––––+
|        |          |  
|        |          |
+––––––––+––––––––––+

Hinweis: Ich möchte nicht alle möglichen Layoutkombinationen durchlaufen, Ctr-b Spaceum schließlich zum gewünschten Layout zu gelangen - dies sollte so kurz wie möglich erfolgen.

jottr
quelle
Es ist erstaunlich, dass dies kein gelöstes Problem ist. Alle Antworten unten sind bisher völlig nutzlos und beziehen sich nicht auf Ihre eigentliche Frage :-(
rob3c

Antworten:

17

Sie können einen der fünf voreingestellten Layoutmodi (nebeneinander) verwenden, um dies zu erreichen. Öffnen Sie von Ihrem Startpunkt aus (eine einzelne vertikale Aufteilung) einen neuen Bereich, der standardmäßig den aktiven Bereich aufteilt, und ordnen Sie die Bereiche dann im Kachelmodus an:

Ctrlb,Alt5

Von man tmux:

M-1 bis M-5 Ordnen Sie die Fenster in einem der fünf voreingestellten Layouts an: horizontal, vertikal, horizontal, vertikal oder gekachelt.

Sie können select-layout tiledeiner Tastenkombination in Ihrem optional ein hinzufügen , .tmux.confwenn dies ein Layout ist, das Sie regelmäßig wünschen .

jasonwryan
quelle
Ich habe geweint, als ich erfuhr, dass tmuxes Presets gibt, nachdem ich es jahrelang benutzt habe.
DenisKolodin
Welche Tasten drückst du auf dem Mac? Ctrl barbeitet Option 5nicht für mich.
Leo Galleguillos
18

Holen Sie sich eine neuere Version von tmux (mindestens 2.3).

Von der Manpage:

Mit dieser -fOption wird ein neues Fenster erstellt, das sich über die gesamte Fensterhöhe (mit -h) oder die gesamte Fensterbreite (mit -v) erstreckt, anstatt das aktive Fenster zu teilen.

nabin-info
quelle
gute
antwort
5

tmux 2.3 unterstützt den -fSwitch, split-windowder genau das tut, wonach Sie suchen:

Die Option -f erstellt einen neuen Bereich, der sich über die gesamte Fensterhöhe (mit -h) oder die gesamte Fensterbreite (mit -v) erstreckt, anstatt den aktiven Bereich zu teilen.

Diebesmeister
quelle
3

Alte Frage, wollte aber hinzufügen, ob es ein Layout gibt, das Sie oft verwenden möchten, können Sie verwenden

   tmux list-windows

um dir das aktuelle Layout zu geben (dies wird eine Zeichenkette sein c904,273x74,0,0{81x74,0,0[81x29,0,0,1,81x21,0,30,2,81x22,0,52,3],191x74,82,0,0})

Übergeben Sie diese Zeichenfolge dann an select-layout, um sie anzuwenden. select-layoutWeitere Informationen finden Sie in der Manpage.

Nicolas Galler
quelle
das ist eine tolle ergänzung!
user2297550
2

Wenn Sie einen neuen dritten horizontalen Bereich erzeugen möchten, der sich über die gesamte Breite erstreckt, sollten Sie dies versuchen

Strg-b "

oder um durch zu radeln

Strg-B-Leertaste

kmassada
quelle
Danke für deinen Vorschlag. Ich möchte jedoch nicht alle möglichen Layouts durchlaufen, sondern einfach ein drittes Fenster mit dem gewünschten Layout und der gewünschten Position öffnen. Aber vielleicht ist Ihr Vorschlag die einzig mögliche Lösung, um dies zu erreichen (was ich hoffe, es ist nicht :)
jottr
@ Elementz hat die Strg-B "doppelte Anführungszeichen Arbeit ??
kmassada
Das ctr-b "schafft, was Sie in meinem dritten Beispiel oben sehen können.
Jottr
1

Strg + B dann "(doppelte Anführungszeichen), um in zwei horizontale Fenster aufzuteilen

Strg + B "o", um zum obersten Fenster zurückzukehren (überprüfen Sie Ihren Cursor, der Ihnen sagt, wo Sie sind)

Strg + B dann% (Umschalt + 5), um das obere Fenster zu teilen

Das sollte mit den Standardschlüsselbindungen funktionieren.

Hachya
quelle
4
Vielen Dank für den Versuch, meine Frage zu beantworten, aber der Ausgangspunkt ist NICHT eine leere Tafel, sondern ein bereits vertikal geteiltes Fenster.
Jottr