Comment ajouter une division horizontale à la fenêtre tmux qui couvre toute la largeur de la fenêtre parent?


29

Lorsque j'ai une fenêtre tmux divisée verticalement en deux volets, comment puis-je générer un nouveau troisième volet horizontal qui s'étend sur toute la largeur?

par exemple, comment puis-je obtenir de cela:

Ctr-b %

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

pour ça?

Ctr-b %
Ctr-b ...Maintenant quoi?

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

au lieu de cela?

Ctr-b %
Ctr-b "

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

Remarque: Je ne veux pas parcourir toutes les combinaisons de mise en page possibles Ctr-b Spacepour finalement arriver à la mise en page souhaitée - cela doit être réalisé avec autant de brièveté que possible.


il est étonnant que ce ne soit pas un problème résolu. Jusqu'à présent, toutes les réponses ci-dessous sont complètement inutiles et ne répondent pas à votre question réelle :-(
rob3c

Réponses:


17

Pour ce faire, vous pouvez utiliser l'un des cinq modes de présentation prédéfinis (mosaïque). À partir de votre point de départ (un seul fractionnement vertical), ouvrez un nouveau volet, qui par défaut divisera le volet actif, puis organisera les volets en mode mosaïque:

Ctrlb,Alt5

De man tmux:

M-1 à M-5 Organisez les volets dans l'une des cinq dispositions prédéfinies: même horizontale, même verticale, principale horizontale, principale verticale ou mosaïque.

Vous pouvez éventuellement ajouter un select-layout tiledà un raccourci clavier dans votre .tmux.confs'il s'agissait d'une mise en page que vous vouliez régulièrement.


J'ai pleuré quand j'ai appris qu'il y tmuxavait des préréglages après des années d'utilisation.
DenisKolodin

Quelles touches appuyez-vous sur Mac? Ctrl b, Option 5ne fonctionne pas pour moi.
Leo Galleguillos

18

Obtenez une version plus récente de tmux (au moins 2.3).

Depuis la page de manuel:

L' -foption crée un nouveau volet s'étendant sur toute la hauteur de la fenêtre (avec -h) ou toute la largeur de la fenêtre (avec -v), au lieu de fractionner le volet actif.


bonne réponse, mais un exemple ou deux serait très illustratif
dbkeys

5

tmux 2.3 prend en charge le -fcommutateur split-windowqui fait exactement ce que vous recherchez:

L'option -f crée un nouveau volet couvrant toute la hauteur de la fenêtre (avec -h) ou toute la largeur de la fenêtre (avec -v), au lieu de fractionner le volet actif.


3

Ancienne question mais je voulais ajouter, s'il y a une mise en page que vous souhaitez utiliser souvent, vous pouvez utiliser

   tmux list-windows

pour vous donner la disposition actuelle (ce sera une chaîne comme c904,273x74,0,0{81x74,0,0[81x29,0,0,1,81x21,0,30,2,81x22,0,52,3],191x74,82,0,0})

Passez ensuite cette chaîne à select-layoutpour l'appliquer. Recherchez select-layoutdans la page de manuel pour plus d'informations.


c'est un excellent complément!
user2297550

2

Si vous souhaitez faire apparaître un nouveau troisième volet horizontal qui s'étend sur toute la largeur, je vous suggère d'essayer ceci

Ctrl-b "

ou pour parcourir

Espace Ctrl-b


Merci pour votre suggestion. Cependant, je ne veux pas parcourir toutes les dispositions possibles, mais simplement générer un troisième volet avec la disposition et la position souhaitées. Mais peut-être que votre suggestion est la seule solution possible pour y parvenir (ce que j'espère que ce n'est pas le cas :)
jottr

@elementz a fait le travail des guillemets doubles ctrl-b ??
kmassada

Non. Cela ctr-b "crée ce que vous pouvez voir dans mon troisième exemple ci-dessus.
jottr

1

Ctrl + B puis "(guillemets doubles) pour diviser en deux fenêtres horizontales

Ctrl + B "o" pour revenir à la fenêtre supérieure (vérifiez votre curseur, qui vous dira où vous êtes)

Ctrl + B puis% (Maj + 5) pour diviser la fenêtre du haut

Cela devrait fonctionner avec les raccourcis clavier par défaut.


4
Merci d'avoir essayé de répondre à ma question, mais le point de départ n'est PAS une ardoise vierge, mais une fenêtre déjà divisée verticalement.
jottr
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.