:g/^/exe ":s/^/".line(".") 在代码中添加行号说明:g/^ 匹配所有行, 每一行执行 ":s/^/" . line(".") ,其中"."用作连接两部分命令。具体参考vim手册 execute和line
:g/./norm(al) kJ 将所有行连接成一行
说明:匹配所有行之后,执行normal模式下的命令kJ。
nnoremap g '' . float2nr( round( (col('$')-1) * min([100, v:count]) / 100.0)) . ''
说明,将g|映射为跳到一个长行中的百分之列。
具体见原帖http://blog.chinaunix.net/u/8681/showart_1226043.html
s+/home/yaowei+/home/yaoweisun+
当使用替换时,pattern中如果含有斜杠,可以用其它符号来充当分隔符。
substitute所使用的delimiters可以为除字母、数字、双引号、反斜杠和竖线|。
map ma/!!!/+1^M :.copy 'a-1^M/!!!/+2^M:move 'a^Mj
说明假设有两个文件,file1和file2
file1:
1
2
3 file2:
1-
2-
3-
先将两个文件合并并加入标尺----------
1
2
3
!!!!!!!!!
----------
1-
2-
3-
然后执行如下键映射
map ma/!!!/+1^M :.copy 'a-1^M/!!!/+2^M:move 'a^Mj
结果内容变成
--------------
1
1-
--------------
2
2-
--------------
3
3-
--------------
!!!!!!!!!!!!!!
--------------
在执行
!$SHELLCMD % "%"可以代替当前文件名
例如!python % 就可以运行当前python脚本。
阅读(277) | 评论(0) | 转发(0) |