VIM配置:自动添加头部代码

本文介绍如何在VIM中配置自动化代码头,包括自动添加文件头部信息、设置快捷键、以及修改最后修改时间等功能,适用于多种编程语言,如C、C++、Shell和Java等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习记录

VIM配置:自动添加头部代码

效果

在这里插入图片描述

方法

vim /etc/vim/vimrc

添加如下代码

代码

"设置切换的快捷键F9
set pastetoggle=<F9>


"新建.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, "  > Author: admin") 
        call append(line(".")+2, "  > Mail: -----------------") 
        call append(line(".")+3, "  > Created Time: ".strftime("%c"))
        call append(line(".")+4, "  > Modified Time:".strftime("%c"))
        call append(line(".")+5, " *******************************************************/")
        call append(line(".")+6, "")
"   if &filetype == 'cpp'
    if expand("%:e") == 'cpp' 
        call append(line(".")+7, "#include <iostream>")
        call append(line(".")+8, "")
        call append(line(".")+9, "using namespace std;")
        call append(line(".")+10, "")
    endif
"   if &filetype == 'c'
    if expand("%:e") == 'c' 
        call append(line(".")+7, "#include <stdio.h>")
        call append(line(".")+8, "")
        call append(line(".")+9, "int main()")
        call append(line(".")+10, "{")
        call append(line(".")+11, "")
        call append(line(".")+12, "    return 0;")
        call append(line(".")+13, "}")
        call append(line(".")+14, "")
    endif
    "   if &filetype == 'java'
    "       call append(line(".")+6,"public class ".expand("%"))
    "       call append(line(".")+7,"")
    "   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(6, line)

endfunction

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



都看到这儿了,点个赞呗!

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值