Terminal

Tmux 和 Gnome 中不同的 vim 顏色和样式

  • May 29, 2016

我正在使用tmux,最近發現tmux內外相同的vim顏色主題有不同的顏色

左邊是tmuxin gnome-terminal,右邊是 plain gnome-terminalgnome-terminal有預設顏色:

![左邊是<code>gnome-terminal</code>中的<code>tmux</code>,右邊是普通的<code>gnome-terminal</code>

編輯:仔細觀察,風格也發生了變化(看粗體等)。

兩個終端都是 256 色的(gnome-terminal表示自己為xterm-256color, tmuxas tmux-256color,見ncurses-term包裝),vim也看到了(:set t_Co給出 256)。我通過比較他們的顏色表示

for i in `seq 0 255` ; do echo -e "$i: \e[48;5;${i}m                  \e[0m"; done

並得到相同的調色板:

調色板

我認為tmux應該只是將這些顏色傳遞給gnome-terminal,但是什麼時候vim改變呢?

我可以解決這個問題嗎?我認為gnome-terminal那些更好,並想tmux使用它們。

出於某種原因,這只是一個 Vim 問題:當在 中啟動時tmux,它載入default了顏色方案,但是當從普通終端啟動時,它載入了顏色方案,desert但在default通過:colorsheme. 強制:colorsheme default解決了一個問題,所以我colorsheme在我~/.vimrc的行中添加了行,現在可以了。

我不知道為什麼 Vim 會這樣做,但強制要求的 colorsheme 效果很好。

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