matchit.vimで、C言語の
switch
case
case
とか
if
else if
else if
とかって対応できますか?

とりあえずこんなかんじで書いてみたものの、ifと最初のelseで行
ったり来たりしてしまう。
    let b:match_words =              
\ '\%(^\s*\)\@<=\%(if\|switch\)\>:' .
\ '\<\%(else\|else\s\+if\|case\)\>'