Vim自带的*搜索会自动在单词两头加上\<和\>,使用第三方的vnoremap *,则是加上前缀\V,

当我们想要输出刚刚搜索的内容时可用<C-r>/,但是很可能会带上多余的符号(虽然在查找时很好用),

今天留意到这个问题,就写了个map,一行就搞定了,很好用。

inoremap <M-/> <C-r>=substitute(@/,'\v^\\[<V]\|\\\>$','','g')<CR>

期间被正则里的[<V]后面的\|坑了好一会,

原因是|在map命令里是命令分隔符,所以即使正则用了\v依然要加\符

05-26 10:41