我正在使用vim而我正在尝试更改此类文件:
Block 1
2.41257378185832E+000 T 2.41257378189357E+000
5.195589598713250E-002 T 5.195589598548488E-002
-4.492502140894707E-002 T -4.492502141060845E-002
3.875548288763534E-002 T 3.875548288654486E-002
Block 2
0.000000000000000E+000 F 0.000000000000000E+000
0.000000000000000E+000 F 0.000000000000000E+000
0.000000000000000E+000 F 0.000000000000000E+000
0.000000000000000E+000 F 0.000000000000000E+000
到这样的文件:
Block 1
0.000000000000000E+000 F 0.000000000000000E+000
0.000000000000000E+000 F 0.000000000000000E+000
0.000000000000000E+000 F 0.000000000000000E+000
0.000000000000000E+000 F 0.000000000000000E+000
Block 2
0.000000000000000E+000 F 0.000000000000000E+000
0.000000000000000E+000 F 0.000000000000000E+000
0.000000000000000E+000 F 0.000000000000000E+000
0.000000000000000E+000 F 0.000000000000000E+000
我一直在寻找问题的答案,但我找不到一个简单的方法。 我发现我可以:
但是这个方法有点慢,因为我必须在很多块中执行此操作,而不仅仅是一个。 有没有办法粘贴文本,同时用它下面的文本替换它,而不必选择将被废弃的文本和将被替换的文本?
答案 0 :(得分:0)
"a4Y
:let @q='4dd"ap'
@q
答案 1 :(得分:0)
你的问题不是很精确,所以这里有一些一般的提示:
1v
来选择它。gr
命令,用命令替换{motion} / text对象,整行或当前选择所覆盖的文本;旧文本被删除到黑洞寄存器中,即它已经消失了。它透明地处理许多极端情况,并允许通过标准.
命令快速重复。:global
命令可用于搜索(例如块的开头),然后在那里执行命令;也可以通过:normal
正常模式。