Цветное странное поведение Vim 256 с tmux

Просто интересная небольшая проблема, с которой я столкнулся с терминалами. Я использую vim внутри gnome-терминала. Мне нравится иметь 256 цветов, поэтому мне не нужно использовать gVIM.

Мои соответствующие настройки .zshrc:

export TERM=xterm-256color

Мои соответствующие параметры .vimrc:

if $COLORTERM == 'gnome-terminal'
  set t_Co=256
endif

Вы можете заметить, что проблема заключается в следующем: http://showterm.io/06460aeb043cac4bd0256

Я получаю странный цвет фона с помощью tmux vim. Любая помощь в этом была бы большой.

4
задан b1nd 13 дек. '13 в 4:40
источник поделиться

2 ответов

Это просто быстрое исследование.

  • после выполнения tmux внутри gnome-termnial, "COLORTERM" будет перезаписан. Это означает, что $COLORTERM является NULL внутри tmux.

Поток этих переменных.

  • gnome-terminal запускает и загружает ваш .zshrc. (TERM = xterm-256color COLORTERM = gnome-terminal)
  • tmux начинается. (он перезаписывает COLORTERM, загружает конфигурацию "default-terminal" в качестве значения TERM)
  • tmux load.zshrc(TERM переписан на "xterm-256color" )
  • Теперь = > TERM = "xterm-256color" COLORTERM = ""
  • vim starts = > (помимо вашей .vimrc config, t_Co устанавливается в 256, если этот термин имеет 256 цветов)

Проблема в том, что tmux поддерживает 256 цветов правильно, только если TERM = "screen-256color" вместо "xterm-256color" .

Ниже приведено решение:

Сначала добавьте это в свой .zshrc(я использую синтаксис bash):

if [[ $COLORTERM == 'gnome-terminal" ]]; then
            export TERM="xterm-256color"
fi

Во-вторых, добавьте это в свой "~/.tmux.conf":

set -g default-terminal screen-256color

Наконец, настройки vim не нужны.

Другие вопросы, пожалуйста, прокомментируйте.

4
ответ дан LotAbout 13 дек. '13 в 5:15
источник поделиться

Попробуйте следующее. Это сработало для меня:


.tmux.conf

set -g default-terminal "screen-256color"

Также удалите старое значение term для .vimrc

1
ответ дан kiran 07 дек. '14 в 10:05
источник поделиться

Другие вопросы по меткам