Vim如何自動添加代碼檔案頭

來源:互聯網
上載者:User

首先感謝網上的大牛們:

http://www.vimer.cn/

還有這位兄台:http://www.oschina.net/code/snippet_103341_9644

有了Ubuntu怎麼可以不用Vim?

然後就先逗比的現在Windows下裝了gVim。。。。。。

果然是藥不能停。。。。。。

一個不錯的版本的傳送門:【百度雲】http://pan.baidu.com/s/1qWntcEK

然後就是添加檔案頭了。這個從Vimer大牛的部落格中學到不少姿勢,但是無奈我太弱了Regex都不會。。。。。。大牛用Regex來匹配,我是直接字串匹配。。。。。。。給跪。。。。。

順便把一些資料給大家:

添加路徑和檔案http://vim.wikia.com/wiki/Insert_current_filename

這個是Vim的設定代碼,把F4綁定為添加或更新檔案頭。

主要的結構還是那位大牛的。。。我只是很捉急的修改了一點而已。。。

本欄目更多精彩內容:http://www.bianceng.cnhttp://www.bianceng.cn/OS/Linux/

"進行著作權聲明的設定  "添加或更新頭  map <F4> :call TitleDet()<cr>'s  function AddTitle()      call append( 0, "/*=============================================================================")      call append( 1, "#       COPYRIGHT NOTICE")      call append( 2, "#       Copyright (c) 2014")      call append( 3, "#       All rights reserved")      call append( 4, "#")      call append( 5, "#       @author       :Shen")      call append( 6, "#       @name         :")      call append( 7, "#       @file         :".expand("%:p:h")."\\".expand("%:t"))      call append( 8, "#       @date         :".strftime("%Y/%m/%d %H:%M"))      call append( 9, "#       @algorithm    :")      call append(10, "=============================================================================*/")      call append(11, "")      echohl WarningMsg | echo "Successful in adding the copyright." | echohl None  endf  "更新最近修改時間和檔案名稱  function UpdateTitle()      normal m'      execute '/#       @date      /s@:.*$@\=strftime(":%Y-%m-%d %H:%M")@'    normal ''    normal mk      execute '/#       @file      /s@:.*$@\=":".expand("%:p:h")."\\".expand("%:t")@'    execute "noh"    normal 'k      echohl WarningMsg | echo "Successful in updating the copy right." | echohl None  endfunction  "判斷前10行代碼裡面,是否有COPYRIGHT NOTICE這個單詞,  "如果沒有的話,代表沒有添加過作者資訊,需要新添加;  "如果有的話,那麼只需要更新即可  function TitleDet()      let n = 2      "預設為添加          let line = getline(n)          let str = '^#       COPYRIGHT NOTICE$'        if line =~ str              call UpdateTitle()              return        endif      call AddTitle()  endfunction

然後順便附上結果:

/*=============================================================================  #       COPYRIGHT NOTICE  #       Copyright (c) 2014  #       All rights reserved  #  #       @author       :Shen  #       @name         :  #       @file         :G:\My Source Code\DefaultCode.cpp  #       @date         :2014/06/10 18:06  #       @algorithm    :  =============================================================================*/

其實還可以做到根據不同的檔案添加不同的代碼頭。。。工作量有點大,而且本弱主要也就寫一個C++,然後就沒搞了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.