vital.vim の Web.HTTP.get() で E887 このコマンドは無効です、ごめんなさい. Python の site モジュールをロードできませんでした とエラーが出た
問題
以下のコードを実行したら
code:vim
let s:V = vital#vital#new()
let s:Http = s:V.import('Web.Http')
E887 このコマンドは無効です、ごめんなさい. Python の site モジュールをロードできませんでした
というエラーが出た
原因
python27.dll が見つからなかった
Python 2.7 がインストールされていなかった
解決方法
Python 2.7 をインストールし、$VIMRUNTIME のディレクトリに python27.dll を配置する
C:\Windows\System32\python27.dll を $VIMRUNTIME のディレクトリに配置する
C:\Vim\vim81\python27.dll みたいに配置
以下メモ
Python2 を実行できるようにしておかないといけないのかも?
どうすればいいんだろう
Python3 は有効になっているけど、Python2 が有効になっていないっぽい?
code:vim
:py print "hello"
E887 このコマンドは無効です、ごめんなさい. Python の site モジュールをロードできませんでした
code:vim
:py3 print("hello")
hello
両方を有効にしたい!
Vim 側は対応していそう
code:vim
:version
...
+python/dyn
+python3/dyn
:py3do の部分に書いてあった
Vim のビルドは 4 種類あります (:version の出力):
1. Python サポートなし (-python, -python3)
2. Python 2 サポートのみ (+python or +python/dyn, -python3)
3. Python 3 サポートのみ (-python, +python3 or +python3/dyn)
4. Python 2 と 3 のサポート (+python/dyn, +python3/dyn)
4. Python 2 と 3 のサポート (+python/dyn, +python3/dyn) になっているってことか
Python 2 と Python 3 をサポートするにはそれらを動的ロードする必要があります。
Python 2.x を動的にロードできるようにするのかな...?
C:\Windows\System32\python27.dll を $VIMRUNTIME のディレクトリに配置する
C:\Vim\vim81\python27.dll みたいな
動いた!