[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
provide/run-hooks
の順序
- From: Seiichi NAMBA <sn@xxxxxxxxxxxxxxxxxxxxx>
- Date: Fri, 30 Aug 2002 19:57:47 +0900
- X-ml-name: emacs-w3m
- X-mail-count: 03861
---
難波と申します。当 ML に入っておりませんので送れるかどうかよく判りませ
んが送信してみます。3月頃に一回バグレポートをお送りしましたが、その時は
送れましたので。
今、手元にあるのは
emacs-w3m-version "1.3.74"
で、w3m-load-hook が使えるようになり、やれ嬉しやと思い、今まで
w3m-mode-hook に書いていた内容を add-hook したところ、無限ループに
なってしまいます。
w3m-load-hook から読み込んでいる自分のプログラムの先頭に(require 'w3m)
と書いてあるためです。
という訳で、w3m.el の次の最後の2行
(run-hooks 'w3m-load-hook)
(provide 'w3m)
の順序を逆にしていただけないでしょうか( run-hooks を最後に移動)?
ちなみに、emacs-20.7 (21.2 には無い?) の dired-x には、古い dired.el
(dired-x は (require 'dired) します)の問題として次のような記載があります。
CAUTION: If you are using a version of GNU Emacs earlier than 19.20
than you may have to edit `dired.el'. The copy of `dired.el' in GNU
Emacs versions earlier than 19.20 incorrectly had the call to
`run-hooks' _before_ the call to `provide'. In such a case, it is
possible that byte-compiling and/or loading dired can cause an infinite
loop. To prevent this, make sure the line of code
(run-hooks 'dired-load-hook)
is the _last_ executable line in the file `dired.el'. That is, make
sure it comes _after_ the line
(provide 'dired)
これを読んでから、自作のプログラムでは provide は先頭に書くのが習慣と
なりました(心情的には provide は最後に書くのが自然なのですが…)。
難波清一@東京都西東京市 (http://www.asahi-net.or.jp/~pi9s-nnb/)
NAMBA Seiichi <sn@asahi-net.email.ne.jp>