前回は、Emacs の環境別に書き分ける方法を紹介したのですが、 どようびさんのコメントにあるように環境別にガチガチに書いてしまうと流用できなくて不便です。 で、環境によっては未導入な Elisp とかがあるわけですが、通常は .emacs 読み込み時に存在しない Elisp を require しようとすると、エラーを吐いて以後の読み込みを中断します。 これはこれで設定の正しさを確認できますが、違う環境でとりあえず使いたい場合にはちょっと面倒です。 そこで、存在しないものは、その関連する設定ごと無視してくれて、存在する Elisp は関連する設定も正しく読み込んでくれるような形が望ましいです。 when による分岐と require の第三引数を使う。 Emacs のバージョンいくつからかは知りませんが、require 関数には、オプションで第三引数 noerror を受けつけてくれます