Tmux 状态栏在显示结果之前闪烁来自 #() 的命令

Tmux 状态栏在显示结果之前闪烁来自 #() 的命令

我当前使用以下命令来显示窗格工作目录的当前 git 分支或 Mercurial 书签。据我所知,它工作正常,但在计算书签名称之前,状态栏会闪烁它将要执行的命令的实际文本(看起来像<cd ... && ...>),然后被书签的名称替换过了一会儿。我怎样才能避免这种闪光并只看到最终的变化?

set-option -g status-left\
  "#(cd #{pane_current_path} &&\
    if hg status 1>&2 2>/dev/null; then\
      echo \"($(hg book | grep \"^\\s\\*\" | cut -d' ' -f 3)) \";\
    elif git status 1>&2 2>/dev/null; then\
      echo \"($(git branch | grep \"^\\*\\s\" | cut -d' ' -f 2)) \";\
    fi;\
  )"

注意:我正在运行 tmux 2.2

相关内容