[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[mhc:01740] Re: Import error



From: NOGUCHI Yusuke <nogunogu@xxxxxxxxxxxxxxxxx> さん曰く
Subject: [mhc:01739] Re: Import error
Message-ID: <20030111.010034.24695721.nogunogu@xxxxxxxxxxxxxxxxx>
Date: Sat, 11 Jan 2003 01:00:34 +0900 (JST)

> > (make-directory-internal "/home/nogunogu/Mail/schedule/2003/01/")
> > のように、パスセパレータで終わっているとエラーになるのでしょうか。
> 
> です.

これは NetBSD の Emacs だけの不具合と言い切っちゃっていいと思い
ます。elisp-info の Directory Names を見ると、

--------------- info ---------------
ディレクトリ名
--------------

"ディレクトリ名"(directory name)とはディレクトリの名前です。ディレクト
リはファイルの一種であり、ファイル名を持ちますが、それはディレクトリ名に
関連付けられますが同一ではありません。(これはUNIXの通常の用語と同じでは
ない。)同じものに対するこれらの異なる2つの名前は、構文の変換で関連付け
ます。UNIXではこれは簡単であり、ディレクトリ名はスラッシュで終りますが、
ファイルとしてのディレクトリの名前にはスラッシュはありません。VMSでは、
関係はより複雑です。

ディレクトリ名とそのファイルとしての名前との違いはわずかですが重大です。
Emacsの変数や関数引数がディレクトリ名と記述されているときには、ディレク
トリのファイルとしての名前は受け付けません。
--------------- info ---------------

で、make-directory-internal の引数は dirname だもんなぁ、だから。

momoi さんの Emacs 21.2 でもダメなようなので、今の Emacs 21.3.50
もだめならその筋に報告が良いと思います。

# と思うのですが、いかがでしょうか?

それまでは、密かに

(defadvice make-directory-internal (before to-file-name activate)
  (setq directory (directory-file-name directory)))

を ~/.emacs に書いておく程度かな。

-- 
白井秀行 (mailto:shirai@xxxxxxxxxxxxx)