tmux.conf:如果在键绑定中

tmux.conf: if in key-bindings

(抱歉,英语不好) 我的目标:根据“变量”执行不同的命令,但一个键绑定 .

我想de/activate窗格同步用S(大写的s),因为小s用来显示不同的会话,但我真的不知道怎么写。 (当然我可以重新绑定s,但是那个Session的小s已经烙在我的脑海里了)

我想可能是这样的: bind S "if (snychronize-panes=on)"; then "setw synchronize-panes off": else "setw synchronize-panes on"

我尝试用变量替换“同步窗格”,但我不知道如何在 tmux.conf.

中编写正确的 if 子句

这应该有效,使用 built-in 变量 pane_synchronizedif-then-else 的格式版本:#{?expression,value-if-true,value-if-false}:

bind-key S set-window-option -F synchronize-panes #{?pane_synchronized,off,on}

正如 Nicholas Marriott 在评论中所说,如果没有为 on/off 选项提供任何值,它将简单地切换,因此您可以简单地拥有:

bind-key S set-window-option synchronize-panes