名著と名高い「実践Vim 〜思考のスピードで編集しよう〜」ですが、本当にオススメな書籍だったのでご紹介します。
と、その前にぼくのキャリアについて。本職はデザイナですが、コードも書くといった感じです。 元々は「黒い画面?なにそれこわい」といった感じでAdobe製品しか触ってきませんでした。
EmacsやVim(VimとEmacsはUNIX文化の2大テキストエディタです)、コマンドラインなどに触れるようになったのは独立してからなので、今から8年ほど前になります。
ぼくは独学で学んだのでだいぶ遠回りしましたが、CUI(キャラクタユーザインタフェース)の知識は、コンピュータを操作する上で大きなインパクトを持ちます。 エンジニアは勿論のこと、デザイナやディレクターなど、コンピュータで文字入力をするすべての方々にもぜひ知っていただきたい世界です。
学べば学ぶほど、仕事のスピードが大きく加速し、もしかするとあなたの仕事の仕方そのものモノを変えてしまうかもしれません。
本書で書かれているのはVimと呼ばれるテキストエディタについてですが、Windowsのメモ帳やMacのテキストエディットなどとは一線を画したソフトです。使いこなせば本当に思考のスピードで文字を編集していくことが可能になっていきます。
コンピュータで文字入力をすることが本職でなくとも、その時間を大きく短縮してくれるVimの世界は覗いてみる価値があります。
Vimというソフトはプラグインという機能拡張を用いて文字通り機能を拡張していくことができるのですが、本書ではプラグインの紹介などは最小限に止め、Vimの基本機能に絞った解説をじっくりと行ってくれます。 同じ処理を行う場合でも、様々な手法を紹介しながらVimユーザーの思考回路とともにベターな解法を教えてくれます。
Vimは一般的なテキストエディタと異なり、モードという考え方を持ったエディタです。まずはそれらを丁寧に紹介し、続けてファイル操作について学びます(なんとファイルの保存についても!) はじめてVimを触る方にはファイルを開いたり、閉じたり、保存したりするのも一苦労というのがうかがえると思います。
続けてはレジスタについての解説です。一般的なテキストエディタにはクリップボード(コピーした文字列を保存している場所)はひとつしかありませんが、Vimはレジスタと呼ばれる場所に複数保持することが可能です。(このレジスタにはキー操作も保存することができるのですが、もちろんそれについても解説があります)
検索・置換や外部コマンドの紹介、自動補完機能について、将来に向けてのカスタマイズについてなど、本当に数えきれない学びにあふれた良著と言えるでしょう。
ただし、中には現役のエンジニアでないと理解できないような内容も含まれている箇所(Vimの説明そのものというより、その付帯状況が難しいのですが)もあるのでご注意を。そんなときはその項目を飛ばしても大丈夫。基本的に各章独立しているので安心してください。
ぼくは元々Emacs派で、今年からVimを使用するようになったのですが、本書に出会えて良かったと思っています。Emacsとは別のアプローチで文字操作を行うVimの面白さを、この本を通して教えてもらいました。
この本にチャレンジしようと思う皆さんは、ぜひコンピュータでVimを操作しながら読むことをオススメします。実際に手を動かしながら本書を読み進めていくには時間と根気が必要ですが、これからの未来で十分すぎるほどの時間と知見が返ってくることと思います。
最後にひとつだけアドバイス。本書を手に取る前に、$ vimtutor
だけはやっておきましょう。カーソル移動に関する解説が第8章にならないと出てこないので(笑)