我在调用系统命令时遇到 VIM 命令行问题。例如!ls
,VIM 无法解析所有命令输出颜色。我的系统是 Ubuntu 12.04 LTS,带有来自 Ubuntu 存储库的 VIM 7.3.429。
有没有什么办法可以解决这个问题?
编辑:
:!echo $TERM
在 VIM 中返回:dumb
编辑2:
我找到了一个简单的解决方法,但并不完美
if [ "$VIM" ] && [ "$TERM" = "dumb" ]
then
# For gvim's monochromatic :shell
PS1='\n\u@\h \w\n\$ '
unalias ls
unalias grep
fi
(它在 bash 上运行)
答案1
2个步骤:
1)在 .bashrc 中将 TERM 设置为“dumb”以外的其他值。xterm 应该没问题,因为看起来你在使用 Ubuntu。
2) 在 .vimrc 中,添加 set t_Co=256。这告诉 vim 您使用的是 256 色终端。
这应该可以解决你的问题。