tmux:在不失去当前缩放状态的情况下切换窗格

4
有没有一种方法可以配置tmux,在切换窗格时保持其当前的缩放/非缩放状态?我可以添加一个键绑定来在切换窗格后自动缩放,如下所示:
bind-key -n C-l select-pane -t :.+\; resize-pane -Z
然而,这将会缩放新窗格,即使之前没有进行缩放。我想使用相同的键绑定来切换窗格,无论当前是缩放还是非缩放状态,并保留缩放/非缩放状态。
1个回答

3
根据您的tmux版本,您可以尝试以下绑定:
bind-key -n C-l if-shell -F "#{window_zoomed_flag}"  'select-pane -t :.+; resize-pane -Z'     'select-pane -t :.+'

这在我的tmux 2.2版本上运行良好。 if-shell -F不会运行一个shell命令,而只是将window_zoomed_flag扩展为0或1,并运行第一个或第二个命令序列。


1
感谢该命令!这引入了一个新的顶层快捷方式 C-l(即无需使用前缀 C-b)。但我想在切换到上次选定的窗格时保持缩放(默认为 C-b+;)。因此,我开发了以下顶层绑定以使用 Alt/Meta+; 切换到上次选定的窗格而不会失去缩放状态。bind-key -n "M-;" if-shell -F "#{window_zoomed_flag}" 'select-pane -t :.!; resize-pane -Z' 'select-pane -t :.!' - Gurjeet Singh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接