補完を便利にするプラグイン autocomplpop の代わりに neocomplcache を導入
ネオコンなるものがあるそうなので調べたら、autocomplpop を置き換える neocomplecache なる Vim スクリプトパッケージがあった。とっくに時代は塗り替えられていたらしい。
アンインストール&インストール:
$ vimana remove autocomplpop
$ vimana install neocomplcache
~/.vimrc に以下を追記:
" Use neocomplcache. let g:neocomplcache_enable_at_startup = 1 " Use smartcase. let g:neocomplcache_enable_smart_case = 1 " Use auto select "let g:neocomplcache_enable_auto_select = 1 " Use camel case completion. let g:neocomplcache_enable_camel_case_completion = 1 " Use underbar completion. let g:neocomplcache_enable_underbar_completion = 1 " Set minimum syntax keyword length. let g:neocomplcache_min_syntax_length = 3 " Set manual completion length. let g:neocomplcache_manual_completion_start_length = 0 " Define dictionary. "let g:neocomplcache_dictionary_filetype_lists = { " \ 'default' : '', " \ 'vimshell' : $HOME.'/.vimshell_hist', " \ 'scheme' : $HOME.'/.gosh_completions', " \ 'scala' : $DOTVIM.'/dict/scala.dict', " \ 'ruby' : $DOTVIM.'/dict/ruby.dict' " \ } " " Define keyword. if !exists('g:neocomplcache_keyword_patterns') let g:neocomplcache_keyword_patterns = {} endif let g:neocomplcache_keyword_patterns['default'] = '\h\w*' " "ilet g:neocomplcache_snippets_dir = $HOME.'/snippets' autocmd! FileType css setlocal omnifunc=csscomplete#CompleteCSS autocmd! FileType eruby,html,markdown setlocal omnifunc=htmlcomplete#CompleteTags autocmd! FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS autocmd! FileType python setlocal omnifunc=pythoncomplete#Complete autocmd! FileType xml setlocal omnifunc=xmlcomplete#CompleteTags
自動起動 let g:neocomplcache_enable_at_startup = 1 ぐらいで不便はないらしいが、ついでなんで色々設定してみた。
上記の設定に以下があるが、
autocmd! FileType eruby,html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
これがないと、「Vim で XML/HTML の閉じタグを自動補完するようにした - LazyLoadLife」が効かないっぽい。