読者です 読者をやめる 読者になる 読者になる

megamouthの葬列

長い旅路の終わり

Emacsという沼

プログラマのための練習曲

最近、マイスリー睡眠導入剤)の影響なのか決まって悪夢を見る。

今日の悪夢は格別で、年下のエンジニア達が口々にEmacsをDisってきて、私はムキになってEmacsではこれが出来る、あれが出来ると主張するのだが、それら全てがSublimeTextで出来ると言い返されてしまい。最後には昔の上司が、いつまでもそんなレガシーエディタを使うべきではない、と私を諌めるのである。

目が覚めて気づいて、わりとゾッとしてしまったのが、どうも私はEmacsを使ってることにそれなりの優越感とアイデンティティを感じているらしい、という事だった。

一応弁解しておくと、私は新人にEmacsを勧めたりはしないし、口では「今さらEmacsを使うメリットはほとんどないよ」と言っている。例えばWindowsEmacsNTEmacsやGnuPack版Emacs)などを使用することは真性のドMでもない限り、本当にお勧めしないし、ディフォルトのEmacsがただの変なキーバインドのクソエディタであることは紛れもない事実である、と考える程度には常識人である。

問題は、私のEmacsは10年近い秘伝のタレを.emacs.d内に溜め込んでおり、それらがもはや、エンジニアとしての自分の一部としてしまっていることだ。

さぞかし、私の.emacs.dは高い生産性を誇るすごいコンフィグなのでしょうなあ、というところなのだが、実際には、動作スピードの兼ね合いでautocompleteは切ってあるし、日本語変換(mozc)は時々おそろしいほど重くなるし、PHPデバッグ実行(xdebug+geben)もまともに使ったことがないし、何か新しいモジュールをいれてコンフィグをいじる度に、どこかがおかしくなる(例えばいつのまにかflycheckが効かなくなってることに3ヶ月ぐらい気づかなかったりする)ような体たらくである。

実際、私はある仕事の追い込みでPHPStormの試用版を使ったことがあるのだが、キーバインドEmacs風にする以外のコンフィグはしなかったにも関わらず、全く困ることがなかったし、むしろEmacsでバッファを行き来するより遥かに快適であった。

それでも私が他のエディタに乗り換えないのは、単にPHPStormが高いということだったり、SublimeTextがsshリモート編集プラグインですら有料である(少なくとも当時)ことにブチ切れた結果ということになっているのだが、実のところ、長年の月日で鍛え上げたEmacsを自分の一部だと感じてしまっていて、ある種の生産性を最初から内包している他のエディタを「底の浅い」エディタとして軽蔑しているところにある。

Vim使いのことは(宗教上の理由で私は不干渉なので)知らないが、Emacs使いは多かれ少なかれ、同じような傾向にあると、私は勝手に思っているのだが、どうだろうか?(昔の言葉で言うと「奥が深い症候群」というところだ)

Emacsには不可能がない。他のエディタで出来ることは調べれば全て出来る事に「なっている」。だが、実のところそれは導入時のコンフィグ破壊とのトレードオフだったり、実際には速度や諸々の問題でまともに使えないことも多々ある。それでも、私は、時にはEmacslispそのものをいじったり(最近はdef-adviceなどでモンキーパッチしたり)して、何とか使ってしまうのだが、エディタという絶対的な安定性が求められる仕事道具が常にデバッグ中であるというのは、実際どうなのか、と思わないでもない。

Emacsには不可能がない、故にEmacsの問題は解決しない

私達は、Emacsという自我の拡大を誇るべきではなく、むしろ恥じて、AtomTeraPad秀丸エディタを使う人々の間をコソコソと生きるべきなのではないか、寝起きの私はそうしようと考えているのだった。