我正在运行iterm2,当我在tmux模式下,我在vim中设置的配色方案不显示。只有我设定的配色方案。如果我从shell运行vim,配色方案显示正确-只有当我在tmux模式。

我尝试过在vim中设置:colorscheme molokai(见下面的截图),它没有改变-再次,iterm2的默认配色方案保持不变。

我是否遗漏了对iterm或tmux.conf的一些设置?我的图都在github上。


当前回答

我需要vim在ubuntu的终端上使用tmux正确显示,在windows上使用cygwin/mintty。我把答案像这样组合起来。

打印.bashrc:

alias tmux="tmux -2"

在. vimrc:

" use 256 colors in terminal
if !has("gui_running")
    set t_Co=256
    set term=screen-256color
endif

" fix cursor display in cygwin
if has("win32unix")
    let &t_ti.="\e[1 q"
    let &t_SI.="\e[5 q"
    let &t_EI.="\e[1 q"
    let &t_te.="\e[0 q"
endif

基于这个问题的答案,这个Vim wiki页面和这个块游标问题

其他回答

在我的.tmux.conf中,我并没有尝试导出一个不同的TERM或设置默认终端。

我在tmux中修复vim颜色的解决方案是在.tmux.conf中添加这一行:

set -g terminal-overrides 'xterm:colors=88'

我不确定为什么需要这种重写,因为我的TERM=xterm,我也将iTerm设置为xterm,但它似乎是有效的。

这有点过时,但值得一提的是,使用screen通常会破坏Home和End键。使用

export TERM="xterm-256color"

它应该保持这些功能,并允许配色方案(或电力线)工作良好。

如果你发现自己的处境和我一样,那上面的方法都没用。试试这个:

在.tmux.conf:

set -g default-terminal "xterm"

在bash配置中(可能是.bashrc或.bash_profile):

alias tmux="tmux -2"

然后运行:

killall tmux

然后重新启动tmux

从tmux手册页,添加标志如下:

tmux -2

这个-2标志强制tmux以256色模式运行。

这对我很有用

在macOS Sierra 10.12.6下,在.tmux.conf中添加以下一行对我来说是有效的,

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