我试图在 vim 中突出显示 80 个字符的列,以帮助我保持代码简短。 我已将其添加到我的 .vimrc 中:
" Highlight column 80
if exists('+colorcolumn')
highlight ColorColumn ctermbg=4
set colorcolumn=80
else
au BufWinEnter * let w:m2=matchadd('ErrorMsg', '\%>80v.\+', -1)
endif
我已经用
:help ctermbg
查看了可用的颜色,但无论我对 ctermbg 使用什么参数,我都会得到深红色突出显示,这非常烦人。我怎样才能改变这个颜色?
非常感谢
输出为
ColorColumn xxx term=reverse ctermbg=4 guibg=DarkRed
您可能正在使用 GVIM,它使用
gui..=
定义。您需要(并且应该始终这样做,除非您仅使用终端或图形 Vim)添加 GUI 定义(:h gui-colors
有一个列表):
:highlight ColorColumn ctermbg=4 guibg=blue
特别是如果您要切换colorschemes,可能还存在剩余的属性。指定 all 属性更安全(参见
:help :hi
):
:highlight ColorColumn term=reverse cterm=NONE ctermfg=NONE ctermbg=4 gui=NONE guifg=NONE guibg=blue
尝试例如:
highlight ColorColumn ctermbg=Blue
希望有帮助!
虽然在接受的答案中没有明确说明,但命令在配置文件中放置的位置很重要。 有提到过,但没有明确说明。 如果在 gvim 中没有看到所需的结果,请尝试添加以下行 :突出显示 ColorColumn guibg=blue 在设置 colorheme 之后,位于 ~/.gvimrc 文件的末尾。 同样在 ~/.vimrc 末尾添加 :突出显示 ColorColumn ctermbg=4