使用for循环在Vim中写入行

时间:2015-03-31 10:20:04

标签: vim text

如何根据非常简单的算术模式将Vim写入文件?

示例:

foo1
foo2
foo3
...
foo99
foo100

我使用Ex命令

提出了以下解决方案
:for i in range(1,100)
:  execute "normal ofoo" . i
:endfor

但我确信必须有更直接的东西。

2 个答案:

答案 0 :(得分:3)

我会用宏来做。

首先输入一行:

foo1

然后

qqYp<c-a>q

最后重播宏:

98@q

答案 1 :(得分:2)

类似的东西:

:let l = map(range(1,100), '"foo".v:val')
:put=l

" Unfortunately put won't accept the expression, append() would though
call append(line('.'), map(range(1,100), '"foo".v:val'))