casio1374633

导航

 

原文件:
a
b
c
d
e
...
z
修改后的文件:
1,a
2,b
3,c
4,d
...
26,z

 

=========================

方法:

:%s/^/\=line('.').','/

vim内部有内置命令如 line(), 用法可以查看帮助 :h line()
常用的参数有:

  • 所在行的行号 “.”
  • 可视模式下首行的编号 "'<"

因此

  1. 每行前面插入行号如下
    :%s/^/\=line(".")/
  2. 可视区域插入从1开始的编号
    :'<,'>s/^/\=line('.') - line("'<") + 1/

当:s 命令的替换字符串以“\="开头时,表示以表达式的计算结果作为替换值。

--------------------------------------------

或者

1、列模式在原文件要插入的列前面插入一列 #
2、然后,:let i=1|g/#/s//\=i/|let i=i+1

posted on 2013-11-01 09:23  casio1374633  阅读(1356)  评论(0编辑  收藏  举报