vimでPython書いてると落ちるようになってしまったので,対処した話.
neocompleteがトリガで.オムニ補完が原因で死んでたらしい.
vimが死ぬ
Pythonのコードを書いていると,いきなりvimが閉じて,
Vim: Caught deadly signal TRAP
Vim: preserving files...
Vim: Finished.
Trace/breakpoint trap (core dumped)
となって,クラッシュしてしまう.
タイミング的には,"."を打ち込んだ時だったので,補完で使っているプラグインneocompleteか?
と思っていた.
neocompleteは悪く無い
調べてみると,neocomplcacheを使っている人で同様の症状がでている人がいるようだった.
neocomplcacheのオムニ補完がこけていたのだという事が判明したので、特定の言語についてオムニ補完を無効にしてみます。 neocomplcacheのドキュメントに書いてあるとおりにオムニ補完を無効。
もしもneocomplcacheでコケてしまった時の解決法 - SEGVな毎日
なるほどと思ってneocompleteのドキュメントを読んでみると,ちゃんと対処法が書いてあった.
公式のドキュメントにもあるが,これはオムニ補完のところで死んでいるようなので,
neocompleteには責任はない.
Pythonで症状がでていたが,どうやらRubyでも症状が出るようだ.
解決策
と,いうことで.vimrcにPythonのオムニ補完の無効化を記述する.
" Disable omnifunc in Python
if !exists('g:neocomplete#sources#omni#input_patterns')
let g:neocomplete#sources#omni#input_patterns = {}
endif
let g:neocomplete#sources#omni#input_patterns.python = ''