vim建立程式檔案自動添加頭部注釋

來源:互聯網
上載者:User

有時候編寫程式檔案時,經常需要添加一些頭部注釋,比如建立者,建立日期,版本聲明或者功能描述之類的,如果每次都要添加一次注釋,便顯得比較麻煩,因此,可以在vim建立檔案時,自動添加頭部注釋。


1. 比如建立.c .h .cpp .hpp .java等c/c++ ,java程式檔案, 注釋使用 “/* */”


vim vdi_connect.c



2. 建立shell指令碼,mk檔案,注釋使用 “#”

vim set_otg_usb_mode.sh




vim如何支援。

修改 ~/.vimrc,在檔案最後添加以下內容:

" 當建立 .h .c .hpp .cpp .mk .sh等檔案時自動調用SetTitle 函數autocmd BufNewFile *.[ch],*.hpp,*.cpp,Makefile,*.mk,*.sh exec ":call SetTitle()" " 加入注釋 func SetComment()call setline(1,"/*================================================================") call append(line("."),   "*   Copyright (C) ".strftime("%Y")." Sangfor Ltd. All rights reserved.")call append(line(".")+1, "*   ") call append(line(".")+2, "*   檔案名稱:".expand("%:t")) call append(line(".")+3, "*   創 建 者:LuZhenrong")call append(line(".")+4, "*   建立日期:".strftime("%Y年%m月%d日")) call append(line(".")+5, "*   描    述:") call append(line(".")+6, "*")call append(line(".")+7, "================================================================*/") call append(line(".")+8, "")call append(line(".")+9, "")endfunc" 加入shell,Makefile注釋func SetComment_sh()call setline(3, "#================================================================") call setline(4, "#   Copyright (C) ".strftime("%Y")." Sangfor Ltd. All rights reserved.")call setline(5, "#   ") call setline(6, "#   檔案名稱:".expand("%:t")) call setline(7, "#   創 建 者:LuZhenrong")call setline(8, "#   建立日期:".strftime("%Y年%m月%d日")) call setline(9, "#   描    述:") call setline(10, "#")call setline(11, "#================================================================")call setline(12, "")call setline(13, "")endfunc " 定義函數SetTitle,自動插入檔案頭 func SetTitle()if &filetype == 'make' call setline(1,"") call setline(2,"")call SetComment_sh()elseif &filetype == 'sh' call setline(1,"#!/system/bin/sh") call setline(2,"")call SetComment_sh()else     call SetComment()     if expand("%:e") == 'hpp'   call append(line(".")+10, "#ifndef _".toupper(expand("%:t:r"))."_H")   call append(line(".")+11, "#define _".toupper(expand("%:t:r"))."_H")   call append(line(".")+12, "#ifdef __cplusplus")   call append(line(".")+13, "extern \"C\"")   call append(line(".")+14, "{")   call append(line(".")+15, "#endif")   call append(line(".")+16, "")   call append(line(".")+17, "#ifdef __cplusplus")   call append(line(".")+18, "}")   call append(line(".")+19, "#endif")   call append(line(".")+20, "#endif //".toupper(expand("%:t:r"))."_H")      elseif expand("%:e") == 'h'   call append(line(".")+10, "#pragma once")      elseif &filetype == 'c'   call append(line(".")+10,"#include \"".expand("%:t:r").".h\"")      elseif &filetype == 'cpp'   call append(line(".")+10, "#include \"".expand("%:t:r").".h\"")      endifendifendfunc




相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.