From: "H.Yamamoto" Date: 2004-04-01T19:20:44+09:00 Subject: [ruby-dev:23297] Re: [proposal] new function for mathing path name 山本です。 matz@ruby-lang.org (Yukihiro Matsumoto) wrote: (2004/04/01 17:33) >|本当は Dir.glob と File.fnmatch の互換がとれてから提案したかったのですが、時間がかかりそうなので >|先に提案しておきます。 > >どのくらい便利なのかは(私自身がcasefoldな環境を離れて久しい >ので)、よく分からないのですが、 私自身があまり File.fnmatch を使わないので弱いのですが、 c:/windows の下のビットマップを拾い出す場合、Dir.glob('c:/windows/**/*.bmp') とすれば c:/windows/foo/a.bmp でも c:/Windows/Foo/Boo/B.BMP でも拾い出せますよね。パス名マッチング関数としても、 これと並列なものがあれば便利だと思うんです。 現状だと、File.fnmatch('c:/windows/**/*.bmp', File::FNM_PATHNAME | File::FNM_CASEFOLD) と長くなって しまいます。 matz@ruby-lang.org (Yukihiro Matsumoto) wrote: (2004/04/01 17:33) >|FNM_PATHNAME の動作をし、Dir.glob のように case sensitivity が環境依存な関数をつくれば便利だと思うの >|ですが、いかかでしょうか?何通りか仕様を考えてみました。 > >むしろ、casefoldな環境以外では0となる新しいフラグを定義する >だけでよいのではないでしょうか。FNM_SYSCASEとかなんとか。 これだと、File.fnmatch('c:/windows/**/*.bmp', File::FNM_PATHNAME | File::FNM_SYSCASE) で変わらなく なってしまいます。 I wrote: (In this mail) > これと並列なものがあれば便利だと思うんです。 そもそもこれが勘違いなのでしょうか?