Vim 8.0
Vimのバージョンの最初の数字が新しくなる大型アップデートの8.0のリリースが配布され始めました。
これまでのバージョン変移としては、 最後の大型アップデートの7.4のリリースが2013年8月、 7.0に関しては2006年5月なので、 最初の数字が変わるのはちょうど10年ぶりになります。 (その前の6.0は2001年9月。)
Among the new features are:
- Asynchronous I/O support, channels, JSON
- Jobs
- Timers
- Partials, Lambdas and Closures
- Packages
- New style testing
- Viminfo merged by timestamp
- GTK+ 3 support
- MS-Windows DirectX support
一番大きなアップデートは非同期処理に関するアップデートの様に見えます。
これは、今までプラグインで機能を再現してたりしましたが 標準機能として導入されました。
また、モダンなVimを目指して作られている Neovim にこの機能が既に入っていて、 主にその機能目当てでVimからNeovim に移行した人も居るみたいで、 これらの人がまたVimに戻ってくる雰囲気もあります。
インストールしてみる
取り敢えずインストールしてみようということで、簡単に出来るMacのHomebrewで。
既に入ってるのを一度消してHEADバージョンを入れます。
$ brew rm vim
$ brew install vim --with-lua --HEAD
取り敢えずLuaサポートだけ今までどおり入れておきます。
これで入れると、
$ vim --version
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Sep 12 2016 23:50:12)
MacOS X (unix) version
Included patches: 1-2
Compiled by Homebrew
な感じで今は8.0.2が入りました。 (8.0のリリースが作られてから速攻で2つパッチがあてられてます。
おもむろにVimを立ち上げてみると、
$ vim
Warning: Cannot find word list "en.utf-8.spl" or "en.ascii.spl"
Warning: Cannot find word list "en.utf-8.spl" or "en.ascii.spl"
Error detected while processing /Users/user/.vimrc:
line 864:
E185: Cannot find color scheme 'ron'
Press ENTER or type command to continue
こんな注意が最初出てきて、そのまま取り敢えず編集に居入ってみると、
Error detected while processing function <SNR>20_IndentGuidesEnable[1]..indent_guides#enable[8]..i
ndent_guides#init_script_vars[7]..indent_guides#capture_highlight:
line 2:
E411: highlight group not found: Normal
Press ENTER or type command to continue
な感じのエラーが。
何やらカラースキーマファイルが見つけられないみたいですが、 取り敢えず他にも色々エラーが出るかもな、ということで、 プラグインを入れなおしてみることに。
$ mv $HOME/.vim/dein $HOME/.vim/dein.old
$ vim
...
.vimrc の中で、プラグインなどがインストールされてない場合は まず Dein.vim を導入してそれを用いてプラグインをインストールするようにしています。 なので上の方法でプラグインの再導入になります。
色々問題起きるかな、と思ってたんですが、 以外に一から入れたら何も問題なく全てインストールできました。
今度は立ち上げても何も文句言われません。
ということで、Dein.vimとかで管理している場合でも 割りと特に問題なくそのまま新しい8.0でも使えそうです。
プラグインの中には機能的に8.0では必要ないものとか まだ見つけてませんが上手く動かないものもあるかもしれませんが、 ちょっとずつ見なおしていこうと思います。