tmuxの状態/トグル変数

tmuxの状態/トグル変数

./tmux.confに状態変数を定義して、この変数に基づいてキーバインディングに別のコマンドを呼び出す方法があるかどうか疑問に思います。

たとえば、tmuxでウィンドウの最大化を切り替えたいM-F(ウィンドウが最大化されていない場合、MFはそれを最大化し、そうでなければ最大化解除します)。

これまで私の疑似コードは次のようになります。

# Maximize pane: -------
# IF PANE_MAXIMIZED=False: 
# THEN: PANE_MAXIMIZED=True, and:
bind -n M-F new-window -d -n tmux-zoom  \; swap-pane -s tmux-zoom.0 \; select-window -t tmux-zoom

# Unmaximize pane -------
# IF PANE_MAXIMIZED=True: 
# THEN: PANE_MAXIMIZED=False, and:
bind -n M-F last-window \; swap-pane -s tmux-zoom.0 \; kill-window -t tmux-zoom

答え1

このコマンドを使用すると、任意のシェルコマンドを実行できるため、run-shell確実に可能です。この回答良い例があります。

あなたが探しているものが最大化されたウィンドウを切り替えることであれば、バージョン1.8以降、これはフラグを使用して実装された-Z基本的なtmux機能ですresize-pane(参照スーパーユーザーへの答えです。)。

私のインストールはデフォルトでバンドルされていますtmux-prefixzOS XのHomebrew経由)。

関連情報