1. ホーム
  2. emacs

[解決済み] .emacs.dディレクトリにあるものをすべてバイトコンパイルするには?

2022-05-13 04:46:25

質問

Emacsを試してみて、とても気に入りました。現在、私は Emacsスターターキット を使っていますが、これはデフォルトのEmacsに対して、より良いデフォルトといくつかの素晴らしいカスタマイズを提供するものです。

私はそれを少しカスタマイズして、以下のようなものを追加しました。 yasnippet , カラーテーマ , バインド解除 などを 設定したのは githubリポジトリ を立ち上げ、複数の場所からアクセスできるようにしています。また、何か悪いことが起きて.emacs.dディレクトリを失った場合にも備えています。

Emacsのロードに1~2秒かかるという問題があります。M-x byte-compile-file を使って個々の .el ファイルを .elc にコンパイルすることはできますし、それはうまくいきます。しかし、.elファイルがたくさんあるので、簡単なコマンドか何かで全部コンパイルして、Emacsの読み込みを速くする方法はないでしょうか。私のEmacsは常に開いているわけではなく、特に早く慣れるためにTotal Commanderで編集コマンドのデフォルトエディタとして設定した後は、かなり頻繁に開いたり閉じたりしています(ええ、ここはWindows xpです)。

私の Emacs のバージョンは 22.3 です。そして、はい、カスタマイズなしのデフォルトの Emacs インストールは、即座に起動します。

ところで、ロード時に .el とコンパイルされた .elc のどちらのバージョンを優先するかはわかりません O.o.

ということは、.emacs.d ディレクトリにあるものをすべてバイトコンパイルさせるための elisp コマンドや Emacs コマンドラインスイッチはあるのでしょうか?

どうすればいいのでしょうか?

C-u 0 M-x byte-recompile-directory

は、ディレクトリとその下にある全てのサブディレクトリにある全ての .el ファイルをコンパイルします。

C-u 0 の部分は、対応する .elc がないすべての .el ファイルについて尋ねないようにするためのものです。