el-getのinfoディレクトリ先を確認する

el-get導入に伴って、infoディレクトリ先を指定したい。デフォルトはどこなのか?カスタマイズ出来る変数はあるのかを確認したい。

読んだソースは4fe798dbのコミット分。

el-get-installの定義から順を追ってみたけど挫折したので、ソースからinfoっぽい文字列を探す。

    M-x moccur-grep-find
    \binfo\b .*el$

で検索すると、早速それっぽいの発見。

el-get-install-or-init-info

el-get-build.el内に定義されている。

ここをななめ読みするとどこかの .info っていうディレクトリに入れられるっぽい。斜め読みしていると後から困りそうなのでもう少し読む。 .info に入るって思った根拠はここ。

    (list (list el-get-install-info
                (if (string= (substring infofile -5) ".info")
                    infofile
                  (concat infofile ".info"))
                "dir"))

infofile を設定している元を追う。

  • infofile は let* 内。
    (infofile (if (and (file-exists-p infodir-abs-conf)
                       (not (file-directory-p infodir-abs-conf)))
                  infodir-abs-conf
                (concat infodir-abs pname))))

いろいろしているけど、 infodir-abs-conf を元に設定される。

  • infodir-abs-conf は pdir と infodir を結合したもの。
    (let* ((infodir-abs-conf (concat pdir infodir))
  • pdir は el-get-package-directory から取得している。
    (pdir     (el-get-package-directory package)))

el-get-package-directory

el-get-core.el内に定義されている。

パッケージ名と el-get-dir を結合したものを返す。

el-get-dir

el-get.el内に定義されている。

デフォルトは ~/.emacs.d/el-get/ 実際にel-getがパッケージをインストールする場所。

結論

el-getでインストールされるinfoは各elispがインストールされるパッケージディレクトリ配下の .info ディレクトリ配下に出来上がる。変数によるカスタマイズは出来ない。 でも、el-getでパッケージのバージョンごとのinfoの管理まで出来ることになるので、あまり問題はないでしょう。

Emacs Lispのシンタックスハイライト出来ないんですね。。。