[chao 1.14] mmexternal anon-ftp

Yoshiki Hayashi t90553 @ m.ecc.u-tokyo.ac.jp
2000年 7月 7日 (金) 18:13:27 JST


tomo @ kanji.zinbun.kyoto-u.ac.jp (守岡 知彦 / MORIOKA Tomohiko) writes:

> 確かに関数 expand-file-name が ftp に access したって bug とは言えない
> でしょうね。ただ、file-name-handler-alist に指定された関数は関数 
> expand-file-name に於いて expand-file-name の場合の処理を行えと指示さ
> れた事を知っているので、もし、関数 expand-file-name において ftp に
> access することが望ましくないのであればそう配慮する事が可能でしょう。
> 一方、ftp に access することが問題なければもちろん問題ありませんが、そ
> の場合、Chao-1.14 も現状で良いと言えるでしょう。

EFS や ange-ftp の使用を前提として directory 部分に EFS が扱
う正規表現を書いて expand-file-name を呼べば EFS が ftp で接
続するのは問題無いです。ただし、Chao が expand-file-name し
ているのは intialize-instance の中で、どうみても file 部分と
directory 部分をくっつけようとしているだけなので、EFS を呼び
出すのは無駄です。どういう論理で最後の文に繋がるのかまったく
わかりません。

> Yoshiki> 私は bug だと思っていませんが、
> 
> よろしければその理由を教えてください。

XEmacs の Info の Lispref の Node: Magic File Names に

   Here are the operations that a magic file name handler gets to
handle:

[...]
`dired-compress-file', `dired-uncache', `expand-file-name',
[...]

というのがあります。明示的に EFS が使わない用に指示していな
い限り、ftp で接続に行くのは EFS としては普通の動作だと思い
ます。

> Yoshiki> ついでに、FSF Emacs 20.7 でも全く同じ挙動をします。
> 
> 私の手元の Emacs 20.7 (woody の) では再現できませんでした。なお、EFS
> は使っていません。

Package: emacs20-dl
Version: 20.7-4

というので
(expand-file-name "README" "/ftp @ ftp.m17n.org:")
を eval すると
*ftp ftp @ ftp.m17n.org* という buffer ができて、そこで接続し
ています。もちろん ange-ftp です。

> それから、これは多分 EFS の問題だと思うので、Emacs 20.7 で EFS を使え
> ば同様の挙動を示すでしょうし、XEmacs でも EFS を使わなければそういう挙
> 動を示さないと思われます。

なぜ EFS の bug なんでしょうか?

> ところで、
> 
> -		  (name (mime-content-type-parameter ct "name")))
> +		  (name (mime-content-type-parameter ct "name"))
> +		  ;; avoid contacting an ftp server.
> +		  (file-name-handler-alist nil))
> 
> という対処ですが、別の理由で反対することにします。それは
> file-name-handler-alist で特別な file 名の扱いを実現しようとする
> application が仮にあった時にその機能を阻害するのはまずいと思われるから
> です。

別の application が裏に存在するなら考慮しなければならないで
しょうが、mmexternal の下請けの program って何でしょうか? も
し別の backend を作っていて、この動作が嫌であれば override
すれば良いだけですよね?

;; 本当は inhibit-file-name-handlers か
;; inhibit-file-name-operation で対処すのかな、と思ったので
;; すがこっちは期待通り動いてくれなかったので調査をさぼりま
;; した。:-)

-- 
Yoshiki Hayashi




More information about the Emacs-mime-ja mailing list