linux vim 基础设置-自动填充文件头

 前言

当前为vimrc脚本设置,脚本位置在 ~/.vimrc or /etc/vimrc

当前为首次打开 C C++ Shell 文件,自动填充对应文件头信息,再次打开时会修改对应时间信息

:set nu "显示行号
:set hlsearch "搜索时 高亮



"新建 .c .cpp .sh文件,自动插入文件头
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()"

"定义函数SetTitle,自动插入文件头
func SetTitle()
    "如果文件类型为.sh文件
    if expand("%:e") == 'sh'
        call setline(1,          "#/bin/bash")
        call append(line("."), "# ----------------------------------------------------")
        call append(line(".")+1, "# > File Name: ".expand("%"))
        call append(line(".")+2, "# > Author: qxy")
        call append(line(".")+3, "# > Mail: ********@***.***")
        call append(line(".")+4, "# > Created Time: ".strftime("%c"))
        call append(line(".")+5, "# > Modified Time:".strftime("%c"))
        call append(line(".")+6, "# ----------------------------------------------------")
        call append(line(".")+7, "")
        call append(line(".")+8, "")
	endif


    if expand("%:e") == 'cpp'
        call setline(1,          "/*")
        call append(line("."),   " * ----------------------------------------------------")
        call append(line(".")+1,   " * > File Name: ".expand("%"))
        call append(line(".")+2, " * > Author: qxy")
        call append(line(".")+3, " * > Mail: ********@***.***")
        call append(line(".")+4, " * > Created Time: ".strftime("%c"))
        call append(line(".")+5, " * > Modified Time:".strftime("%c"))
        call append(line(".")+6, " * ----------------------------------------------------")
        call append(line(".")+7, " */")
        call append(line(".")+8, "")
        call append(line(".")+9, "#include <iostream>")
        call append(line(".")+10, "")
        call append(line(".")+11, "using namespace std;")
        call append(line(".")+12, "")
    endif


    if expand("%:e") == 'c'
        call setline(1,          "/*")
        call append(line("."),   " * ----------------------------------------------------")
        call append(line(".")+1,   " * > File Name: ".expand("%"))
        call append(line(".")+2, " * > Author: qxy")
        call append(line(".")+3, " * > Mail: ********@***.***")
        call append(line(".")+4, " * > Created Time: ".strftime("%c"))
        call append(line(".")+5, " * > Modified Time:".strftime("%c"))
        call append(line(".")+6, " * ----------------------------------------------------")
        call append(line(".")+7, " */")
        call append(line(".")+8, "")
        call append(line(".")+9, "#include <stdio.h>")
        call append(line(".")+10, "#include <stdlib.h>")
        call append(line(".")+11, "")
        call append(line(".")+12, "int main(int argc, char const *argv[])")
        call append(line(".")+13, "{")
        call append(line(".")+14, "")
        call append(line(".")+15, "    return 0;")
        call append(line(".")+16, "}")
        call append(line(".")+17, "")
    endif


endfunc
"新建文件后,自动定位到文件末尾
autocmd BufNewFile * normal G



"--------------------------------------------------------------------------
" modify the last modified time of a file
function SetLastModifiedTime(lineno)
    let modif_time = strftime("%c")
    let line = ' * > Modified Time:'.modif_time
    call setline(7, line)

endfunction


function SetLastShellModifiedTime(lineno)
    let modif_time = strftime("%c")
    let line = '# > Modified Time:'.modif_time
    call setline(7, line)

endfunction


" map the SetLastModifiedTime command automatically
au BufWrite *.cpp,*.c call SetLastModifiedTime(-1)
au BufWrite *.sh call SetLastShellModifiedTime(-1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值