require

Katsumi Yamaoka yamaoka @ jpl.org
2000年 10月 6日 (金) 18:06:49 JST


XEmacs の packages にもある APEL の poe.el の中で

(defun require (feature &optional filename noerror) ...)

という FSF Emacs 20.4 以上と同じ第三引数を持った require が定義されて
いるのですが、往々にして efs.el にある efs-require で上書きされて、
XEmacs 本来の

(require FEATURE &optional FILE-NAME) 

という仕様に戻されてしまいます。

;; 話しによれば jam-zcat もそうらしい、しかも FSFmacs で使った場合もそ
;; うなるようなのですが、jka-compr の守備範囲に require はありません。

ですから、あるプログラムに

(require 'foo nil t)

と書いてあったとすると、現在これを確実に XEmacs で使うためには、efs の
後で poe を load する必要があります。しかし、そんな制約があるのは好ま
しくありませんし efs が不要な人にとって efs 本体は重いものです。
で、以下は実行を伴わない個人的な意見ですが、:-p

・XEmacs の built-in 関数の require を FSFmacs に合わせてもらい、かつ
  efs もそれに同期して変更してもらう。

というのが最上解ではないかと思うのですが、いかがなものでしょうか?

;; どなたかやって下さると嬉しい。(^^;;)

とは言うものの、FSFmacs と XEmacs (加えて古い Emacs) 共用のプログラム
を書く場合は、今後も require の第三引数は使わないようにするしかなさそ
うです。

;;; 上野さんへの私信で「やってみる」と書いたけれど、こんな状況だとは
;;; 思いませんでした。(^^;;;)
-- 
Katsumi Yamaoka <yamaoka @ jpl.org>




More information about the APEL-ja mailing list