dein, vim-airline も update したら直った話

ひとまず最新版にあげておく


Posted on 2019年 8月 19日 (月)
Tags vim, dein, vim-airline
vim, dein, vim-airline

dein も plugin もアップデートしていく

vim-airline をインストールしていたものの、あまり使いこなせていなかったので改めて、パッケージの整理をしていた。

しかし、本来 vim 起動時に出るはずのステータスバーが出てこない。

そもそも、.vimrc で dein の add にパッケージを指定しているのに、入っている様子もない。

vim のアップデート

vim も日々進化しているため、これを期にアップデート。

1
2
3
$ vim --version

VIM - Vi IMproved 8.1 (2018 May 18, compiled Feb 19 2019 11:57:04)

Vim 8 は熱いらしい。neovim も気になるが、deoplete package も Vim 8 なら対応できるようなので、Vim 8 を試してみたい。

dein のアップデート

自分の場合は、$HOME/.vim/dein に dein を入れているため、まず。

1
2
$ 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 を起動して : を入力し、コマンドを実行する。

1
:call dein#update()

dein は plugin を自動アップデートしてくれないので、要注意。

これで vim-airline のステータスバーがちゃんと表示されるようになった。

見た目もいい感じ。

vim から Python を利用する

Vim 8 や neovim では Python と連携させるのが当たり前になっている。

pyenv で管理している Python や mac 標準の python などとは異なってくるので注意が必要だ。

requirements - Shougo/deoplete.nvim に書かれている通り、まずはインストールした vim で。

1
:echo has("python3")

を実施して、1 だったら問題ない。0 だった場合は python3 込みでインストールが必要だ。

python3 を利用できる vim だと。

1
2
3
4
5
: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 インストールすればよいのかわかる。

1
/usr/local/opt/python/Frameworks/Python.framework/Versions/3.7/bin/python3.7 -m pip install pynvim

これをしておかないと、インストールできているはずの deoplete にて。

1
2
3
:call deoplete#complete()

failed executing: pythonx import [pynvim|neovim]

というエラーになってしまう。Python 3.4 以降では -m pip で pip を利用できる。get-pip.py なんて要らなかったんや… (easy_install で pip をインストールしていた時代が懐かしい…)

Share


See also