12721


vim7.4でmatchit(同梱版)プラグインを有効にすると  
html内のタグの中のかっこで`%`を押しても、カーソルが飛びません。

なぜでしょうか?


CC BY-SA 3.0
2015-07-26T12:17:46.580
12719
2015-07-26T23:55:00.740
2015-07-26T13:04:29.457
5246
5246
question
vim
vimのmatchitでhtml内の<script>の中で括弧に飛べなくなる


同梱版でしょうか？  
そちらだとhtmlは飛べない可能性があります。

<https://github.com/tmhedberg/matchit>

こちらを試して貰えますか。


CC BY-SA 3.0
2015-07-26T12:51:43.880
12721
2015-07-26T23:55:00.740
2015-07-26T23:55:00.740
440
440
12719
answer


matchit.vimでは、対応する括弧の組を`b:match_words`という変数で管理しています。  
HTMLの場合、この変数に括弧が登録されていないようです。  
HTMLファイルを開いた状態で、`:echo b:match_words`を実行して確認してみてください。

`.vimrc`に次のように書いておくと、どのようなファイルタイプでも`words`で指定した括弧の組が有効になります。

[code]

    function! s:set_match_words()
      " Enable these pairs for all file types
      let words = ['(:)', '{:}', '[:]', '（:）', '「:」']
      if exists('b:match_words')
        for w in words
          if b:match_words !~ '\V' . w
            let b:match_words .= ',' . w
          endif
        endfor
      else
        let b:match_words = join(words, ',')
      endif
    endfunction
    augroup matchit-setting
      autocmd!
      autocmd BufEnter * call s:set_match_words()
    augroup END
    
[/code]

補足:
現状`b:match_words`にマルチバイト文字を指定すると、`d%`などは正しく動かないという問題があります。(<https://github.com/vim-
jp/issues/issues/734>)


CC BY-SA 3.0
2015-07-26T15:33:51.603
12725
2015-07-26T15:47:47.190
2015-07-26T15:47:47.190
4622
4622
12719
answer