基于行首的Vim匹配
我有一个文件,其中一行可以以基于行首的Vim匹配,vim,Vim,我有一个文件,其中一行可以以+、-或*开头。在其中一些行之间可能有以字母或数字(一般文本)开头的行(也包含这些字符,但不在第1列!) 知道了这一点,设置匹配和突出显示机制的最简单方法是什么,以便在第1列中突出显示以+开头的行以及所有后续行,直到第1列中包含+、-或*的行。。。红色 欢迎所有想法。您可以使用: syntax region MyRegion start=/^+/ end=/\ze\n[-+*]/ hi MyRegion guifg=red ctermfg=red 如果要将其与当前配
+
、-
或*
开头。在其中一些行之间可能有以字母或数字(一般文本)开头的行(也包含这些字符,但不在第1列!)
知道了这一点,设置匹配和突出显示机制的最简单方法是什么,以便在第1列中突出显示以+
开头的行以及所有后续行,直到第1列中包含+
、-
或*
的行。。。红色
欢迎所有想法。您可以使用:
syntax region MyRegion start=/^+/ end=/\ze\n[-+*]/
hi MyRegion guifg=red ctermfg=red
如果要将其与当前配色方案集成,请使用:
hi link MyRegion Keyword
(或注释、标识符、常量等)
注意。这意味着该区域在下一行-
,+
或*
之前的行上结束。因此,以+
开头的两个区域是连续的,您不会注意到高亮显示的差异
如果希望每个区域从以+
开头的行到以+
开头的行(包括)、-
或*
开头的行(),请使用:
syntax region MyRegion start=/^+/ end=/^[-+*].*/