Emacsは昭和のかほり

確かに初心者向きには良いまとめ

Emacs 初心者のための最低限のコマンド表

まぁ、これくらい知っておけば、通常のことは出来る。チートシートってうっかりするともりだくさんな内容になってしまうけど、これくらいの分量に絞ってあればすぐに覚えられるだろう。

ってのは良いんだけど、もう何度も何度も言ってるんだが、そろそろEmacsを使うのやめようよ。そう言ってる私は、たった昨夜NetBeansを入れた。

Emacsはそろそろ撲滅すべきと思っている。理由はリンク先に書いている。そんなことを言いつつプログラム書くのには便利過ぎるから、つい使い続けていた。でも、ちょうど指導先のお客さんがNetBeansを使うようになったんで、「俺が知らないわけには行かないしな」と思ってNetBeansを入れたわけだ。

sidのパッケージにあるNetBeans(6.0)がもう絶望的に重たくて閉口していたんだけど、サイトから6.8を落として来て何とかなった。理由はわからんけど、今のところ

結果オーライ

ってことにしておく。

同じことは、前にEclipseでやろうとしたんだけど、「Emacsキーバインド」があまりにEmacsとかけ離れていたんで、諦めた。NetBeansは今のところ、自分が納得出来る程度にはemacs化出来る。まぁ、Eclipseを試したのは昔のことなんで、今のバージョンがどうかは知らないけど。

私がここまで踏み切ったのは、前々から言っていたこともあるし、顧客が使うってこともあったのだけど、決断しようとした時に部下と

Emacsって20世紀どころか昭和の香りだよね

って話をしたことだった。Gnu Emacsはもう20年以上使ってるんだよね。

「昭和の香り」の根拠は、.emacsだ。今使っていて、有効になっている.emacsの設定は、obsoleteになったモジュールと新しいモジュールの非互換に対応した部分(たとえばc-modeとcc-modeの設定の違い)を除けば、「昭和」に設定したままだということだ。「昭和」という言い方が悪ければ、自分がEmacsを使い始めた頃と言ってもいい。その頃からまるっきり成長してない。

バージョンで言えば17と18の間、NEmacsが出た頃、1988年かその辺だ。実は最初に使ったemacsはGnu EmacsではなくGosling Emacsですらなく、Gould Common Lisp上のemacsだから、emacsとの出会いはもうちょっと前。ちなみに、昭和は1989年に終わっている。時代としては、SunがMC68系CPUからSPARCになろうとしていた頃。Xが10から11になろうとしていた頃。昭和天皇はまだお元気だった頃だ。

もちろん、MUAとしてwlを主に使っていた時代もある(今も時々使う)、mewも使っていた。IRCクライアントも何種類か試している。でも、それらは今は設定が無効になっているか、残っていても使ってない。つまり、私がEmacsを使い始めた当時のEmacsでも十分だということでもある。動作マシンのメモリ実装量が4桁以上違うというのに、その頃のままだということだ。

もちろん、「カスタマイズは初期にしかしない」という原理があるのはわかる。また、プログラマという仕事は実はそれ程変化があるものでないというのもある。でも、事実上20年以上前の設定したままのプログラミングツールを、特に何も不自由もしないで今も使っているという、そういった事実に愕然とする。メモリの実装量は何桁も増え、プログラム言語も多様化し、プログラムの実行環境も大きく変化していて、エディタがまるっきり変化してない。確かに「そんなもんだ」とも言えるが、おかしいっちゃーおかしい。いや、おかしいと思うべきだろう。

「GUIなIDEなんて、女子供の使うもの。本物のプログラマが使うべきじゃない」という主張も、それなりに説得力がある。実際、そんなに困ったこともないし、とても便利に使って来た。でも、世の中がこれだけ変化して来たんだから、プログラマがツールを変えてもいいだろ。Emacsのもう一方の創造主であるGoslingも、

Emacsは忘れた方がいい

と言ってるのだ。って、この発言自体既に2年前だぞ。

キーバインドは手についてしまったものだ、だから「emacsキーバインド」に拘ることはまぁいい。でも、そろそろツールとしてのEmacsには見切りをつけてもいい頃じゃないか?

PS.

Apacheは昭和じゃないと思うぞ > ブコメ

でも、1.3はメンテ終了らしいから、早めに2.2に移る努力はした方がいい。確かに「慣れたもの」ってのは楽で良いと思うんだが、思考停止ならぬ

進歩停止

を招きやすから、多少無理やりでも新しいものを使う努力をした方がいい。特にロートルエンジニアどもはそれを思うべき。

