Укажите процент панели в проекте tmuxinator


95

Как я могу указать процент панели в tmuxinator?

Например:

 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

например: панель vim займет 75% экрана ... есть ли способ указать это? или где в документации искать? Кажется, нигде не могу найти.

Ответы:


198

Макет должен быть указан в layout:строке. Но вы не ограничены пятью предустановленными макетами (например, основной-вертикальной). На странице руководства :

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.

Сначала настройте макет так, как вам нравится - вы можете регулировать ширину с помощью, resize-paneпока он не станет именно вам. Тогда беги tmux list-windows. И тогда вы сможете использовать layout:строку из вывода без изменений в tmuxinator.conf

Итак, исходя из вывода вашей сути:

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

Соответствующий раздел файла conf tmuxinator должен быть:

  - 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

tmux list-windows дал мне следующий результат ( gist.github.com/2324001 ). Как будет выглядеть строка макета tmuxinator в соответствии с этим выводом?
Goles

3
Я сначала не понял, как запустить команду tmux list-windows. Потом я понял, что это очевидно. 1) Вне сеанса tmux (отсоедините или откройте новое окно консоли) запустите команду, как любую другую команду оболочки. 2) Войдите в командный режим ( PREFIX :) в tmux и используйте командуlist-windows
caspyin

2
Думаю, в ответе следует четко list-panesуказать, что в panes:разделе должно быть указано такое же количество панелей, перечисленных командой . Например, если определены 6 панелей, под ними должны появиться 6 строк panes:, даже если они содержат только -(говоря, что на этой панели ничего не надо делать). В противном случае окно не будет отформатировано правильно, как описано в list-panesвыводе.
Джеймс МакКормак,

1
Некоторые могут найти эту команду полезной в скриптах, чтобы просто распечатать часть макета:tmux list-windows | sed -n 's/.*layout \(.*\)] @.*/\1/p'
Натанаэль
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.