自分でインストールした Org-mode の Info を見たい
Emacs に付いてくる Org-mode は古いので、自分で最新のものをダウンロードしてきて使うことにした。make info-install
して、さて Info を読もうと思って M-x org-info
したら、しれっと古い方が表示された。M-x info
で出てくる Info ファイルのもくじにある Org-mode の項も、古い方。
それまでの Info の設定と環境
自分でインストールした elisp の Info は ~/.emacs.d/info
に入れ、init.el
に
(add-to-list 'Info-additional-directory-list "~/.emacs.d/info")
と書いて、Info から見られるようにしている。
他には DDSKK の Info がここに入っていて、M-x info
で表示される Info のもくじに表示されている。
Emacs 23.3.1とOrg-mode 7.7。
問題
Info-additional-directory-list
は優先順位が高くない。なので、Info のもくじやM-x org-info
では新しい org-mode の Info ファイルが認識されない。
Emacs での Info ファイルのパスの変数について
関係する変数は以下の4つ。
Info-directory-list
- Info ファイルを探すディレクトリのリスト。
Info-additional-directory-list
- Info ファイルを探す追加のディレクトリのリスト。優先度は
Info-directory-list
より低い。 Info-default-directory-list
- 自動的に生成されるリスト。Info ファイルがありそうなディレクトリのリスト。
INFOPATH
- シェルの環境変数。
Info ファイルを探すのに使われる変数の一つがInfo-directory-list
。ただ、この変数は最初は空 (nil) で、Info が呼ばれた時に初期化される。INFOPATH
が設定されている場合は INFOPATH
の値がセットされる。INFOPATH
を設定していない場合はInfo-default-directory-list
のうち実際に存在するパスがセットされる。ただし、INFOPATH
の最後がコロンの場合には、INFOPATH
とInfo-default-directory-list
がこの順に結合されたリストがセットされる。
Info ファイルを探すのに使われるもう一つの変数がInfo-additional-directory-list
。追加で指定したいディレクトリがあればこの変数にセットする。
検索の優先順位には注意が必要。リストの先頭に近いディレクトリから検索される。さらに、Info-additional-directory-list
は、Info-directory-list
の後に検索される。同名の Info ファイルが存在する場合にはInfo-directory-list
の方のファイルが表示される。
検索の優先順位を制御したい場合は、INFOPATH
を設定すればよい。