sinshutu_kibotuの日記

大体、大抵、大半、備忘録

neovimの補完プラグインdeopleteが重い(快適設定にする)

はじめに

neovimにしてdeopleteを突っ込んだは良いけどなんか重くて使えん。。。ってなっていろいろいじった結果のまとめです。 結論から言いますと、auto_complete_delayを0に設定してくださいデフォルト設定が150になってます(現在:2017/1/27)

経緯

deopleteの設定どうするんだろ -> 公式とか導入系の記事を見る -> 大体exampleに

  let g:deoplete#enable_at_startup = 1

しか書いてなくてhook_sourceへ設定を突っ込んだりしてみたけど、とにかく入力が重くてなんでだろってなってました。 他の人の設定ファイルみたりしてたらauto_complete_delayとか他のオプションが設定されていてそれらをいじっていたら良い感じになりました。

快適設定ってタイトルなのに全然最適化みたいなことはしてないです(それ目的な人はすいません)

とりあえず、「deoplete 重い」で記事があまり引っかからなかったので同じ感じでdeoplete導入できてない人が解消できてくれればうれしいです。

単純に設定がおかしいなどの指摘があればバシバシお願いします。

deinでの設定

[[plugins]]
repo = 'Shougo/deoplete.nvim'
on_event = 'InsertCharPre'
hook_source = '''
  let g:deoplete#enable_at_startup = 1
  let g:deoplete#auto_complete_delay = 0
  let g:deoplete#auto_complete_start_length = 1
  let g:deoplete#enable_camel_case = 0
  let g:deoplete#enable_ignore_case = 0
  let g:deoplete#enable_refresh_always = 0
  let g:deoplete#enable_smart_case = 1
  let g:deoplete#file#enable_buffer_path = 1
  let g:deoplete#max_list = 10000
  inoremap <expr><tab> pumvisible() ? "\<C-n>" :
        \ neosnippet#expandable_or_jumpable() ?
        \    "\<Plug>(neosnippet_expand_or_jump)" : "\<tab>"
'''
on_i = 1

謝辞

zcheeさんの設定ファイル(init.vim)を参考にさせていただきました (人の設定ファイルみて書くの楽ですね・・・) github.com

deopleteの開発ありがとうございます (開発手伝えるようになりたい) GitHub - Shougo/deoplete.nvim: Dark powered asynchronous completion framework for neovim/Vim8