できる気がしてきた。

僕の興味のあることを共有します。

そろそろNeoVimに移行してよいのではないだろうか?

NeoVimはVimリファクタリングし、モダンな設計に書きなおしたバージョンだ。 Github上で開発されておりコミュニティベースで開発が進められている。

Githubのグラフを見るに2014年に始まったプロジェクらしい。 僕が見つけたときには、すでにクラウドファンディングがスタートし開発が活発になっていた時だ。

github.com

当時はVimの作者であるBram Moolenaar氏が批判的なコメントをしていたり、古参Vimmer達が色々と意見をいっていたりあまり良く受け入れられていなかったような気がした。

しかし、そこから3年たった今NeoVimは開発ペースも安定し、Neo系プラグイン開発者で有名だったShougo氏もDarkpowered系アドオンを開発し始めていたりしていて、ある程度開くティブなVimmerもNeovimを使い始めているようだ。 昔々私も「Vimmerが闇堕ちした話」というイタいポエムを書いたことがあったが、Shougo氏のおかげでevilにならなくても闇堕ちできるようになってしまった。

ta2gch.hateblo.jp

NeoVimが良かったのは後方互換性を担保した点だろう。Vimの資産をそのまま使え、その上でモジュール化を達成したことの影響はとても大きいように思える。

僕が使っていて気づいたVimとNeoVimの違いをいかに書いておこく。

  • Vim8のパッチはまだ完全にNeoVimに取り込まれていないので、Vim8の非同期APIなど一部のAPIはNeoVimでは(まだ)使えない。
  • Vimはビルド時に他の言語拡張の有効化を行うが、NeoVimは起動時に自動で判定するので、pipgem拡張機能をインストールすれば自動で有効化される。
  • Vimウガンダへの寄付を募集しているが、NeoVimはしていない。
  • Vimでシェル機能を使う場合は、Vimshellが必要だが、NeoVimは標準で組み込まれているので、:terminalで起動できる。
  • 設定ファイルの場所が違う(.vimrc.config/nvim/init.vim)

NeoVimもbrewでインストールできるのでLinux(Linuxbrew)やmacOS(Homebrew)ユーザーは是非インストールしてみてほしい。