読了 『Modern Vim』
あのVim本の作者の第二弾
Vimにハマるきっかけとなった本 "Practical Vim" [Ref1] の作者 Neil Drew さんが 新しく " Modern Vim " という本を出版する というので早速予約したのは、年初でした。
サブタイトルは、 "Craft Your Development Environment With Vim 8 and Neovim" で、内容的には Vim8 と Neovim をカバーしているとのことで、とても期待できそうです。
その後、何度か出版が遅れたようで、先週やっと本が届きました。
『Modern Vim』の概要
内容は、Vim8 と Neovim について特に Legacy な Vimから機能アップされている 部分を中心に解説されています。
章ごとの内容は以下のようなものです。
-
Get Modern Vim
Vim8 と Neovim のインストール方法について解説されています。
-
Installing Plugins
プラグインのインストール方法です。 多くの方は Deinなどのプラグイン・マネージャーを使っていると思いますが、 これらモダンな Vimはデフォルトで柔軟にプラグインを取り込む方法を提供 しており、その方法について記載しています。
-
Open Files
Command Line Fuzzy Finder (以下、FZF) と強調して動作するプラグインと .package.json を使ったナビゲーション によるファイルの編集が解説されています。
-
Working with the QuickFix List
コンパイラーや make と組み合わせて、 Vimを開発で便利に使う方法 を解説されています。
-
Neovim's Built-In Terminal Emulator
Neovimの特徴である内蔵ターミナル機能に焦点を当てた解説。便利な機能であ あるものの、ここまで詳しい解説はなかったのでとても参考になります。
-
Session
IDEでいう「ワークスペースの保存」のような機能で、編集しているファイルや 画面分割やタブの状態などを保存し、また再現できる Session機能についての 説明です。
-
Configuring Vim
Vimの設定方法についての解説です。すぐに役立つものがあるわけではありませんが 、資料価値が高いのはこの章でしょうか。将来特別なカスタマイズをしたくなった 時に参考になりそうな情報の宝庫です。
-
What's Next for Modern Vim?
今後の Vim8 や Neovim についての開発のロードマップが解説されています。
『Modern Vim』の評価
"Practical Vim" の読者で、同じような内容を期待して読むと少しがっかりする かもしれません。
"Practical Vim" では、 Vimに基本的な機能を中心に、Vimを使った編集で 広く使える普遍的なテクニックを読者に訴えかける 迫力がありました。 そのため、今でもバイブル的に何度も読み直したり、 編集の際 macの横において参照したりしています。
一方で、本書は、半分が Vim8 / Neovim で拡張された新機能、 半分くらいがそれらと関連したプラグインなど補助機能が解説されています。 これらの機能に依存しているため前書で感じた普遍性が 損なわれているように思いました。おそらく長年に渡ってバイブル的な 扱いはしないでしょう。
しかし、考えてみれば、前書は Vim 標準の機能で「どう編集すべきか」という Vim で普遍的な「哲学」を語っていたのに対し、本書はあくまで新しい Vim での「新機能」を語っているのですから、これらの違いは当たり前です。
それでも、いままでプラグインに頼っていたことが、 Vim/Neovim では 標準機能だけで簡単にできる方法や、知らなかった便利なコマンドやプラグイン を学ぶことができました。 特に日本人があまり使わないプラグインやコマンドなどが解説されており新鮮に 感じました。
ここの情報の断片はネットでも入手可能ですが、この作者が実践的に利用して いる信頼できる情報が、書籍としてまとまった読めるのは大変ありがたい です。
貴重な書籍だと思います。