码迷,mamicode.com
首页 > 系统相关 > 详细

Vim中修改列模式的文字为ABCD或1234的递增序号

时间:2017-04-03 21:21:19      阅读:646      评论:0      收藏:0      [点我收藏+]

标签:art   文字   alt   提醒   src   logs   技术   vim   function   

vimrc里添加

vnoremap <F3> :<C-u>call <SID>AddCharOfCursor()<CR>

"递增列模式下的字符
function! s:AddCharOfCursor()
let c = col(‘.‘)
let l = line(‘.‘)
let l0 = line("‘<")
let l1 = line("‘>")
let char0 = strpart(getline(‘.‘),c-1,1)
for k in range(1, l1-l0) "从第2行开始
let str_before = strpart(getline(l+k),0,c-1)
let str_after = strpart(getline(l+k),c)
if char0 =~ ‘\d‘
let char1 = char0 + k
else
let char1 = nr2char(char2nr(char0)+k)
endif
call setline(l+k, str_before . char1 . str_after)
endfor
endfunction

列选中A,按F3,就可以变成右边的样子

技术分享

如果是1,则数字递增,但是数字是9后

技术分享

友情提醒:字母若超过Z会出现ASCⅡ码后面的字符

Vim中修改列模式的文字为ABCD或1234的递增序号

标签:art   文字   alt   提醒   src   logs   技术   vim   function   

原文地址:http://www.cnblogs.com/hyaray/p/6663608.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!