2019/03/08

Emacsの初期化ファイルとinit-loader.el

Emacsの環境を初期設定するファイルは、僕がEmacsを使い始めた頃は.emacsでしたが、現在は.emacs.d/init.elが使われる傾向にあるようです。過去との互換性のために以前のものでも構わないようですが、今風のファイルに移行していくようにした方が望ましいのかもしれません。

昔はNEmacsだとか、Muleとか、派生したバージョンを使うこともありましたが、今となっては本家のGNU emacsしか利用しなくなっています。ただしOSや文字コードなどの扱いには、個々の環境に合わせる必要があります。今となっては使わなくなった設定を整理し、今後のことも考えて、使いやすくしておこうと考えています。

どんなOSでEmacsを使っているかと思うと、結局は次のような環境だけでした。
  1. FreeBSD
  2. NetBSD
  3. Windows10 WSL上のUbuntu
  4. (VirtualBox上のCentOSなど)
古いEmacsのことは想定せず、最新か最新に近いEmacsで使えれば良いと思っています。ただしOSや環境に依存して、利用するアプリケーションの有無が違う可能性があるので、それに対処しておきたいとは思っています。つまり入っていないアプリケーションの設定があるが故にinit.elが止まってしまうのは困るということです。

Webを検索すれば、Emacsでinit.elを構成する話題が数多く見つかりますが、そこで言及されるものとしてinit-loader.elがあります。OSの/etc/init.dで見かけるファイル群のように、機能ごとに初期設定ファイルを分割し、ファイル名の先頭に番号を付加することで順番を制御しようとするようです。支持する人がいる反面、必要性に疑問を呈する立場も見受けられます。

いったいどのようなものか調べてみて、僕としては次のような感想を持ちました。
  1. 機能ごとに初期設定ファイルを分割するというのは悪くないと思う。
  2. 実行順序を制御するため、ファイル名に番号を付加することにも抵抗はない。
  3. 亜流が多くて、どれを使えば良いのかわからない状態なのは困る。
  4. Emacsのパッケージ制御でインストールできるようだが、標準的なパッケージのリポジトリには入っておらず、追加的なリポジトリを設定しておく必要があるのは、ちょっと困る。
  5. 環境依存の制御もできるらしいが、Mac、LinuxやWindowsの対応しかなく、BSD系OSが含まれていないのは、不満を感じる。
このように良し悪し拮抗しています。あえて使うほどのこともなさそうですが、あればあったで便利そうではあるので、ものは試し(これも経験だと思って)使ってみようかと思います。

0 件のコメント:

コメントを投稿