vim设置新建文件自动填入的文件头,以及设置编辑时间

30 篇文章 1 订阅
29 篇文章 0 订阅
参考

http://hi.baidu.com/charles_zhang/blog/item/9e83ee1f1bd17aeae1fe0be0.html

autocmd BufNewFile *.cc,*.sh,*.java exec ":call SetTitle()"
"新建.cc,.java,.sh,
"定义函数SetTitle,自动插入文件头
func SetTitle()
"如果文件类型为.sh文件
if &filetype == 'sh'
call setline(1, "\#!/bin/bash")
call append(line("."), "\#########################################################################")
call append(line(".")+1, "\# Author: gnuhpc(http://blog.csdn.net/gnuhpc)")
call append(line(".")+2, "\# Created Time: ".strftime("%c"))
call append(line(".")+3, "\# File Name: ".expand("%"))
call append(line(".")+4, "\# Description: ")
call append(line(".")+5, "\#########################################################################")
call append(line(".")+6, "")
else
call setline(1, "/*************************************************************************")
call append(line("."), " Author: gnuhpc(http://blog.csdn.net/gnuhpc)")
call append(line(".")+1, " Created Time: ".strftime("%c"))
call append(line(".")+2, " File Name: ".expand("%"))
call append(line(".")+3, " Description: ")
call append(line(".")+4, " ************************************************************************/")
call append(line(".")+5, "")
endif
endfunc

我的设置:
autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()"                                                                                              
"新建.py,.cc,.java,.sh,
""定义函数SetTitle,自动插入文件头
func SetTitle()
        "如果文件类型为.sh文件
        if &filetype == 'python'
                call setline(1, "\#coding=utf8")
                call setline(2, "\"\"\"")
                call setline(3, "\# Author: waleking")
                call setline(4, "\# Created Time : ".strftime("%c"))
                call setline(5, "")
                call setline(6, "\# File Name: ".expand("%"))
                call setline(7, "\# Description:")
                call setline(8, "")
                call setline(9, "\"\"\"")
                call setline(10,"")
        endif
        if &filetype == 'java'
                call setline(1, "//coding=utf8")
                call setline(2, "/*************************************************************************")
                call setline(3, "\ @Author: waleking")
                call setline(4, "\ @Created Time : ".strftime("%c"))
                call setline(5, "")
                call setline(6, "\ @File Name: ".expand("%"))
                call setline(7, "\ @Description:")
                call setline(8, "")
                call setline(9, " ************************************************************************/")
                call setline(10,"")
        endif
endfunc

文件头显示文件最后的修改时间,参考http://blog.chinaunix.net/uid-9407860-id-2424000.html
我的设置:

" modify the last modified time of a file
function SetLastModifiedTime(lineno)
        let modif_time = strftime("%c")
        if a:lineno == "-1"
                let line = getline(6)
        else
                let line = getline(a:lineno)
        endif    
        if line =~ '^\sLast Modified'
                let line = substitute( line,':\s\+.*\d\{4\}', ':'.modif_time, "" )
        else
                let line = '  Last Modified: '.modif_time
        endif
        if a:lineno == "-1"
                call setline(5, line)
        else
                call append(a:lineno, line)
        endif
endfunction

" map the SetLastModifiedTime command automatically
au BufWrite *.py,*.java call SetLastModifiedTime(-1)                                                                                                          

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值