Vim中自动在程序起始处添加版权和作者信息

在编写程序的时候,经常需要在程序开始写上程序的简要介绍和作者信息,如下:

 

这种信息,除了文件名和修改时间可能经常发生变化外,其他基本不变,可以在程序开始自动加入,方法就是在家目录下的.vimrc中写入:

map <F4> :call TitleDet()<cr>
function AddTitle()
    call append(0,"\#!/usr/bin/env bash")
    call append(1,"# ******************************************************")
    call append(2,"# Author       : 90Zeng")
    call append(3,"# Last modified: ".strftime("%Y-%m-%d %H:%M"))
    call append(4,"# Email        : omezengjl@gmail.com")
    call append(5,"# Filename     : ".expand("%:t"))
    call append(6,"# Description  : ")
    call append(7,"# ******************************************************")
    echohl WarningMsg | echo "Successful in adding copyright." | echohl None
endf
 
function UpdateTitle()
     normal m'
     execute '/# Last modified/s@:.*$@\=strftime(":\t%Y-%m-%d %H:%M")@'
     normal ''
     normal mk
     execute '/# Filename/s@:.*$@\=":\t".expand("%:t")@'
     execute "noh"
     normal 'k
     echohl WarningMsg | echo "Successful in updating the copyright." | echohl None
endfunction

function TitleDet()
    let n=1
    while n < 10
        let line = getline(n)
        if line =~ '^\#\s*\S*Last\smodified\S*.*$'
            call UpdateTitle()
            return
        endif
        let n = n + 1
    endwhile
    call AddTitle()
endfunction
View Code

 

 

保存之后,vi test.sh,在norm 模式下按下F4即可,效果如下:

 

假如下一时刻,我们将文件名称改为了test2.sh,然后需要更新上面的信息,只需要:mv test.sh test2.sh, 然后vim test2.sh,F4,会自动更新修改时间和文件名称

 

如果我们经常需要写的python文件,那么在.vimrc中修改相应的字符即可,如下:

效果如下:

 

网上已经有插件实现了上述功能(http://www.vim.org/scripts/script.php?script_id=2902),但是对于安装插件不方便的场景,可以自己手动编写上述代码

参考:Vim在源代码中自动添加作者信息

转载于:https://www.cnblogs.com/90zeng/p/vim_authorinfo.html

作为自己极为方便和顺手的编译器,在最近两年的使用,我不断的更新和加强vim的功能,特此备份。。。 ============================== 开启最大化 (win32用户直接就可以最大化,但是linux用户则需要安装wmctrl,详情参见:http://download.csdn.net/detail/jiaoxiaogu/4317843) --------------------------------------------------------------- F5一键运行Python,Ruby,Perl脚本 结果直接显示在gvim的Quickfix窗口,不会单独弹出窗口。 F3: 打开tagbar F4: 添加个人信息 -------------------------------------------------------------- 炫酷配色方案,详情参看(http://www.weibo.com/1132779494/z6lIzbmBg) 自动匹配括号,自动补全一些代码(\fn: 当前文件名; \fe:当前文件名+后缀;tt当前时间) 自动载入保存fold(折叠)信息 --------------------------------------------------------------- tl: 显示taglist wm:显示winmanager ,v: 打开配置文件 ,te: 打开俄罗斯方块(熟悉HJKL键) tv: 在gvim打开bash命令行(是的,你没看错!!) pyli: python静态代码测试 (保持代码规范,远离砍手砍脚) --------------------------------------------------------------- ctrl+g:打开最近打开的10个文件列表(这个非常方便,不用:e+路径了!) ctrl+q(,v):注释/反注释(可以区域注释,也可以单行注释) --------------------------------------------------------------- 所安装的插件: authorinfo.vim conque_term.vim EnhancedCommentify.vim minibufexpl.vim mru.vim per-support.vim python_fold.vim snipMate.vi tagbar.vim taglist.vim TeTrIs.vim winfileexplorer.vim winmanager.vim wintagexplorer.vim ------------------------------------------ 此配置的默认字体为Monaco,下载地址:http://download.csdn.net/detail/jiaoxiaogu/4317959
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值