我正在使用HaskellConcealPlus来隐藏Haskell代码的某些元素,并使用来自here的haskell.vim来为Haskell提供更好的语法突出显示。以下是它的样子:
问题在于div
被隐藏后会丢失它的橙色突出显示,当'/'突出显示为橙色时会导致不一致,但是'÷'是白色的,即使它们都是中缀运算符。有没有办法让语法突出显示和隐藏两者都有效?
答案 0 :(得分:2)
只要部分文字被隐藏,它们就会按照突出显示组Conceal
的定义进行着色。 :help hl-Conceal
会告诉您有关该群组的更多详情。 :highlight
将显示所有突出显示组及其颜色声明。例如。我的隐藏组如下图所示:
Conceal xxx ctermfg=4 ctermbg=0 guifg=#8fa1b3 guibg=#2b303b
为了获得更好的颜色,您当然可以为.vimrc
内的隐藏组设置自定义颜色和属性。下面是一个示例,它将使用粗体,带下划线的文本,使用ANSI颜色9作为前景色,ANSI颜色0作为背景颜色用于所有hs
扩展名的文件:
augroup AdjustConceal
autocmd!
autocmd ColorScheme *.hs highlight Conceal cterm=bold,underline ctermfg=9 ctermbg=0
augroup END
或者,您只需链接到现有的突出显示组即可。以下示例将从Conceal
链接到Search
:
augroup AdjustConceal
autocmd!
autocmd ColorScheme *.hs highlight link Conceal Search
augroup END