Answers:
要避免当前行上的任何匹配,您可以使用 :help /\%l 特殊原子匹配当前行号,然后断言不匹配通过 消极的向前看 :
exe printf('match lCursor /\V\%%%dl\@!\<%s\>/', line('.'), escape(expand('<cword>'), '/\'))
但在你的回答中你也表明了 现在的话 (不是整行)不应突出显示。这可以通过负前瞻再次实现,断言光标( \%# )不在当前关键字内( \<\k*...\k*\> ) 和 ( \& )也匹配当前的单词:
exe printf('match lCursor /\V\%%(\<\k\*\%%#\k\*\>\)\@!\&\<%s\>/', escape(expand('<cword>'), '/\'))