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上,灰常慌便

posted on 2018-12-20 11:42  HolmeXin  阅读(3548)  评论(2编辑  收藏  举报

导航