dein も plugin もアップデートしていく
vim-airline をインストールしていたものの、あまり使いこなせていなかったので改めて、パッケージの整理をしていた。
しかし、本来 vim 起動時に出るはずのステータスバーが出てこない。
そもそも、.vimrc で dein の add にパッケージを指定しているのに、入っている様子もない。
vim のアップデート
vim も日々進化しているため、これを期にアップデート。
$ vim --version
VIM - Vi IMproved 8.1 (2018 May 18, compiled Feb 19 2019 11:57:04)
Vim 8 は熱いらしい。neovim も気になるが、deoplete package も vim8 なら対応できるようなので、vim8 を試してみたい。
dein のアップデート
自分の場合は、$HOME/.vim/dein に dein を入れているため、まず
$ cd $HOME/.vim/dein/repos/github.com/Shougo/dein.vim
$ git pull origin master
して、最新の dein にアップデート。dein は開発が盛んのため、既存の設定ではすでに古くなっていることがある。
こまめにアップデートしておくと、変なところで詰まらなそう。
dein でインストールした plugin のアップデート
dein も要は plugin を git clone してきて、その Vimスクリプト をロードしてくれるため、git pull origin master すればよいのだが、dein のコマンドでアップデートしてしまうほうがよい。
vim を起動して、 : を入力してコマンドを実行する
:call dein#update()
dein は plugin を自動アップデートしてくれないので、要注意。
これで vim-airline のステータスバーがちゃんと表示されるようになった。
見た目もいい感じ。
vim から Python を利用する
Vim 8 や neovim では Python と連携させるのが当たり前になっている。
pyenv で管理している Python や mac 標準の python などと異なってくるので注意が必要だ。
requirements - Shougo/deoplete.nvim に書かれている通り、まずはインストールした vim で
:echo has("python3")
を実施して、 1 だったら問題ない。 0 だった場合は python3 込みでインストールが必要だ。
python3 を利用できる vim だと
:pythonx print(sys.version); print(sys.path)
3.7.3 (default, May 7 2019, 21:29:20)
[Clang 10.0.1 (clang-1001.0.46.4)]
['/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/lib/python37.zip', '/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/lib/python3.7', '/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload', '/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages', '_vim_path_']
と出力される。これで、どの Python で pip3 インストールすればよいのかわかる。
/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/bin/python3.7 -m pip install pynvim
これをしておかないと、インストールできているはずの deoplete にて
:call deoplete#complete()
failed executing: pythonx import [pynvim|neovim]
というエラーになってしまう。Python 3.4 以降では -m pip で pip を利用できる。get-pip.py なんて要らなかったんや… (easy_install で pip をインストールしていた時代が懐かしい…)