なぜEmacsなのか?

世の中にエディタは数多くあるのに、なぜあえてEmacsなのか? しかも、よりによってすでに「時代遅れ」と言われること多(いらし)く、これを使っているだけでおっさん扱い(実際年齢的には十分おっさんですが)されるエディタを、なぜ初心者である僕が選んだのか?

これに関しては、いくつか理由があります。まず僕はEmacsでプログラミングはしません(というか、できません。今後も勉強することはないと思います)。それゆえに、世の中で勃発している(らしい)、Emacs vs Vimのようなエディタの「宗教論争」はまったくもって対岸の火事であり、自分には関係ありません。こうした宗教論争の根本には、これらのエディタをプログラミングのツールだとみなす考えが存在していると思います。僕がやりたいのは、日本語と英語の入力と編集だけなので、プログラミングのツールとしての使いやすさという視点が完全に欠如しています。Emacs、Vim、Atom、Sublime Textなどのエディタのどれが一番いいか、あるいは使いやすいか、ということに関する意見の大半(ほぼすべてと言ってもいいかもしれません)は、プログラマの方々のものなので、僕とは視点が全く異なっているのです。

起動して(Emacsの起動が他のエディタと比較して遅いとかというのはひとまずおいといて)すぐに文字入力ができる、そのまま編集ができるということが重要なので、Vimのように「モード」というものがあるというだけで、混乱し使う気が萎えてしまいます。画面に文字を打ち込み編集する、ということが単純にできるかどうかという基準からすれば、個人的にVimを選ぶことはないと思います。同じ文字入力をするにしても、プログラミング言語を打ち込むのと、論文やメモなどの自然言語を打ち込み推敲、編集するのとでは、全く姿勢が異なっているわけです。

Vim使いの方々は、Emacsにおける、Controlキーを起点とするキーバインドが複雑で、しかも打鍵数が多いのが非効率的だという意見をもっているとのことですが、これはこれらのエディタのコンセプトの違いが大きく影響しているのではないかと思っています。たとえば、カーソル移動のキーは、Vimの場合h→左、j→下、k→上、l→右となっていますが、これは、キーボード上におけるキーの絶対的な位置関係が基本になっていると言えます。キーボード上の右手のホームポジションにある4つの横並びのキーにそれぞれの移動のコマンドを割り当てており、大雑把な言い方かもしれませんが、ある意味「構造的」(structural?formalistic?)な発想だと言えるかもしれません。それぞれのキーが、その操作を割り当てられる意味的な必然性がないようです(他のキーバインドにはあるようですが)。それに対してEmacsは、Controlキーとf(右)、n(下)、p(上)、b(左)の組み合わせでカーソルを移動させますが、fは”f”orward「前」、nはdow”n”、pはu”p”、bは”b”ackwardというように、「意味」によってキーの割り当てが行われています。つまり「意味論的」(semantic)な発想だと言えるでしょう。なぜそのキーが割り当てられているのか、意味がある程度付与されていることが多いので(全部ではありませんが)、実は複雑であるように見えながら、覚えやすいと言えます。もっとも、こういう操作は、身体が覚えるもので、慣れてしまえばその違いはほとんど気にならないのでしょうが。

Macユーザーである僕にとっては、macOSにおける基本的なカーソル操作が、ほぼEmacsのキーバインドで可能であるということも重要です。(Microsoft Word以外の)ワープロソフトやだいたいのエディタでは、上記のEmacsのカーソル移動のキーバインドがそのまま使えます(どうしてもWordを使わなければならないこともあるので、WordのデフォルトのキーバインドもEmacs型に変更しています)。ブラウザの画面の上下スクロールの時も、僕は、マウスに手を伸ばしたり矢印キーに手を動かすのが嫌なので、Control-n/pで操作しています。ある種のアプリを使えば、VimのキーバインドでOSの操作をすることもできるようです。

EmacsとVimのいいとこどりと言われるSpacemacsもダウンロードして使おうとしてみましたが、30分で使うのを断念しました。Spacemacsのアピアランスは、デフォルトではダサすぎで垢抜けてないEmacsよりも断然かっこよく、helmなどの、誰もがEmacsで使う定番パッケージが最初からインストールされているというお手軽さがありますが、そもそも自分には、Vimのキーバインドにする必要がないので、結局SpacemacsのキーバインドをEmacsに戻すという、その存在意義を根本から否定する暴挙に(まあSpacemacsを最初に起動した時にVimかEmacsのどちらのキーバインドにするか選択できるのですが)。また、Emacsのinit.elの内容をコピペでそのままSpacemacsに引き継ぐことができないのもめんどくさかったです。見た目をクールにするならば、無数にあるテーマから好みのものを選べばいいですし、さらにM-x-customizeを使えば、細かなレベルで自分好みにチューニングすることもできます。

このブログの基本コンセプトである、「人文系研究者がEmacsと格闘する」というのは、言い換えるならば「プログラムをしない人間が文書(論文)作成のツールとしてEmacsを使う」ということです。これを大前提として、以後記事を書いていくことになります。

コメント