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%を占めます...これを指定する方法はありますか?またはドキュメントのどこを見ればよいですか?どこにも見つからないようです。

回答:


196

レイアウトはlayout:行で指定する必要があります。ただし、5つのプリセットレイアウト(main-verticalなど)に限定されません。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.

まず、好みに合わせてレイアウトをセットアップします。幅が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)

tmuxinator confファイルの関連セクションは次のようになります。

  - 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レイアウトラインはどのように見えますか?
ゴール

3
tmux list-windows最初はコマンドの実行方法がわかりませんでした。それから私はそれが明白だと気づきました。1)tmuxセッションの外(新しいコンソールウィンドウを切り離すか開く)で、他のシェルコマンドと同じようにコマンドを実行します。2)PREFIX :tmux内でコマンドモード()に入り、コマンドを使用しますlist-windows
caspyin

2
list-panesコマンドで一覧表示されているのと同じ数のペインをpanes:セクションの下に指定する必要があることは、回答で明らかにする必要があると思います。たとえば、6つのペインが定義されている場合、たとえ6つのペインが(このペインでは何もしない)panes:しか含まれ-ていない場合でも、6行がの下に表示されます。そうでない場合、ウィンドウはlist-panes出力で説明されているように正しくフォーマットされません。
James McCormac 2017年

1
いくつかは、単にレイアウト部分を印刷するためのスクリプトでこのコマンドが役立つ可能性がありますtmux list-windows | sed -n 's/.*layout \(.*\)] @.*/\1/p'
ナサニエル
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.