emacsの設定ファイル.emacsを複数の環境(異なるPC、OS)で統一する方法
今までemacsの設定ファイル(.emacs)がOS等の違いで記述が異なる箇所があった。
そのため異なる部分は別にして共通部分のみ共有してきた。
色々調べて、全て共有することができるようになったのでメモっておく。
emacs lispではOS情報は[system-type]という変数に格納されている。
Linuxではgnu/linux、Macではdarwin、BSDではgnu/kfreebsd、windowsではwindows-ntとなるようだ。
また、現在のホスト名も[system-name]という変数に格納されている。
つまり、Linuxのuser1という環境でのみ用いる設定は
(when (and (eq system-type 'gnu/linux) (equal system-name "user1")) (setq ...) )
と書いたり、Macでのみ用いたい設定には
(when (eq system-type 'darwin) (setq ...) )
と書けばよい。
これで全ての設定ファイルが共有できる。