我想在当前模式下更改待处理光标的颜色。
到目前为止,这是我的代码( .gvimrc )。
set gcr=n:blinkon0
set gcr=i:blinkon0
highlight Cursor guifg=white guibg=red
highlight iCursor guifg=white guibg=green
现在光标是灰色的,没有任何变化。
手动运行highlight Cursor guifg=white guibg=red
,但不是下面的行。
我希望插入模式中的颜色为绿色,而其他所有模式中的颜色为红色。
答案 0 :(得分:16)
我从vim irc @ freenode那里得到了一些帮助。
这是解决方案。
au InsertLeave * hi Cursor guibg=red
au InsertEnter * hi Cursor guibg=green
答案 1 :(得分:1)
您必须在gcr
设置中实际指定突出显示组。你还需要把它们放在一起,你的第二个“i:”一个覆盖第一个。它还会覆盖所有默认值,因此即使组合它们也不会涵盖其他模式,或者在运算符挂起等模式中的不同形状...请查看文档。尝试更改默认值以在插入模式下设置iCursor组。
set gcr=n-v:block-Cursor/lCursor,c:block-iCursor/lCursor,ve:ver35-Cursor,o:hor50-Cursor,i-ci:ver25-iCursor/lCursor,r-cr:hor20-iCursor/lCursor,sm:block-Cursor-blinkwait175-blinkoff150-blinkon175
这是基于默认值,除了i,ci,r,cr和c(插入,替换和命令行)都使用您的iCursor
组。