我有两个Vim-s版本,具有相同的vimrc:
带PuTTY的Linux:
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Mar 7 2020 14:11:31)
Included patches: 1-2367
Huge version without GUI.
薄荷糖:
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Aug 7 2016 16:06:24)
Included patches: 1-2181
Huge version without GUI.
两者都有:colorscheme
作为default
,和background=dark
。
但是:hi
对于Linux来说:DiffAdd ... term=bold ctermbg=4
,对于天鹅座:DiffAdd ... term=bold ctermbg=1
。ctermbg中的差异。可能不仅仅是这些。
我找不到 default 方案集在哪里(没有$VIMRUNTIME/colors/default.vim
)。我没有在其他 vimrc 文件(/etc/vimrc
,$VIMRUNTIME/defaults.vim
等)中找到hi
集。并且不明白 default 方案是什么。
我没有修改过$VIMRUNTIME
文件,只在$HOME/.vim
中修改过。为什么DiffAdd
-s不一样?
2条答案
按热度按时间gj3fmq9x1#
default
并不是一个配色方案,例如desert
。Vim可能安装了它的运行时文件,也可能没有安装它的内置配色方案。为了仍然能够提供一个“默认”配色方案,default
的样式属性是hardcoded。也就是说,在您使用的两个版本之前,
DiffAdd
有一个蓝色背景,它仍然这样做,所以这里没有什么可看的。在两个Vim中,以下命令的输出是什么?
k3fezbri2#
@romainl
,你是对的,你给我指出了正确的地方。我已经从Cygwin Time Machine下载了vim-7.4.2181-1-src.tar.xz
,并在其中找到了文件vim-7.4-syncolor.patch
,其中vim74/src/syntax.c
由 Cygwin 修补:如果在两个二进制文件 LightBlue(4)和 LightRed(1)中都找到
DiffAdd
,则结果相同。找到原因了,现在我冷静下来了,非常感谢
@romainl
!