読者です 読者をやめる 読者になる 読者になる

dorapon2000’s diary

忘備録的な。CTFやってます。

新しい環境に1からemacsの設定を入れる

emacsの設定をgithubにあげておけば、新しい環境でemacsの設定を反映させたい時、未来の自分がなんとかしてくれるだろう。 と後回しにしていたら、案の定大変だったので、さらなる未来の自分のためにやり方を残しておきます。


前提

設定

まずgithubからcloneします。

$ git clone https://github.com/dorapon2000/my-emacs.git .emacs.d

ファイル構成は以下のとおり。

.emacs.d
|__ elpa #package.elで入れたパッケージが入ってる
|__ elisp #それ以外のパッケージが入ってる
|__ inits #inits.elによって読み込まれる設定ファイル
    |__ 00-basic.el
    |__ 10-xxx.el ... 
|__ inits.el #emacsが起動した時に最初に読み込まれる設定ファイル
|__ setup.el #新しい環境でパッケージをインストールするためのファイル
|__ byte-compile.el #バイトコンパイル

設定ファイルはinits以下に入ってるため、必要なパッケージをダウンロードしておく必要があります。 一つ一つ手動では大変なので、setup.elが現在入っていないパッケージを自動でダウンロードします。(入れたいパッケージはあらかじめsetup.elに記述の必要あり)
setup.elはEmacs起動時に自分好みのelispを自動的にインストールする - hnwの日記さんのものをそのまま流用しています

$ emacs --script setup.el

高速化のために設定ファイルをバイコンパイルします。

$ emacs --script byte-compile.el

ちなみに、bytecomp.elという名前はemacsのビルドインライブラリで使われており、自分が書いたファイルには付けない方がいいです。*1

これで新しい環境に今までどおりのemacs環境を構築できます。

実際はバイコンパイルのところで今までログだと思っていたメッセージが実はエラーメッセージだということに気づき、現在格闘中。

追記
様々な理由でエラーメッセージがありましたが、なんとか対応できました。 エラーの原因について次の記事で書きます。

参考文献