Vim命令行颜色设置

10

有没有办法在vim中设置命令行颜色和“正常”文本颜色的不同颜色。当我使用

:hi Normal guifg=orange

命令行和普通文本颜色变为橙色。 我希望GUI底部的命令行颜色不同。

4个回答

8

现在NeoVim拥有了一个名为MsgArea的颜色组。

:hi MsgArea guifg=#03ff13

screenshot


这在 Neovim 中有效!! - Diego Ulloa

6
没有,至少我不知道。
除非打扰Vim的源代码。
命令行在Normal高亮组下。

3

可以使用自动命令来完成此操作:

hi Normal=white guifg=white
au CmdLineEnter * hi Normal ctermfg=cyan guifg=cyan
au CmdLineLeave * hi Normal ctermfg=white guifg=white

令我惊讶的是,这只影响了CmdLine,而不是其他一切。

我本来以为所有正常文本输入CmdLine时都会立即改变颜色。没有CmdLineLeave,所有正常文本的更改都会在退出命令行后发生,这解释了它以我们想要的方式工作的原因。

请注意,我正在从终端使用vim,因此我使用ctermfg而不是guifg;但我预计在gui版本的vim中它将以相同的方式工作。

您可能还希望突出显示ModeMsg。


2

在 Vim 8.2 中引入了新的 wincolor 选项,可以通过它来完成:

set wincolor=NormalAlt
autocmd WinEnter set wincolor=NormalAlt
hi Normal       guifg=#CED1CF       guibg=#000000       gui=NONE
hi NormalAlt    guifg=#CED1CF       guibg=#1B1D21       gui=NONE

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接