viからeclipseに戻れない10の理由

Eclipseからテキストエディタに戻れない10の理由を読んで思ったこと。
eclipseは便利だと言われるけど、僕にはとても不便に感じられる。1年ぐらい前にeclipseをやめてviを使うようになった。未だ、eclipseには戻れないけど、以下がその理由。

1.軽い

とにかく軽い。eclipseであれば構文解析等の処理が裏で行われるためどうしても重くなる。

2.UNIXコマンドを実行できる

grep、find、awksedなど、UNIXのコマンドはなんでもvi内部から起動できる。もちろん、UNIX環境にcvssvnがあれば、バージョン管理ツールも使用できる。

3.ファイルの一部分だけの保存等が可能

viで編集中のファイル一部分だけをUNIXファイルシステムに保存したり、読み込んだりすることができる。この機能を使えばメソッドの移動のようなリファクタリングも簡単に行える。

4.キーボードがら手を離す必要がない

すべての操作はキーによるコマンド入力なので、基本的にキーボードから手を離す必要がない。eclipseに限った話ではないが、GUIの操作においてキーボードとマウスを行ったりするのは無駄な動作で、すごくストレスがたまる。

5.自分の思ったことがすぐに表現できる

たとえば、検索をする場合、eclipseでは検索ダイアログを出し、条件を入力し、マウスでチェックボックスをクリックして、検索ボタンを押す、というような煩わしい手順を踏まなければならない。viであればキー操作だけで一発。
また、eclipseならできないようなイレギュラーな操作も、viであればUNIXコマンドの組み合わせ等により即座に表現できる。

6.UNIXさえあればまず使える

viはどのようなUNIX環境でもまずインストールされている。だから、いつでも使える。

7.特定の言語による縛りがない

新しい言語が現れた場合、eclipse構文解析等の恩恵を受けるにはプラグインが開発されるまでまたなければならない。その点、viであれば新しい言語の文法を覚えれば、すぐに使えるようになる。

8.よく使うキー操作ははキーボードマクロで繰り返せる

繰り返しの必要なキー操作が必要ならキーボードを作成すればよい。マウスでは記録できないようなつまらない単純作業も、キー操作のマクロで機械化できればその手間はなくなり、いくらでも繰り返せるようになる。

9.よく使うコマンド操作はシェルスクリプトで繰り返せる

繰り返しの必要なコマンド操作が必要ならシェルスクリプトを作成すればよい。ダイアログ操作では記録できないような複雑な作業も、シェルスクリプトで機械化できればその手間はなくなり、いくらでも繰り返せるようになる。

10.長年使われている信頼性

viは1976年からずっと使われている。eclipseオープンソース化は2001年。viの方が+25年分の信頼性を持っている。

viでは前提なんて自分で作れる

eclipseでは人の作ってくれるプラグインがなければできることにすごく違いが出る気がする。たとえば、7のような状況。プラグインが開発されるまで待つか、自分でプラグイン作るかということになる。でも、ちょっとためしたいのにeclipseプラグイン開発ってあまりにも大袈裟。やりたくない。でも、vi&UNIX環境ならちょこっとスクリプト書けばいい。viであれば、人の作るプラグインがなくても、前提は自分で簡単に変えられる。
こうした自分で前提を作れるという万能感はモチベーションを劇的に上げる。ごきげんに開発をできるのだからやめられない。