Tmux: 特定のペインに移動するための単一のコマンド

Tmux: 特定のペインに移動するための単一のコマンド

tmux と履歴に関するさまざまなツールがあるので、どこで (具体的にはどのペインで) 何が起こったかを遡って追跡できます。

zsh preexec 内で、実行したコマンドに関連付けられたさまざまな情報をログアウトできます (カスタム シェル コマンド履歴形式用)。

  • $TTY例えば、/dev/pts/34
  • $(tmux display -p "#{window_id} #D")例えば、@4 %28

しか持っていない場合でも$TTY、出力を使用することができます。

tmux list-panes -a -F '#{pane_tty} #{window_id} #D'

それをマッピングします。

今、私はこのワークフローを望んでいました:カスタム履歴ログを見て、取得することはできます@4 %28が、問題のペインに実際にフォーカスするには2つの呼び出しを発行する必要があるようですtmux。実行する必要があります

tmux select-window -t @4 && tmux select-pane -t %28

もっと簡単な方法があるかどうか疑問に思っています。tmux select-pane -t @4 %28、または、実際には、select-pane おそらくウィンドウにフォーカスを合わせるだけでいいのでしょうか?

答え1

tmux私はCLI インターフェイスのシンプルさに概ね満足しています...select-pane行うべきことは、単にそのペインを選択し、ウィンドウとセッション状態をそのままにしておくことです。

私の質問では、別のペインにアタッチされている場合に特定のペインに「移動」しようとすることの影響を考慮していませんでした。セッションCLI を使用すると、任意のセッションの現在のウィンドウと現在のペインを自由に変更したり、任意のセッションに切り替えたりすることができます。これらすべてを手間をかけずに実行できる使いやすいインターフェイスがありません。(手間をかけずに実行できない例として、セッション ID は次のようになります。$2そのため、これらを一重引用符で指定する必要があります)

関連情報