其实我想显示 – >在
haskell文件中使用→(箭头后面有一个空格).但是我的印象是隐藏机制只能取代 – >一个字符不良影响是视觉上不好的缩进.
有办法实现吗?
谢谢.
编辑:其实我用这个,(从haskell.vim(隐藏增强)插件)
Syntax match hsNiceOperator "<-" conceal cchar=←
我正在做你想要的C.诀窍是分别隐藏每个角色,像这样:
syn match ArrowHead contained ">" conceal cchar=▶ syn match ArrowTail contained "-" conceal cchar=─ syn match ArrowFull "->" contains=ArrowHead,ArrowTail
您可能会发现ArrowHead或ArrowTail在ArrowFull外匹配,不幸的是.这是因为现有的语法规则使用contains = ALLBUT,…或类似的东西.
为了在C中解决这个问题,我将ArrowTail和ArrowHead添加到cParenGroup集群中,这似乎可以防止任何问题.
syn cluster cParenGroup add=ArrowTail,ArrowHead
您可能需要为Haskell做类似的事情.
因为我不使用隐藏功能,否则我会告诉Vim继续,“隐藏”箭头所有的时间:
set conceallevel=1 concealcursor=nvic
BTW如果你不喜欢隐藏字符的默认颜色,你可以像这样改变它们:
hi conceal ctermfg=DarkBlue ctermbg=none guifg=DarkBlue guibg=none