VIM还原最后一次搜索模式

前端之家收集整理的这篇文章主要介绍了VIM还原最后一次搜索模式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我重新映射[[和]]以找到文件中的上一个和下一个模式.映射如下:
nmap [[ ?^.section <CR>
nmap ]] /?section /<CR>

问题在于,当我使用其中任何一个时,我“松开”当前的搜索模式,所以当为下一个匹配做n时,我搜索下一个“部分”.

有没有办法恢复搜索模式,或[[和]]映射不影响当前的搜索模式?

您可以通过保存和恢复“/ register”来手动完成.但是,更好的方法是将代码移动到函数中;从函数返回会自动恢复它.引用VIM文档:

*function-search-undo*
The last used search pattern and the redo command “.”
will not be changed by the function. This also
implies that the effect of |:nohlsearch| is undone
when the function returns.

在你的.vimrc中看起来像这样:

function! Ayman_NextSection
    /?section /
endfunction
nmap ]] call Ayman_NextSection()<CR>

希望有所帮助.

猜你在找的Bash相关文章