我正在做一个将#放在每行前面的快捷方式,接下来 X 线。 X 输入快捷方式之前是我类型的数字,就像键入 11dd 删除下一条线。

命令是 .,+10 s/^/#/g. 。在这里,第十个实际上应该是快捷方式之前输入的内容。如何根据之前键入的数字进行快捷方式更改?

添加了一个问题,回答了:

因此,现在我在.vimrc中有以下内容:

nmap c1 :s/^/#/g<esc>``
nmap c0 :s/^#//g<esc>``

这使我可以输入 13ac, , 加上 # 在接下来的13行的正面, 13dc 删除任何 # 在接下来的13行的前面。

=pod=cut 因为它们在嵌套时会导致错误。
c1 =评论添加,
C0 =注释删除。
#用于Perl。

有帮助吗?

解决方案

ex 模式,您可以使用以下命令:

s/^/#/count

在哪里 count 是您要更改的行数。您不能将数字放在命令前,因为该号码用于选择起始行(如果省略了当前行)。因此:

5s/^/#/3

将在第5、6和7行之前添加一个“#”。

编辑

ex 模式您可以使用 map 命令创建与Colon命令的快捷方式,然后您可以将其与前缀编号一起使用:

map CC :s/^/#/g

现在您可以在 vi 将“#”预定到下一个模式 x 线。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top