如何在vimscript中按行和列设置高亮显示

时间:2015-07-10 02:57:58

标签: vim

我试图通过vimscript突出显示vim中的范围。我知道如何设置选择:

setpos('.', [0,<LINE0>,<COL0>])
normal! v
setpos('.', [0,<LINE1>,<COL1>])

但是,只要该缓冲区处于焦点,选择将仅突出显示那些行/列。切换到不同的窗口会使它消失。

我知道match命令。这将是理想的,特别是因为它允许我使用定义的高亮来定义它将如何着色/样式。但是,match仅匹配正则表达式,而不是行/列。

我该怎么做?有没有办法做到这一点??

1 个答案:

答案 0 :(得分:3)

在vim正则表达式中,您可以匹配\%<num>l的行和\%<num>c的列(阅读:help \%l:help \%c

匹配您可以使用的第3行和第3列的示例

:match Error /\%3l\%3c./

由于匹配的宽度为0,因此需要点。