打开 Vim 时 tmux 配色方案发生变化?

Int*_*ist 1 vim color-scheme tmux

我有一个问题,打开 Vim 后我的 tmux 状态栏颜色方案会发生变化,但我不希望这样。

我的 tmux 状态栏配色方案本身就可以正常工作。请参阅下图的示例:

...请注意状态栏的白色栏和蓝色/黑色/红色部分,这一切都符合预期,您可以在此处查看相关设置:https: //github.com/Integralist/Fresh-Install /blob/master/Shell/.tmux.conf#L78-L86

当我在 tmux 中打开 Vim 时,状态栏配色方案被 Vim 的配色方案(明晚)覆盖。请参阅下图的示例:

当我关闭 Vim 时,tmux 状态栏颜色方案保持不变。请参阅下图的示例:

再说一次,即使没有办法阻止 Vim 在 Vim 打开时覆盖 tmux 状态栏配色方案,我还是希望有一种方法可以在 Vim 关闭时将 tmux 状态栏配色方案更改回正常状态。

我尝试检查 $TERM 环境变量,它似乎始终设置为screen-256color. 例如...

  • echo $TERM(仅限 tmux)==screen-256color
  • echo $TERM(仅限 Vim)==screen-256color
  • echo $TERM(tmux 中的 Vim)==screen-256color
  • echo $TERM(仅限 tmux,但在打开 Vim 后)==screen-256color

我的.zshrc文件具有以下设置:export TERM="screen-256color"您可以在此处查看完整文件: https: //github.com/Integralist/Fresh-Install/blob/master/Shell/.zshrc

我的.vimrc文件具有以下设置:set background=lightcolorscheme Tomorrow-Night可以在此处查看完整文件: https: //github.com/Integralist/Fresh-Install/blob/master/Shell/.vimrc

我的.tmux.conf文件具有以下设置:set -g default-terminal "screen-256color"您可以在此处查看完整文件: https: //github.com/Integralist/Fresh-Install/blob/master/Shell/.tmux.conf

以下是我的软件设置:

  • Mac OS X 10.9.2
  • 标准 Mac Terminal.app(我不使用 iTerm)
  • tmux 1.9a(通过 Homebrew 安装)
  • Vim 7.4(通过 Homebrew 安装)

有人对如何解决这个问题有任何建议吗?我希望我只是在文件中的某处缺少一个设置,.tmux.conf表示“不允许您的颜色被覆盖”或“当打开 vim 时,重新应用 tmux 状态栏颜色方案”。

非常感谢任何帮助。谢谢。

Ken*_*ent 5

我没有深入研究你的 vim 配置,但在你的插件列表中我发现tmuxline,这个插件在你的 tmux 状态行上应用了你的 vim *-line 颜色主题。当你退出 vim 时,它很可能不会恢复你原来的 tmux 颜色设置。

尝试禁用该插件,看看是否有帮助。