我希望我的快速修复窗口对光标的当前行进行一些突出显示。
经过一番研究,我发现我可以使用set cursorline
和配置当前行的一般外观highlight CursorLine term=bold cterm=bold guibg=Grey40
。
现在,我只希望当我在快速修复窗口中时。所以我开始将这两行包装在一个函数中,并使用自动命令调用该函数:
au QuickFixCmdPre * call EnableSearchHighlighting()
到现在为止还挺好。由于我至少搜索一次后仍然激活了突出显示,因此我需要再次禁用该效果。这就是我被困的地方......
我编写了另一个函数,并在-Eventset nocursorline
上调用这个函数。QuickFixCmdPost
但由于某种原因,这打破了一切。现在我不会再突出显示,即使在快速修复窗口中也是如此。
感觉就像事后事件覆盖了事前事件。我不确定这里还有什么可以尝试的。
也许任何人都可以帮助我,甚至首先有另一种突出显示的方法?
这是我的 .vimrc 中的完整代码:
function EnableSearchHighlighting()
set cursorline
highlight CursorLine term=bold cterm=bold guibg=Grey40
endfunction
function DisableSearchHighlighting()
set nocursorline
endfunction
au QuickFixCmdPre * call EnableSearchHighlighting()
au QuickFixCmdPost * call DisableSearchHighlighting()
谢谢阅读。:)