Jak w równym stopniu zrównoważyć podzielone panele tmux (1)?


217

Szukam zachowania podobnego do tego, w jaki sposób vim (1) obsługuje swoje podzielone okna ^w =. Wiem, że tmux (1) ma predefiniowane układy ^b Meta[1-5], ale prawdopodobnie nie ma układu, którego obecnie używam.

Podczas podziału okna, okno jest dzielone na pół dla obu paneli. Podziel się ponownie, a ta połowa zostanie podzielona na dwie nowe. Połącz pionowe i poziome podziały, a one nadal będą się zmniejszać o połowę, a każda nowa szyba będzie coraz mniejsza.

Jak mogę zachować nowy układ, który właśnie utworzyłem, ale aby wszystkie podziały pionowe i poziome były jednakowo zrównoważone, tak jak robi to vim (1) ^w =?


Opis układu „kafelkowego” brzmi: „Szyby są rozmieszczone tak równomiernie, jak to możliwe w oknie, zarówno w wierszach, jak i kolumnach”. Czy możesz wyjaśnić, w jaki sposób chcesz różni się od tego, czego chcesz?
Lars Kotthoff,

1
Pewnie. To bardzo dobrze to opisuje: gist.github.com/1942422
Aaron Toponce

Odpowiedzi:


284

Pionowo

select-layout even-vertical
Zwykle przypisywany do: Ctrl+ b, Alt+2

Poziomo

select-layout even-horizontal
Zwykle przypisywany do: Ctrl+ b, Alt+1


70
Dla innych ludzi, którzy się zastanawiają: C-b M-2oznacza Control-b i M-2oznacza alt + 2.
Christophe De Troyer

29
M-2 oznacza dla mnie ESC + 2 w Debianie przy użyciu Gnome Terminal. Prawdopodobnie zależy od konfiguracji.
arcyqwerty

7
C-...i M-...są emacs-ims M- oznacza „meta”, który jest [Alt] w połączeniu z lub [Esc], po którym następuje klawisz odniesienia, obie opcje wyglądają tak samo na przewodzie, ale istnieje możliwość, że twój GUI może uwięzić [ Alt] sekwencja
Jasen

3
Wystarczy umieścić to tutaj na wypadek, gdyby pomogło to komuś innemu, ponieważ ciągle jestem zdezorientowany, „pionowe” i „poziome” są kierunkiem odstępów - to znaczy, wybranie parzystej-pionowej stworzy układ, w którym trzy szyby zostaną ułożone w stos w pionie, o równej wysokości, gdzie równomiernie-poziomy stworzy układ, w którym trzy szyby są obok siebie, o równej szerokości
A. Wilson

Jak zrobić M-2 na macOS za pomocą klawiatury, na której „2” wymaga naciśnięcia Shift (jak na klawiaturze francuskiej)? Nie udało mi się, z różnymi kombinacjami alt, kontroli, dowodzenia, ucieczki i shift + 2…
Eric O Lebigot

95

Możesz używać ctrl-b spacedo przechodzenia między układami z równomiernymi odstępami, ale to niekoniecznie zachowuje układ, który miałeś.


2
Ideą trick (jeśli chcesz mapować go do czegoś innego lub dostosować go) bind-key -r Space next-layout. Następnie C-b Space Space Space...
BenC

3
Czy istnieje sposób, aby dowiedzieć się, który układ wybrałem i jak szybko do niego wskoczyć?
przytula

20

Z wiersza poleceń możesz użyć

tmux select-layout tiled

aby twoje podziały były mniej więcej równe. Możesz to również przypisać do klawisza.


3
Zwykle przypisywany do:C-b M-5
minipif

7

Nie znam żadnego skrótu klawiszowego, ale może to pomoże:

Możesz spróbować napisać skrypt, aby wykonać układ, i przypisać klucz do skryptu. Możesz to zrobić za pomocą tmuxpolecenia, pipe-pane [-o] [-t target-pane] [shell-command]aby zapisać bieżący układ w skrypcie. Następnie musisz przeczytać układ przygotowany przez skrypt za pomocą tmuxpolecenia select-layout.


1

Trudno mi było znaleźć magiczne zaklęcie, aby podzielić się na 4 równe kwadranty, więc oto:

# Split session into FOUR EQUAL quadrants
tmux selectp -t 0    # select the first (0) pane
tmux splitw -h -p 50 # split it into two halves
tmux selectp -t 0    # select the first (0) pane
tmux splitw -v -p 50 # split it into two halves

tmux selectp -t 2    # select the new, second (2) pane
tmux splitw -v -p 50 # split it into two halves
tmux selectp -t 0    # go back to the first pane

1

ctrl ba następnie :resize-pane -Mużywaj myszy! (wymaga mouse-modewłączenia)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.