同じマシンで複数の Emacs を使い分ける場合... 普通はあまりないかもしれません。しかし、本サイトで扱っている範囲でも、 Mac OS X 上で、プリインストールのターミナル用 Emacs 21 に加え、独自に Emacs 21 をビルドした場合、2 つの Emacs が存在することになります。 しかも、この 2 つは、設定を使い分ける必要が生じます。 このような場合に、用意した設定ファイルを読みわける方法を説明します。
実は案外簡単で、2 つの Emacs のバージョンが異なればそれを利用して、 それぞれの設定ファイルの読みわけが可能です。
起動時に読み込まれるファイルは .emacs ですので、ここに読みわけの記述を おこないます。読みわけが必要な箇所に以下のように記述します。
上記のように記述すると、Emacs 21.2.1 を使用した場合は .emacs_21_2_1.el がロードされ、そうでない場合は .emacs_def.el がロードされます。 なお、ここではユーザのホームディレクトリを /home/foo と仮定しています。 .emacs ファイル内をこの記述のみにして、完全に Emacs のバージョンごとに設定ファイルを使い分けることも可能なわけです。
少し解説すると、この記述では (emacs-version) を評価することにより 得られるバージョン文字列と指定したバージョンを比較し、一致した場合は、 load 以下に続くファイルを読み込ませています。 最後の t は条件が true、すなわちそれまでに該当しなかったバージョンの Emacs を使用した場合に当てはまります。
Emacs のバージョンを知りたい場合は、Emacs を起動時にはじめに表示される *scratch* バッファで (emacs-version) と入力して、C-j をタイプします。 C-j により、Lisp 式が評価されます。
Mac OS X 10.3 の場合であれば、プリインストールのターミナル用 Emacs 21 のバージョンが 21.2.1 なので、この場合とそれ以外の場合で分類するのが 良いでしょう。このケースは、Emacs 21.2.1 用の設定ファイルを完全に分けたほうが 良いと思います。ウインドウの設定を共有したりすると、 Mac OS X プリインストール Emacs 21 にあるキャプチャのように、カーソルの色がバックグラウンドとかぶって 見えなくなったりと、余計なことに副作用が現れたりしますので。