更改缩放窗格的 Tmux 背景颜色

更改缩放窗格的 Tmux 背景颜色

我正在使用 iTerm2 和 Tmux。

我想更改 Tmux 窗格的背景颜色,但仅限于缩放时。我知道有一个 window_is_zoomed 标志,我想知道我是否可以在 if-shell 语句或其他地方使用它来获得所需的效果。

答案1

以此一行代码(为了便于阅读,分成多行)为例:

tmux set-hook -g after-resize-pane \
'if "[ #{window_zoomed_flag} -eq 1 ]" \
    "run \"tmux select-pane -P bg=red\"" \
    "run \"tmux select-pane -P bg=black\""
'

在 shell 中运行它tmux并缩放任意窗格来测试解决方案。

笔记:

  • 它是纯粹的tmux解决方案,它不依赖于 iTerm2。

  • 引用有三种级别(单引号、双引号、转义双引号)。在根据需要调整命令时,不要混淆它们。

  • -g意味着该钩子是全局的;没有-g它,它就是一个会话钩子。

  • 用 取消挂钩tmux set-hook -gu after-resize-pane

  • 为了使解决方案永久有效,请将此行添加到~/.tmux.conf(或/etc/tmux.conf):

      set-hook -g after-resize-pane 'if "[ #{window_zoomed_flag} -eq 1 ]" "run \"tmux select-pane -P bg=red\"" "run \"tmux select-pane -P bg=black\""'
    

相关内容