Vim 自動文件頭注釋與模板定義


Vim 自動文件頭注釋與模板定義

  • 在vim的配置文件.vimrc添加一些配置可以實現創建新文件時自動添加文件頭注釋,輸入特定命令可以生成模板。

使用方法


  • 插入模式輸入模式輸入seqlogic[Enter]創建時序邏輯框架
  • 新創建一個文件 gvim test.c 自動添加頭部注釋
  • F2映射文件頭注釋,命令行模式文件內按F2自動添加
  • F11映射注釋,命令模式按F11出現注釋行

Verilog模板生成


vim中輸入seqlogic或者comlogic點擊回車即可替代為模板

"###################    verilog   ##########################
:ab seqlogic always@(posedge clk or negedge rst_n)<Enter>begin<Enter>if(rst_n==1'b0)<Enter>begin<Enter>end<Enter>else<Enter>begin<Enter>end<Enter>end
"生成時序邏輯框架塊

:ab comlogic always@(*)<Enter>begin<Enter>end
"生成組合邏輯框架塊
"###################    verilog   ##########################

文件頭注釋自動生成


"###################    set file head start  #########################
"autocmd創建新文件自動調用setfilehead()函數
autocmd BufNewFile *.v,*.sv,*.cpp,*.c,*.h exec ":call Setfilehead()"
func Setfilehead()
    call append(0, '/***********************************************')
    call append(1, '#')
    call append(2, '#      Filename: '.expand("%"))
    call append(3, '#')
    call append(4, '#        Author: Clough - clough@gmail.com')
    call append(5, '#   Description: ---')
    call append(6, '#        Create: '.strftime("%Y-%m-%d %H:%M:%S"))
    call append(7, '# Last Modified: '.strftime("%Y-%m-%d %H:%M:%S"))
    call append(8, '***********************************************/')
"    call append(9, '')
endfunc

"map F2 to creat file head comment
"映射F2快捷鍵,生成后跳轉至第10行,然后使用o進入vim的插入模式
map <F2> :call Setfilehead()<CR>:10<CR>o
"###################    set file head end   ##########################

文件內部注釋快捷鍵生成


"###################    set comment start  #########################
func SetComment()
    call append(line(".")  , '//**************** comment start ********************')
    call append(line(".")+1, '//**************** comment end   ********************')
endfunc

"映射F11快捷鍵,生成后跳轉至下行,然后使用O進入vim的插入模式
map <F11> :call SetComment()<CR>j<CR>O
"###################    set comment end   ##########################

參考資料


[1]. vim 自動添加頭注釋


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM