Vim如何自动添加代码文件头
|
首先感谢网上的大牛们: http://www.vimer.cn/ 还有这位兄台:http://www.oschina.net/code/snippet_103341_9644 有了Ubuntu怎么可以不用Vim? 然后就先逗比的现在Windows下装了gVim。。。。。。 果然是药不能停。。。。。。 一个不错的版本的传送门:【百度云】http://pan.baidu.com/s/1qWntcEK 然后就是添加文件头了。这个从Vimer大牛的博客中学到不少姿势,但是无奈我太弱了正则表达式都不会。。。。。。大牛用正则表达式来匹配,我是直接字符串匹配。。。。。。。给跪。。。。。 顺便把一些资料给大家: 添加路径和文件http://vim.wikia.com/wiki/Insert_current_filename 这个是Vim的设置代码,把F4绑定为添加或更新文件头。 主要的结构还是那位大牛的。。。我只是很捉急的修改了一点而已。。。 本栏目更多精彩内容:http://www.bianceng.cn/OS/Linux/
"进行版权声明的设置
"添加或更新头
map <F4> :call TitleDet()<cr>'s
function AddTitle()
call append( 0, "/*=============================================================================")
call append( 1, "# COPYRIGHT NOTICE")
call append( 2, "# Copyright (c) 2014")
call append( 3, "# All rights reserved")
call append( 4, "#")
call append( 5, "# @author :Shen")
call append( 6, "# @name :")
call append( 7, "# @file :".expand("%:p:h")."".expand("%:t"))
call append( 8, "# @date :".strftime("%Y/%m/%d %H:%M"))
call append( 9, "# @algorithm :")
call append(10, "=============================================================================*/")
call append(11, "")
echohl WarningMsg | echo "Successful in adding the copyright." | echohl None
endf
"更新最近修改时间和文件名
function UpdateTitle()
normal m'
execute '/# @date /s@:.*$@=strftime(":%Y-%m-%d %H:%M")@'
normal ''
normal mk
execute '/# @file /s@:.*$@=":".expand("%:p:h")."".expand("%:t")@'
execute "noh"
normal 'k
echohl WarningMsg | echo "Successful in updating the copy right." | echohl None
endfunction
"判断前10行代码里面,是否有COPYRIGHT NOTICE这个单词,
"如果没有的话,代表没有添加过作者信息,需要新添加;
"如果有的话,那么只需要更新即可
function TitleDet()
let n = 2
"默认为添加
let line = getline(n)
let str = '^# COPYRIGHT NOTICE$'
if line =~ str
call UpdateTitle()
return
endif
call AddTitle()
endfunction
然后顺便附上结果: /*============================================================================= # COPYRIGHT NOTICE # Copyright (c) 2014 # All rights reserved # # @author :Shen # @name : # @file :G:My Source CodeDefaultCode.cpp # @date :2014/06/10 18:06 # @algorithm : =============================================================================*/ 其实还可以做到根据不同的文件添加不同的代码头。。。工作量有点大,而且本弱主要也就写一个C++,然后就没搞了。 (编辑:佛山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

