たけ(tk)です。

[ruby-ext:02252] Re: vfs.rb & Windows path にて 
Tatsuki Sugiura <sugi / nemui.org> さん 曰く:

> new の所だけ変えれば出来たなので、とりあえず直してみました。
> 
> http://sugi.nemui.org/pub/ruby/vfs/libvfs-ruby-0.0+b5.tar.gz

ちゃんとインストールされたか自信がないですが、

G:\DOWNLOAD\libvfs-ruby-0.0+b5.tar.gz\libvfs-ruby-0.0+b5>ruby setup.rb config
G:\DOWNLOAD\libvfs-ruby-0.0+b5.tar.gz\libvfs-ruby-0.0+b5>ruby setup.rb setup
G:\DOWNLOAD\libvfs-ruby-0.0+b5.tar.gz\libvfs-ruby-0.0+b5>ruby setup.rb install
G:\DOWNLOAD\libvfs-ruby-0.0+b5.tar.gz\libvfs-ruby-0.0+b5>

で

C:/Program Files/Apollo/lib/ruby/site_ruby/1.8/vfs.rb

に入ったようです。ここで、vfs.rb を次のように変えて実行すると、

if __FILE__ == $0
#  f = "file:///home/sugi/.bashrc"
#  f = "http://localhost/doc/debian/debian-manifesto"
#  f = "http://localhost/~sugi/"

  f = __FILE__

  #=> bad URI(is not URI?): file:C:/Program Files/Apollo/lib/ruby/site_ruby/1.8/vfs.rb (URI::InvalidURIError)
  #=>   C:/Program Files/Apollo/lib/ruby/1.8/uri/common.rb:345:in `split'
  #=>   C:/Program Files/Apollo/lib/ruby/1.8/uri/common.rb:368:in `parse'
  #=>   C:/Program Files/Apollo/lib/ruby/site_ruby/1.8/vfs/file.rb:45:in `new'

となりました。
空白入りのpathはあんまりなのでsfn形式に変えると、次のようになりました。

  f = "C:/Progra~1/Apollo/lib/ruby/site_ruby/1.8/vfs.rb"

----
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Program Files\Apollo\lib\ruby\site_ruby\1.8>ruby vfs.rb
#<VFS::SchemeHandler::FILE::File:21341128 URI="file:C:/Progra~1/Apollo/lib/ruby/site_ruby/1.8/vfs.rb">
"file:C:/Progra~1/Apollo/lib/ruby/site_ruby/1.8/vfs.rb/a/b/c"
"a/b/c"
"C"
"file"
(eval):131:in `mtime': cannot convert nil into String (TypeError)
        from (eval):131:in `mtime'
        from vfs.rb:52

C:\Program Files\Apollo\lib\ruby\site_ruby\1.8>
----

以上、ご報告のみでした。

take_tk = kumagai hidetake