考虑以下vim语法规则,我用它来更改*
所包围的单词的颜色。
syntax match boldme /\*.\{-1,}\*/
highlight boldme ctermfg=Red
出于某种原因,此规则仅在单词位于行的开头时有效,*hello*
在下面的第一行中为红色,但不在第二行。
*hello* works
Another word and *hello* does not work.
如何让syn match
在上面的场景的中间位置工作?
更新:此问题似乎特定于使用文字*
字符作为匹配的一部分。以下匹配可以正常使用_
。
syntax match boldme /_.\+_/
因此问题确实是,如何强制vim在*
中正确处理文字syn match
字符?
答案 0 :(得分:1)
试试这个:
syntax match boldme /\*.\+\*/
我不知道您是如何进行测试的,请使用vim -u NONE
查看此gif动画: