テキストエディタVi IMproved（VIM）開発チームは9月12日、最新のメジャーリリース版となる「Vim 8.0」をリリースした。10年以上の開発期間を経ており、非同期I/0やスクリプト仕様の強化といった多数の新機能が加わっている。

Vimはターミナル上で動作するテキストエディタ「Vi」から派生したテキストエディタで、Viと同等の機能提供を目指して開発された。高度な設定機能、効率のよいテキスト編集などの特徴を持つ。なお、ライセンスはウガンダへの寄付を推奨する独自のフリーソフトウェアライセンスを採用する。

Vim 8.0は、2006年に公開されたバージョン7に続く最新版となる。非同期I/0のサポートによるチャネル機能を導入した。バックグラウンドで他のプロセスとメッセージのやり取りができるもので、サーバーを利用して作業し、結果をVimに送るといったことが可能になる。また、JSONを使った値のやり取りもサポートされている。これによって複雑なプラグインの構築が容易になるとしている。

ジョブ機能もサポートし、新たにジョブをスタートしたり停止することができる。シンタックスのチェックなどに適しているという。ジョブ機能のやりとりにチャネルを利用することもできる。合わせてタイマー機能も導入した。

プラグインを集めるパッケージも導入した。パッケージとしてディレクトリに入れることができ、更新などの管理が簡素化されるという。プラグイン構築向けに、関数参照の「Funcref」に加えて、同様に関数を参照しつつ、引数をバインドできる「Partial」が加わった。コールバック関数を関数の引数として与える場合に有用だという。ラムダ式とクロージャもサポートされた。

開発者向けのテスト機能も強化された。より容易にテストを行うためのアサート関数やフレームワークが導入されたほか、テスト用の関数もいくつか追加されているという。

ウィンドウ管理も強化された。これまでは番号ベースでウィンドウを管理していたが、開く、閉じる、移動などの動作により番号が変化するという問題があった。本バージョンでは独自IDでウィンドウを管理するようになっている。

GTK+3のサポート、Windows版でのDirect Xサポートなども加わっており、Vimスクリプトも強化した。このほか多くの細かな機能が加わっている。

Vim

http://www.vim.org/