Vim

使用 tmux 時 VIM 日曬配色方案看起來不對

  • April 15, 2020

我正在嘗試使用 gnome 終端(Ubuntu)在 VIM 中使用日曬配色方案。當我在沒有 tmux 的情況下執行 vim 時,它看起來很棒,見下文:

在此處輸入圖像描述

如果我將以下命令添加到我的 .bashrc

# tmux configuration
tmux attach &> /dev/null

if [[ ! $TERM =~ screen ]]; then
   exec tmux
fi

並用 tmux 啟動終端,顏色看起來不正確,見下文:

在此處輸入圖像描述

這是 .tmux.conf 文件的內容

source ~/.local/lib/python2.7/site-packages/powerline/bindings  /tmux/powerline.conf                    
set-option -g default-terminal "screen-256color"                                                                                                                                          
set-option -g history-limit 10000   

我正在使用https://github.com/altercation/vim-colors-solarized作為 vim 配色方案,終端是:https://github.com/Anthony25/gnome-terminal-colors-solarized

編輯:使用 tmux:

~$ echo $TERM
screen

在此處輸入圖像描述

沒有 tmux:

~$ echo $TERM
xterm

在此處輸入圖像描述

$TERMmust的值screen-256color,以便 Vim 正確檢測 256 色的可用性。(tmux重用 的終端定義screen,因為這個工具實現了類似的多路復用。)

您要麼需要為TERM內部 tmux 添加行設置正確的值

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

to ,或在您的通孔中強制使用~/.tmux.conf256 種顏色(這將是一種解決方法,如果您還使用非高顏色終端,則最好加以保護)。~/.vimrc``set t_Co=256``if $TERM == 'screen'

引用自:https://unix.stackexchange.com/questions/201779