如何在使用 matchadd 突出显示 vim 中的长行时忽略 \n

How to ignore \n while using matchadd to highlight long lines in vim

我的 vimrc

中有这两行
highlight ColorColumn ctermbg=magenta guibg=magentam
call matchadd('ColorColumn', '\%81v', 100)

但是当我的行恰好有 80 个字符时,vim 仍然在第 81 列显示该行,因为 '\n' 实际上位于第 81 列。

有没有办法在matchadd显示警告行时忽略换行符?

谢谢。

由于 \%v 匹配零宽度,您可以使用以下命令将匹配限制为第 81 列不是换行符的任何字符:

highlight ColorColumn ctermbg=magenta guibg=magentam
call matchadd('ColorColumn', '\%81v[^\n]', 100)