如何在我的.vimrc中将替换映射到键而不会在我获取错误时出错?
我试图添加
nnoremap <leader>re :'<,'>s/<%=*\s//g | '<,'>s/\s-*%>//g
到我的.vimrc,但是当我这样做并重新加载文件时,我收到以下错误:
答案 0 :(得分:3)
问题在于您正在组合两个:s
命令,但命令分隔符|
结束:map
命令,以便第二次替换立即执行,导致错误。您需要转义|
,或者更好地在映射中使用特殊的<Bar>
表示法:
nnoremap <leader>re :'<,'>s/<%=*\s//g <Bar> '<,'>s/\s-*%>//g
PS:在视觉模式下定义映射是否更自然(因为它适用于最后的选择)?使用:vmap
,将自动插入第一个'<,'>
范围:
xnoremap <leader>re :s/<%=*\s//g <Bar> '<,'>s/\s-*%>//g