VimでPythonの入力補完

jedi-vimという python 入力補完プラグインを試してみたいと思って、インストール完了後 Vim でファイルを開くと、

Error detected while processing function jedi#init_python[11]..<SNR>72_display_exception:
line   19:
Error: jedi-vim failed to initialize Python: jedi-vim requires Vim with support for Python 3. (in function jedi#init_python[4]..<SNR>72_init_
python, line 4)

というエラーが出る。 ずっと使ってた VimmacOS の built-in Vim バージョンで、-python3になっていた。

$ vim --version | grep python 
+cmdline_hist      -langmap           +python/dyn        +visual
+cmdline_info      +libcall           -python3           +visualextra

Homebrew には、 +python3コンパイルされた Vim バージョンが入っているので、簡単に Homebrew で新しいバージョンの Vim をインストールする。

$ brew install vim

さっそく+python3 となっていることを確認。

$ /usr/local/bin/vim --version | grep python
+comments          +libcall           -python            +visual
+conceal           +linebreak         +python3           +visualextra

Homebrew でインストールした Vim のパスは/usr/local/bin/vimになっているので、 alias を設定するまたは PATH を変更すれば良い。

alias vim='/usr/local/bin/vim'~/.zshrcに追加した後、source ~/.zshrcを実行して、設定ファイルの内容を反映させる。

PATH を変更する場合は、/usr/local/bin/usr/binより優先されることが必要です。

そして、Vim:echo has('python3')を実行して、1 が返ることを確認。