您的位置:首页 > 运维架构 > Linux

linux命令---vim常用命令

2016-04-06 10:59 429 查看
1、vim中的排序

|2 | 22 | 111| 2222|
|1 | 11 | 222| 1111|

:sort /|[^|]\+|[^|]\+/    #sort grep

|1 | 11 | 222| 1111|
|2 | 22 | 111| 2222|


2、vim中统计字节字符数

g+[ctrl+g]


3、vim中的计算

在vim的插入模式下输入:CTRL+R =


4、vim中拷贝鼠标下单词到命令行中

ctrl-r-w


5、vim中拷贝指定寄存器中的值到命令行

ctrl-r+reg_name


6、vim添加头文件

function InsertHeadDef(firstLine, lastLine)
if a:firstLine <1 || a:lastLine> line('$')
echoerr 'InsertHeadDef : Range overflow !(FirstLine:'.a:firstLine.';LastLine:'.a:lastLine.';ValidRange:1~'.line('$').')'
return ''
endif
let sourcefilename=expand("%:t")
let definename=substitute(sourcefilename,' ','','g')
let definename=substitute(definename,'\.','_','g')
let definename = toupper(definename)
exe 'normal '.a:firstLine.'GO'
call setline('.', '#ifndef _'.definename."_")
normal ==o
call setline('.', '#define _'.definename."_")
exe 'normal =='.(a:lastLine-a:firstLine+1).'jo'
call setline('.', '#endif')
let goLn = a:firstLine+2
exe 'normal =='.goLn.'G'
endfunction
function InsertHeadDefN()
let firstLine = 1
let lastLine = line('$')
let n=1
while n < 20
let line = getline(n)
if n==1
if line =~ '^\/\*.*$'
let n = n + 1
continue
else
break
endif
endif
if line =~ '^.*\*\/$'
let firstLine = n+1
break
endif
let n = n + 1
endwhile
call InsertHeadDef(firstLine, lastLine)
endfunction
nmap ,ha :call InsertHeadDefN()<CR>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: