在vim

时间:2016-07-10 18:35:29

标签: vim

原文

a = 2
b = 33
c = 456

所需文字

print("a = 2")
print("b = 33")
print("c = 456")

这个例子只是为了说明理想的结果;它与我的计划目标无关。

如何将print("附加到每行的开头,")添加到每行的末尾?当我使用可视模式Ctrl-V时,我可以进行第一次操作,但不能进行第二次操作,因为线长不同。

1 个答案:

答案 0 :(得分:3)

您可以使用宏。将光标放在第一行的任意位置并键入

qaIprint("<esc>A")<esc>jq

分解如下

qa       # start recording macro a
I        # enter insert mode at the beginning of the line
print("  # enter text
<esc>    # leave insert mode
A        # enter insert mode at the end of the line
")       # enter text
<esc>    # leave insert mode
jq       # move to the next line and stop recording

然后,您可以通过键入@a重复运行此操作。 如果您知道要更改多少行,则可以附加计数。 例如:50@a将运行50次并修改接下来的50行。