vim命令行片段可能吗?

时间:2014-05-03 21:00:35

标签: vim

有没有办法在vim命令行上定义和使用代码片段?例如,当我想要选择一部分文本时,我想要替换其中的一行文本,除了行的其余部分,我必须更改:

:'<,'>

:%s\%VsPat/rPat/g

偶尔可能会好起来,但最近我发现自己正在进行这种s / S / R /经常足以使它成为PITA;但仍然比手动选择每个更改更有效。

实际上我在VIM中使用了很多常规编辑命令可以提高效率,如果我能以某种方式将它们绑定到一个片段。那么有没有办法在vim命令行使用片段?

2 个答案:

答案 0 :(得分:0)

如果继续进行替换而不改变任何内容呢?

:'<,'>s/\%VsPat/rPat/g

或使用可视模式映射?

xnoremap <key> :s/\%V/g<left><left>

答案 1 :(得分:0)

内置功能cnoreabbrev只是简单替换,所以如果你定义它,例如

:cnoreabbrev ss %s\%VsPat/rPat/g

然后当您点击:ss并按<space>时,它会自动将<{1}}替换为

ss

检查一下,它应该解决至少一半的问题: - )