在Vim中,可以使用I
命令一次在多行中插入文本,如an answer Stack Overflow question How do I insert text at beginning of a multi-line selection in vi/Vim?。但是,这只适用于真正的插入。如果我想同时删除一些字符,这不起作用。在Vim中更改文字矩形
比如,我想通过调用^V3ggllx
从第一三行删除000改变
000 one
000 two
000 three
000 four
到
111 one
111 two
111 three
000 four
我会做这个,然后^V3ggI111^[
插入在111相同的职位,这对我来说似乎很尴尬。 (上面的意思是,进入可视化的块状模式,标记前三行中的所有零并移除它们,然后再次进入可视块模式,标记前三行的开始,插入多行的模式,插入111并退出Esc。)
必须有更好的方法来做到这一点。最烦人的是,我必须删除零后再次选择区域。如果该区域在移除后仍然被选中,则可以。此外,如果可能在多个插入模式中删除字符,它也可以。但是,如果我尝试这个,只有第一行改变了。
感谢大家。这个具体问题的最佳答案当然是melpomenes,但其他答案也提供了其他非常有用的提示。 – radlan