From: WATANABE Hirofumi Date: 2005-11-21T11:29:11+09:00 Subject: [ruby-dev:27771] Re: File.dirname("///foo/bar/baz/qux") on cygwin わたなべです。 "U.Nakamura" writes: > | ls しても /// と / は同じ挙動のように感じられますし。 > > ま、Cygwinの前例に抵抗する積極的な理由は確かに思いつかないう > えに、現状の挙動に愛着があるわけでもないので、合わせてもかま > わなさそうです。 Cygwinの気まぐれな仕様に合わせる必要はないと思います。 ///はUNCとしても無効のようなので、とりあえず挙動は不定として おきたいところ。///のように3つ以上で/になるのは実装上たまた まそうなってるのかもしれないし。 > Cygwinで思い出しましたが、最近のCygwinは // や //server を有 > 効なディレクトリ名として認識・動作するので、 > File.dirname("//") #=> "//" > File.dirname("//server") #=> "//" > File.dirname("//server/share") #=> "//server" > と動作するべきような気がしますが、どうでしょう?>ebanさん アクセスできるからこうするというのもなんか違うんじゃないかな。 //や//serverは元々UNCとしてアクセスできないわけだし、mswin32 との整合が取れないほうが後々問題になる気がします。 #mswin32とわざわざ処理を分けたくないというのが本音。 -- わたなべひろふみ