开发工具 vim 有批量修改 (多重选取) 的插件吗?

lufeihaidao · 2012年12月14日 · 最后由 lufeihaidao 回复于 2012年12月16日 · 4900 次阅读

比如这样:

item1, item2
something else, item3

改成

item 1, item 2
something else, item 3

在 sublime 里按住 ctrl 点击鼠标可以实现,在 vim 里怎么实现?

update in 20130705

偶然找到了,vim-multiple-cursors 插件可以完成这个目的

这只是一个例子,我知道用正则可以解决,但是如果还有一个 item4 但我不想修改成 item 4 的话,想用类似于 sublime 的方法,产生多个光标,然后输入空格就行了。

在命令行模式下用批量替换啊。:%s/item/item /gc 加 c 是让你一个个确认

#2 楼 @AlphaLiu 学习了,原来可以加 c 这样用啊

不过感觉还是没有解决我的疑问,比如这样的代码:

def i_am_function
def this_is_what
def i_am_who

改成

def i_am_function
  hehe
end
def this_is_what
  hehe
end
def i_am_who
  hehe
end

你看,我希望的功能和 sublime 按住 ctrl 点击鼠标的功能类似,产生多个光标,然后同时输入内容

如果不空行的话还真的可以做到,用 ctrl v 选中尾部再用大写 A 追加就行了,空行的话我就不知道了

#3 楼 @reus 恩,这个像!

#6 楼 @cxh116 学习了,宏确实好用

需要 登录 后方可回复, 如果你还没有账号请 注册新账号