vim matchit 自定義配對關鍵字之間的跳轉


vim因其強大的擴展性一直深受linux程序員的喜愛,最近在用vim寫verilog的時候,由於一個邏輯塊中的begin end較多,常常會多寫或者漏掉匹配關鍵字,很是苦惱,於是尋找匹配關鍵字間跳轉的方法,發現matchit可以用%在關鍵字之間實現跳轉,還可以自定義更多的關鍵字,相當方便。

以下正片:

1、安裝 matchit插件

  matchit 插件是vim默認自帶的,但是不安裝。安裝方法可以在vim 的help里查看:

  • $ vi     打開一個空白文件
  • :help matchit-install

  就能看到安裝步驟了,打開terminal:

  • $ mkdir ~/.vim
  • $ mkdir ~/.vim/plugin
  • $ cp $VIMRUNTIME/macros/matchit.txt ~/.vim/plugin($VIMRUNTIME可能沒有。可以在vim里 :echo $VIMRUNTIME來查看路徑)

2、定義所需關鍵字

  定義關鍵字主要是給 |b:match_words| 定義一個合適的模板,在.vimrc文件中定義模板就行。

  • 打開 ~/.vimrc
  • 下面是我的配置:
let b:match_word='\<begin\>:\<end\>,'
    \ . '\<while\>:\<continue\>:<break\>:\<endwhile\>,'
    \ . '\<if\>:\<else if\>:<else\>,'
    \ . '\<module\>:\<endmodule\>,'
    \ . '\<task\>:\<endtask\>,'
    \ . '\<function\>:\<endfunction\>,'
    \ . '\<program\>:\<endprogram\>'
let b:matchit_ignorecase=1    "開啟 忽略大小寫

  其中 let b:match_ignorecase = 1 為忽略大小寫,如begin可以匹配到END

設置完成后,在關鍵字如begin上按%,光標就會跳轉到與之匹配的end上,灰常慌便


免責聲明!

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



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