近年の Vim や neovim では、多くは python がインストールされていることを前提とした仕組みになっています。
特に、neovim の :checkhealth をすべて通過するには必要不可欠です。
この記事では、Vim / neovim でプラグインを使わずに「Vim / neovim で pythonのパスを指定する」ための設定方法について、ご紹介します。
Vim / neovim で pythonのパスを指定するオプション
ここで紹介する方法は、Vim / neovim のいずれでも設定方法は同じです。
オプション
let g:python3_host_prog = '{Python3の実行ファイルのパス}' let g:python_host_prog = '{Python2の実行ファイルのパス}'
こちらをコマンドとして実行する、あるいは設定ファイル(.vimrc / init.nvim など)に記載します。
Linux / Mac 設定例
let g:python3_host_prog = '/usr/bin/python3' let g:python_host_prog = '/usr/bin/python'
Windows 設定例
let g:python3_host_prog = 'C:\Program Files\Python37\python.exe' let g:python_host_prog = 'C:\Program Files\Python27\python.exe'
設定の確認方法
下記のコマンドを実行してみましょう。
設定値の確認
:echo g:python3_host_prog → Python3の実行ファイルのパスが表示されればOK :echo g:python_host_prog → Python2の実行ファイルのパスが表示されればOK
次の方法でも確認はできますが、設定したパスが有効かは正確にはわかりません。
:echo has('python3') → 1:OK, 0:NG :echo has('python') → 1:OK, 0:NG
複数のパスに異なるマイナーバージョンをインストールしてしまっている場合は注意が必要です。
実行確認
実際に、Pythonのコードを実行できれば良いわけです。例えば、次のようなコマンドになります。
:py print('OK') → 1:OK, エラー出力:NG :py3 print('OK') → 1:OK, エラー出力:NG
この確認方法についても、複数のパスに異なるマイナーバージョンをインストールしてしまっている場合は注意が必要です。
checkhealth
neovim だけは設定状態を確認するコマンドがあります。次のコマンドを実行してみましょう。
:checkhealth
実行結果は次のようになります。
neovim 特有ですが、こちらは複数マイナーバージョンをインストールしてしまったとしてもハッキリ良し悪しが分かるので安心ですね。
補足:Python有効状態
1. Pythonサポートの有効/無効
次のオプションを設定することで、Pythonサポートの有効/無効を設定できます。
let g:loaded_python3_provider = 1 → Python3を無効化 let g:loaded_python_provider = 1 → Pythonを無効化
2. コンパイル時点の Python 有効化
そもそもコンパイル時点で Python が有効化されていなければ、Vimでは利用できません。次のコマンドで確認しましょう。
:version
こちらは Vim だけでの確認方法となります。neovim で同じコマンドを実行しても確認できませんので、checkhealthコマンドで確認しましょう。
このVimコマンドの補足情報
- 利用頻度
- 便利さ
- 覚え易さ
関連するVimヘルプ
Vimからは、下記のコマンドでヘルプを確認できます。
:help g:python3_host_prog :help g:python_host_prog
ヘルプで検索するときは、通常は大文字小文字は識別されませんので、どちらでも構いません。
参考書籍
こちらの書籍が参考になります。
Vim/neovim関連の書籍で、もっとも評判が良くてバイブルと呼んでる人もいる一冊です。Vim/neovimのバージョンに依存しない沢山のTips形式で、その表題通りに「思考のスピードで編集」できるようになるノウハウが詰まっています。その高い評価は Amazon のレビューからも分かる通りです。Vimmer なら必ず一度は読んでおいて間違いありません。
こちらもVim関連の書籍で評価が高い書籍の一冊です。vim-jpで見かける上級Vimmer(Vimサポーターズ)の皆様による、Vimを実践で使ったノウハウからプラグイン関連の情報が詰まっています。日本の Vim界隈を知る上でも是非一読しておきたい一冊です。
Vim/neovim の設定ファイルやプラグインなど、Vim script に関するノウハウがいくつも詰まった一冊です。日本で Vim Script をここまで深く解説している唯一の書籍と言えます。Vim力を伸ばしたいと考えるなら、絶対に避けては通れない書籍でしょう。