From: Katsuyuki Komatsu Date: 2000-07-07T23:03:06+09:00 Subject: [ruby-dev:10262] Re: $0 handling on NT 小松です。 In the message of [ruby-dev:9890] Re: $0 handling on NT on 2000/5/29 WATANABE Hirofumi wrote: |: ライブラリ化するのはともかく、dosish なシステムではそれがネイティブ |:な環境ですから、デフォルトでそういう動作をしてくれないと困るのでは。 | |あまり合意が取れてないかもしれないけど, Ruby 内では / が |path の区切りです(と思っている). |だから \ を / に変換するのが筋でしょう. そういえば、これ、こんなところでよいですか? 機種依存の初期化部をまとめるという話になってたんでしたっけ? □パッチ適用後の動作 C:\lang\ruby>type 表題.rb p __FILE__, $0, File.basename($0, ".rb") C:\lang\ruby>表題.rb "C:/lang/ruby/表題.rb" "C:/lang/ruby/表題.rb" "表題" C:\lang\ruby> diff -ru1p ruby-1.5.4.dist/ruby.c ruby-1.5.4/ruby.c --- ruby-1.5.4.dist/ruby.c Fri Jul 7 12:20:52 2000 +++ ruby-1.5.4/ruby.c Fri Jul 7 22:20:52 2000 @@ -627,2 +627,7 @@ proc_options(argc, argv) } +#if defined NT + for (s = script; *s; s = CharNext(s)) + if (*s == '\\') + *s = '/'; +#endif } -- 小松克行 / Katsuyuki Komatsu