プログラマにとってのテキストエディタとは、料理人にとっての包丁のようなもので、究極の仕事道具です。まず手に馴染んだエディタを使える環境がないと仕事にならない。
で、拙者愛用テキストエディタの歴史を振り返ってみる...
中高生あたりの頃、MS-BASICの世界を卒業して生まれて始めてのエディタはX68000のED.x。その後SuperEDそしてμEmacsと乗り換えてきました。その後Muleを使っていた記憶があるが、X68だっけ?FreeBSDかな?。学生時代~社会人1年生あたりで一瞬MS-DOSを使った頃はVz。Windowsになってからの十数年は、秀丸 → Dana → xyzzy → EmEditorと使ってきました。(他にも散々色々試したけど)最終的にはEmEditorの時代が長い。EmEditorは何の不満もなく本当に素晴らしいWindows用エディタということで個人的には完結なんですが。
...なぜ今、Emacsか?
今の時代にEmacsのUIが「古い」と感じるのは当たり前だと思うし、WindowsのGUIともあまりにもミスマッチ。社会人皆Wordとかも使わなければいけない現代においてはWindowsのユーザインタフェースガイドラインに準拠したアプリケーションに統一しておいたほうが幸せなのは明らか。この記事を書いてるのだってWindws Live Writer。Ctrl+Cはクリップボードコピーだし、Ctrl+Zはアンドゥ。Ctrl+Sで保存ですよ。どんなアプリも同じ操作性でハッピー。もはやEmacsのキーバインドはただの変態のように思え、記憶から消した。
でも少し考えが変わった。きっかけはMacを買ったこと。慣れないMacを使ってみて、UNIX環境に魅力を感じる一方、GUIのキー操作がWindowsと違う上に、いくつか試してみたフリーのエディタがしっくりこない。これでは全く仕事にならない。
で、思った。包丁一本でどこへ行っても勝負できるようにならねば。コンソールと.emacsさえあればどんなプラットフォームでも同じ開発環境を得られるのはEmacsしかない。プログラマはWindowsに依存するよりもEmacsに依存したほうが長生きできるのではないか。
でも久しぶりに使ったらC-x C-sくらいしか覚えてなくてびっくりしたよ。
キーバインドはなかなか思い出せなかったが、すぐに思い出したのはあの頃の感覚。ツールを俺仕様の最強に使いやすくなるまでカスタマイズし尽くすことに全力だったあの頃。いつの間にかメーカーが推奨する「使いやすいユーザインタフェースガイドライン」を押し付けられてそのまま使うのが当たり前になっていた。でも、複数プラットフォームを渡り歩くことになるとUIガイドラインは意味をなしません。だったら普遍的な「Emacsの世界」があってもいいよね。
ということでEmacs。しばらく使ってみます。