Określ procent panelu w projekcie tmuxinator

95

Jak mogę określić procent panelu w tmuxinatorze?

Na przykład:

 project_name: ad_dev
 project_root: ~/Programming/WWW/Rails/projects/ApparelDreamDev
 rvm: ruby-1.9.2-p290@apparel_dev
 pre: SQL
 tabs:
   - editor:
       layout: main-vertical
       panes:
         - vim 75%  
         - #empty, will just run plain bash
         - top

np .: panel Vima zajmie 75% ekranu ... czy istnieje sposób, aby to określić? lub gdzie w dokumentacji mam zajrzeć? Nie mogę go nigdzie znaleźć.

Goles
źródło

Odpowiedzi:

197

Układ należy określić w layout:wierszu. Ale nie jesteś ograniczony do pięciu gotowych układów (takich jak główny-pionowy). Od strony man :

In addition, select-layout may be used to apply a previously used layout - 
the list-windows command displays the layout of each window in a form 
suitable for use with select-layout.  For example:

       $ tmux list-windows
       0: ksh [159x48]
           layout: bb62,159x48,0,0{79x48,0,0,79x48,80,0}
       $ tmux select-layout bb62,159x48,0,0{79x48,0,0,79x48,80,0}

 tmux automatically adjusts the size of the layout for the current window
 size.  Note that a layout cannot be applied to a window with more panes
 than that from which the layout was originally defined.

Najpierw skonfiguruj układ tak, jak lubisz - możesz regulować szerokości, resize-paneaż będzie odpowiedni dla Ciebie. Następnie biegnij tmux list-windows. Następnie powinieneś być w stanie użyć layout:wiersza z wyjścia niezmienionego w tmuxinator.conf

Tak więc na podstawie wyników z twojego sedna:

0: tmux [208x73] [layout b147,208x73,0,0[208x62,0,0,208x10,0,63{104x10,0,63,103x10,105,63}]] (active)

Odpowiednia sekcja pliku konfiguracyjnego tmuxinator powinna wyglądać następująco:

  - editor:
       layout: b147,208x73,0,0[208x62,0,0,208x10,0,63{104x10,0,63,103x10,105,63}]
       panes:
         - vim
         - #empty, will just run plain bash
         - top
Hamish Downer
źródło
tmux list-windows dał mi następujący wynik ( gist.github.com/2324001 ). Jak wyglądałaby linia układu tmuxinator na podstawie tych danych wyjściowych?
Goles
3
Na początku nie rozumiałem, jak uruchomić polecenie tmux list-windows. Wtedy zdałem sobie sprawę, że to oczywiste. 1) Poza sesją tmux (odłącz lub otwórz nowe okno konsoli) uruchom polecenie jak każde inne polecenie powłoki. 2) Wejdź w tryb poleceń ( PREFIX :) w tmux i użyj polecenialist-windows
caspyin
2
Myślę, że w odpowiedzi powinno być jasno list-panesokreślone, że w panes:sekcji powinna być określona ta sama liczba okienek, które zawiera polecenie . Na przykład, jeśli zdefiniowano 6 okienek, pod nimi powinno pojawić się 6 wierszy panes:, nawet jeśli zawierają one tylko znak -(mówiąc, że nie rób nic w tym panelu). Jeśli nie, okno nie zostanie poprawnie sformatowane zgodnie z opisem list-paneswyjściowym.
James McCormac
1
Niektórzy mogą uznać to polecenie za przydatne w skryptach, aby po prostu wydrukować część układu:tmux list-windows | sed -n 's/.*layout \(.*\)] @.*/\1/p'
Nathanael