シリーズ記事一覧: #Unix Linux Books
ブログラマ、Web コーダー、ライター、カスタマーサポート・・・職種は違えど業務で共通する部分がある。
ドキュメントの作成である。
ドキュメントの作成・編集・管理を制するものは仕事を制する。
(プログラムコードも所詮ドキュメントである。)
Windows なら Terapad 、Mac なら mi 、Linux なら gedit など、フリーの GUI エディタも多数あり、どれも優秀なものである。また最近ユーザが増えている人気のエディタで Sublime という高機能エディタもあるし、プログラマなら Eclipse などの IDE を使ってるかもしれない。
(ちなみに Microsoft Office の Word や Mac の Pages などはここには登場しない。ファイル形式をプレーンテキストで保存しないという点で論外なのである。)
あなたが今現在上に挙げたような GUI エディタを愛用しているならそのまま使い続ければよいと思う。特に止めない。
ただし、今現在特定の GUI エディタと結婚していない、もしくは恋人募集中であるならば、これから取り上げる Vim か Emacs と是非一度デートしてみて欲しい。
Vim
白状すると僕は Vim ユーザで、Vim を愛している。
ほぼ全てのテキスト編集を Vim で行う。もちろんこのブログも Vim で書いているし、原稿を HTML に整形する Perl プログラムも Vim で書いたものだ。
というか、僕の銀行口座にお金を運んできてくれるプログラムは全て Vim で書いているので、Vim は飯の種であり生活を共にする良きパートナーでもある。
これは時系列的な出会いのタイミングによるところが大きい。
Unix コマンドと Perl で仕事をすることになった時、最初に本屋さんで買い漁った書籍の中の一冊が上の「入門vi 第6版」だったのだ。
だからほとんど理屈抜きで初恋の人と結婚したことになる。
結論から言ってしまうと「Vim と Emacs 両方、普段の仕事を支障なくこなせるレベルまで使いこなしなさい」というのが僕の持論である。
で、僕は結局のところほとんどを Vim で書いているわけだが、シェルのキーバインドなどは Emacs のものを使っている。
中にはプログラミングは Vim 、メールなど日本語が多く混在するものは Emacs と使い分けている方も多くいる。
学習する順番として僕は Vim を先に触ってみたほうがいいように思う。
何故かと言うと、Emacs のキーバインドはシェルや Web ブラウザなど、エディタ以外のところでも広く使われており、特にエディタに拘らずとも文字入力を効率化しようと思ったら自然に覚えるからである。
また、Vim の前進である ex や Vi は Unix 最古のエディタなので「まずは基本から」というスタンスで言えば Vim から入るのが Old School なやり方ではないかと思う。
Emacs
で、Emacs なわけだが、前述のように Unix/Linux 全体を見渡すと、文字入力の基本は寧ろ Emacs にあるのではないかと思う。
Vim にはノーマルモード・挿入モード・ヴィジュアルモードと「状態」を切り替えることに寄ってコマンドの意味を切り替える仕組みが採用されており、GUI アプリのように常に挿入モードであることが前提の世界では Emacs の仕組みのほうが自然だからだ。
つまり、Emacs さえ覚えてしまえば、ほとんど全ての領域で Emacs の「やり方(の一部分)」が通用する。
Emacs には果敢に機能を拡張していこうという文化があり(もちろん Vim も日々機能拡張されているが Emacs の勢いには及ばない)、使いはじめると同時に無限に連なる繁華街の入り口に立ったような錯覚すら覚える。
まとめ
まとめると、シンプルかつストイックに文書と向き合いたい人には Vim 、いろいろいじくりまわして遊びながら日々楽しくエディタライフを送りたい人には Emacs といったところだろうか。
上に紹介した書籍の内容にも一応触れておくと、一言で言えばどちらの本も「鉄板」である。
まずは読んで欲しい入門書であると同時に、必要なことが十分詳しく網羅的に載っている。
#Unix Linux Books