Paul Lutus <nospam / nosite.zzz> wrote: > Show us the code that caused the error. It is obviously a real error, but it > is difficult to sort out what it is from the message. here is part of the script down to the line giving an error (line 8) : ----------------------------------------- #!/usr/bin/env ruby -w if ARGV.length==1 xml="" found=false root="" file=ARGV[0] fxml=file.gsub(/(.*)\.wav/,'\1.xml') # *** LINE 8 *** rgxstart=Regexp.new("<BWFXML>") rgxstop=Regexp.new("</BWFXML>") i=0 File.open(file).each { |l| [...] of=File.open(fxml, File::WRONLY|File::EXCL|File::CREAT, 0644) of.puts xml } else puts "File name missing." end ----------------------------------------- > > > sometimes an error given at one line comes from the preceeding one : > > file=RGV[0] # line 7 > > > > for me the syntax is correct ??? > > What is in RGV[0]? What is the content of the offending line? RGV[0] is a typo of mine, it should be read : ARGV[0] > > Maybe you should change the shebang line you are using, or delete one of the > ruby references on your system (you appear to have more than one). yes i do have three ruby versions installed on my box [Mac OS X Tiger the latest] : the default Apple's one : /usr/bin/ruby # version 1.8.2 the MacPort installed : /opt/local/bin/ruby # version 1.8.5 the SVN-jRuby one : /Users/yvon/bin/jruby/bin/jruby # version 1.8.5 (0) [java] both MacPort and SVN-jRuby ones are working and cohabit nicely. the Apple's one doesn't like (i think) the env vars i've setup for the MacPort one (under /opt) here they are : export RUBYOPT=rubygems export GEM_HOME=/opt/local/lib/ruby/gems/1.8 export RUBYLIB=/opt/local/lib/ruby/:/opt/local/lib/ruby/site_ruby/1.8 export RUBYGEMS=/opt/local/lib/ruby/site_ruby/1.8 > Using the "/usr/bin/env ruby" shebang line makes an assumption about your > system, that you will always hit the intended Ruby version first. If you > have more than one version installed, you may not hit the intended one, > depending on the order of your search path. Yes a know that point, my PATH is such a way it hits first the ruby version below /opt then, if i want to use the Apple's one i have to do : $ /usr/bin/ruby notice i might change that using aliases as i've allready done to makes Ruby and jRuby cohabit nicely : every command for jRuby is the "same" as the Ruby one with the "prefix" "j" : gem install <what u want> -o-> jgem install <what u want> then may be a solution would be to prefix the commands related to Apple's Ruby with an "a". i don't want to install anything for the Apple's version, i want to leave it untouched. > But this is speculation without seeing the error line and its context. it was given in the preceeding message, even the line before . -- une bñ×ue