我最近在我的 Ubuntu 14.04 机器上安装了 VIM 8.0。当我打开vim时,它输出一个错误:
> vim ~/.vimrc
Error detected while processing /usr/local/share/vim/vim80/syntax/syncolor.vim:
line 36:
E254: Cannot allocate color Orange1
E254: Cannot allocate color Orange1
Press ENTER or type command to continue
当我按回车键时,它会在没有语法突出显示的情况下打开(但使用颜色方案,如果我将 :colorscheme 更改为不同的内容,颜色会略有变化)。
但如果我以 root 身份运行,它会以语法突出显示打开。
sudo vim ~/.vimrc
我认为这是一个权限问题,所以我将 syncolor.vim 设置为所有人都可读:
> ll /usr/local/share/vim/vim80/syntax/syncolor.vim
-rwxrwxrwx 1 root root 4.0K Dec 22 23:29 /usr/local/share/vim/vim80/syntax/syncolor.vim
还是没有运气。然后我想知道 vim 在 root 下的设置是否与我的用户下的设置不同:
> which vim
/usr/local/bin/vim
> /usr/local/bin/vim --version
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Dec 22 2016 23:01:25)
> sudo which vim
/usr/local/bin/vim
> sudo /usr/local/bin/vim --version
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Dec 22 2016 23:01:25)
我的下一个想法是 root 的 TERM 不同:
> echo $TERM
xterm-256color
> sudo echo $TERM
xterm-256color
我不知所措。我的用户和 root 之间还有什么不同会导致颜色无法加载?
更新:在 root 和我自己的用户下:
:echo $MYVIMRC
/home/aaron/.vimrc