ichiroc subset

書きながら考える・考えをまとめる場所

解決 init-loader が cocoa-emacs のファイルを読み込まない

init-loader が cocoa-emacs のファイルを読み込まない - ichiroc subset の件を解決しました。

### 原因・解決策

同じ名前の init ファイル名があるとダメみたい。
init-loader-load を複数回行っている場合、読み込ませる init ファイル全てのファイル名は、全体で一意になる必要がある。

### 補足

#### 自分の環境

init-dirs

- ~/.emacs.d/inits
  普通に読み込ませたいinitファイル群を配置
- ~/.emacs.d/pre
  inits よりも先に読み込ませたいファイル群を配置
- ~/.emacs.d/after
  inits よりも後に読み込ませたいファイル群を配置

pre に対して after なの?という話はともかく。

#### 経緯

Mac 固有, Win 固有の設定は通常の inits ファイル郡よりも先に読み込ませたい要件がありました。
最初、設定ファイルをinits ディレクトリに放り込みました。
すると、他の inits の中のファイル群と、cococa-emacswindows ファイルと順番を制御出来ないようでした。

そこで先に読み込みたいファイルと、後に読み込みたいファイルを、それぞれ pre , after に配置しました。
そして下記のようにして、意図的に順番を制御するようにしました。

```lisp
(init-loader-load (concat init-loader-directory "/pre"))
(init-loader-load)
(init-loader-load (concat init-loader-directory "/after"))
```
#### 不具合

しかし、なぜか after の方だけを読み込み、preを読み込まない状態になりました。
下記のようなログです。
```
loaded /Users/ichiro/.emacs.d/inits/pre/00_private.elc. 0.029175
loaded /Users/ichiro/.emacs.d/inits/after/cocoa-emacs-settings.elc. 0.617021
loaded /Users/ichiro/.emacs.d/inits/00_general.elc. 2.731725
.......
loaded /Users/ichiro/.emacs.d/inits/after/cocoa-emacs-settings.elc. 0.018373

```

メインは職場の Windows 機だったりして、しばらく気が付きませんでした。
起動後、```(init-loader-load (concat init-loader-directory "/pre")) ``` だけしてもダメなので、?状態でした。

#### 原因

試行錯誤の結果、ファイル名が inits ファイル全体で一意でないとダメだったようです。多分。
cocoa-emacs-settings.el はそれぞれ pre と after にあったので、pre の方を cocoa-emacs-settings-pre.el としたら読み込まれました。
以前は正常だったのは、どこかで自分が init ファイルの整理でも行ったのでしょう。

#### 謝辞
ヘルプの手を差し伸べてくれた id:syohex さん、ありがとうございました。
これからも便利に使わせていただきます。