ついでだからApacheについて書いておくと、私はApacheは既に過去のものとしようとしている。これも長年使って慣れているけれど、Emacs同様に無駄に高機能だ。うちでApache使っているのは、利用者が互換性を期待している場合(.htaccessが使いたい人がいる)と、ロードバランス用だ。もはや、自分がいじってどうにか出来る範囲では、Apacheという名のウェブサーバは動かしてない。

PS2.

書き忘れていたつーか、結局どーでもいいことになってるんだけど、今のところIDEが素晴しいとか微塵も思ってないし、そんなことは↑には書いてない。てか、

この程度ならEmacsのマクロ作ってもいいよね

程度の恩恵しか受けてない。つーか、私がNetBeansでやっている程度のことなら、多分Emacsの方がマシなことが出来るだろう。少なくともそっちの方が今の私には楽だろう。だいたい、一々マウスなんてトロくせーもん使えるかよwww

とか本音で思いつつも、それでも「Emacsを捨ててもっと現代的なものに移れ」と言っているし、自分もそうしようとしている。

Emacsは昭和のかほり” への6件のコメント

  1. 本当に Emacs は時代遅れで
    いつまでたっても遅いですし
    今だに妙に持ち上げられたりすることも
    気持ち悪かったりしますしw
    何度もやめようかと思っているのですが
    なかなか抜けられないんですよね。
    麻薬みたいなもので、わざわざ新しく
    覚える必要はまったく無いというか
    新人なんかに教えるのは、もう害悪以外の
    なにものでもないような気がしてます(^^;
    でも、抜けられないんですよねぇ。。。orz

  2. そー、でもなかなか抜けられない。

    私の場合は↑のような「外圧」を利用しましたが、そーゆーのでもなければ、なかなか出来ないことです。

  3. こんな話あったのか。

    プログラミングのために、IDE 覚える方がベターなのは、間違いなくそうだと思うし、メールを読むのにEmacs使うのは時代錯誤だと思う。その方が便利なこともあるんだけど、殆ど無いしね(その点では3年ぐらい前にEmacsでメール読むのやめた)

    俺の.emacsも、かなり古い漬け物状態だし(笑)

    ただ、たぶん、なんでもやろうとしたらダメだと思うが、
    汎用的なテキストエディティングには、なんかが必要で、
    その向きには覚えておいて悪くはないとは思うけどなぁ。
    vim でもいいけど。
    どこでも動くし。
    ただ、ヘビーにカスタマイズしたら、終了だ。

    pico/nano ですむ範囲だったら、まぁ、いらんけどね(笑)

  4. おごちゃんと同時期には Emacs 信者でしたが、
    ワークステーションやダム端末の時代も終わり、仕事は全て Windows 上で処理しなければどうにもならなくなった頃に
    Eclipse が登場したのでそれ以来 Eclipse 使ってます。
    Eclipse に拡張入れてなんでもかんでもやらせるのは、
    なんだかデジャビュを感じます。

    シェル上でちょっとしたファイルをいじるだけなら vi を
    使いますけどね。

    キーバインドの慣れだけはどーにもならないなぁ。

  5. まぁそんなわけで、普通の原稿書きには、Emacs活躍中ですけどね。Wordとかって気にはならないし。

  6. 5年ぐらい前から、多台数のサーバのメンテをするようになってから vim を使うようになっていました。

    最近久しぶりにEmacsをまた使ってみようかと思ったのですが、インストールして .emacs まわりを再度書いていたところで、「この秀丸でできる機能を実現するの面倒くさい!」とか思うところが多々あり、結局は Emacs に帰ることなく終了、でした。

    Emacs のいいところと言えば、Emacs-Lisp で自作プログラムもガリガリ作れてエディタに統合できる、ターミナルで動くのでsshリモートアクセスでも使える、ってところがよいところだとは思っていました。 しかし、エディタで必要な機能に関しては vim のマクロ機能で十分、というかマクロを作らなくても対応可能、ってのがここ4年ぐらいの状態でした。
    また、最近ではVNCやNXなどを使って、リモートで動かしているWindowシステムをネットワーク経由で操作するに必要十分なソフトウェアやネットワークがあるので、リモートマシンでEclipseを使ってもなんとかなる、って状況でした。

    私の場合、EmacsとEclipseの比較になり恐縮ですが、あの入力の面倒なJavaの関数名を入力するのに便利な機能や自動ビルド機能などがあることを考えると、Eclipseが快適に動いてくれれば十分かな、と思うところあります。 動作速度で比較すると、PCの性能がEmacsがサクサク動くぐらいになったので、動作の軽快さではEmacsになりますが。

    あまり誰も、まじめにEmacsは過去のもの!と言ってくれなかったところに生越さんの発言なので、おぉ!と思っております。

コメントは受け付けていません。