How to jump from do to end of a Ruby block using Vim?
I'm using vim for ruby, 开发者_如何学Cphp and perl development. There is the shortcut % to jump from the begin of a block (subroutine/function/method/if) to the end and vice versa. For me a % on a do/end tag in ruby doesn't work.
How can I do that with vim?
The matchit plugin allows matching more than just parentheses and comments. A ruby version can be found here.
with the matchit plugin and this code in ~/.vim/ftplugin/ruby.vim it works now :)
" Matchit support:
if exists("loaded_matchit")
if !exists("b:match_words")
let b:match_ignorecase = 0
let b:match_words =
\ '\%(\%(\%(^\|[;=]\)\s*\)\@<=\%(class\|module\|while\|begin\|until\|for\|if\|unless\|def\|case\)\|\<do\)\>:' .
\ '\<\%(else\|elsif\|ensure\|rescue\|when\)\>:\%(^\|[^.]\)\@<=\<end\>'
endif
endif
精彩评论