现在的位置: 首页 > 综合 > 正文

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

2013年07月09日 ⁄ 综合 ⁄ 共 1787字 ⁄ 字号 评论关闭

今晚试了很久,总算在文件头中实现--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 G
endfunc

"""""""""""""""""""""""""""""""""""""""""
""实现上面函数中的,Last modified功能
"""""""""""""""""""""""""""""""""""""""""
autocmd BufWrite,BufWritePre,FileWritePre  *.c    ks|call LastModified()|'s  
func LastModified()
	if line("$") > 20
		let l = 20
	else 
		let l = line("$")
	endif
	exe "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

抱歉!评论已关闭.