Tmux:ウィンドウを分割ウィンドウとしてリンクするにはどうすればよいですか?


33

まったく異なるtmuxセッションからウィンドウを取得し、水平/垂直分割として現在のウィンドウにアタッチするにはどうすればよいですか?

回答:


45

結合ペインを探しているように聞こえます。技術的には、質問の2番目の部分では、複数のペインを含めることができるため、他のセッションのウィンドウ全体ではなく、ペインを現在のウィンドウに結合します。

以下に例を示します。セッション0、ウィンドウ4、およびセッション2にいて、ウィンドウ3のペイン1が必要であるとします。tmuxプロンプトで(ctrl+b :デフォルトで)

join-pane -s 2:3.1

これにより、ペイン1がウィンドウ3、セッション2(-sはソースウィンドウで、session:window.paneの形式を取ります)から現在のセッション(セッション0)に移動します。

以下は、tmuxのマニュアルページから入手できる、join-paneの完全なドキュメントです。ドキュメントを読んで私にとって最も混乱した部分は、セッション、ウィンドウ、およびペイン番号を指定するsrc-paneに期待される形式を理解することでした(session:window.pane上記の例による)。セッションとウィンドウに名前を付けて、インデックス番号の代わりにそれらの名前を使用することもできます。

 join-pane [-dhv] [-l size | -p percentage] [-s src-pane] [-t dst-pane]
   (alias: joinp)
   Like split-window, but instead of splitting dst-pane and 
   creating a new pane, split it and move src-pane into the 
   space.  This can be used to reverse break-pane.

9
ペインを移動する代わりにコピーできますか?
pielgrzym

@pielgrzym私もその答えを知りたいです。見つけたらここに投稿してください。
ブルーノブロノスキー

OPはリンクペインのようなものを探していたと思いますが、残念ながら存在しません。:ISは、ここに説明したように明らかに要求された動作は、ネストされたtmuxはソケットを使用して模倣することができるsuperuser.com/a/323658
eligが

16

同じセッション内からペインを結合しようとする場合、本能的にコマンドから「session:」を省略したいと思うでしょう。これは失敗します。-sおよび-tがjoin-paneに切り替わると、[session:] window [.pane]ではなく[session]:window [.pane]の形式の引数を受け入れるようです。

つまり、セッションはオプションであり、:は必須です。これは間抜けです。これは、必要なブラウザのequivelentだろうhttp://google.com:/をのショートカット版としてhttp://google.com:80/とにエラーを与えてhttp://google.com/ O_O

ctrl-bから!現在のペインを別のウィンドウに分割し(これは私たちがやりたいことの反対です)、ctrl-b @(これはすぐ右側です!)はデフォルトでバインドされていません(つまり、何も上書きしないことを意味します)このショートカットを作成することをお勧めします...

bind-key @ command-prompt -p "create pane from:"  "join-pane -s ':%%'"

そこに素敵なバインディング。
ニシャント14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.