vim用autocmd命令自动插入最后修改日期

来源:互联网 发布:股市软件哪个好 编辑:程序博客网 时间:2024/06/03 19:32

今晚试了很久,总算在文件头中实现--Last modified功能。

分为两个部分,第一:先自动在新文件中插入文件头;第二:自动修改Last modified

部分代码:

"新建.c,.h,.sh,.java文件,自动插入文件头 autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()" ""定义函数SetTitle,自动插入文件头 func SetTitle() "如果文件类型为.sh文件 if &filetype == 'sh' call setline(1,"\#########################################################################") call append(line("."), "\# File Name: ".expand("%")) call append(line(".")+1, "\# Description: ") call append(line(".")+2, "\# Author: chu") call append(line(".")+3, "\# Mail: ) call append(line(".")+4, "\# Created_Time: ".strftime("%Y-%m-%d %H:%M:%S")) call append(line(".")+5, "\# Last modified: ".strftime("%Y-%m-%d %H:%M:%s"))call append(line(".")+6, "\#########################################################################") call append(line(".")+7, "\#!/bin/bash") call append(line(".")+8, "") else call setline(1, "/*************************************************************************") call append(line("."),  "  * File Name: ".expand("%")) call append(line(".")+1, "  * Description: ") call append(line(".")+2, "  * Author: chu") call append(line(".")+3, "  * Mail: ") call append(line(".")+4, "  * Created_Time: ".strftime("%Y-%m-%d %X")) call append(line(".")+5, "  * Last modified: ".strftime("%Y-%m-%d %X")) call append(line(".")+6, " ************************************************************************/") call append(line(".")+7, "")endif"新建文件后,自动定位到文件末尾autocmd BufNewFile * normal Gendfunc"""""""""""""""""""""""""""""""""""""""""""实现上面函数中的,Last modified功能"""""""""""""""""""""""""""""""""""""""""autocmd BufWrite,BufWritePre,FileWritePre  *.c    ks|call LastModified()|'s  func LastModified()if line("$") > 20let l = 20else let l = line("$")endifexe "1,".l."g/Last modified: /s/Last modified: .*/Last modified:".\strftime(" %Y-%m-%d %X" ) . "/e"endfunc""""""""""""""""""""


我设置为对所有的.c文件都自动调用LastModified函数


参考文献:http://www.cnblogs.com/soli/archive/2007/09/07/885044.html

原创粉丝点击