James Gray wrote:
I promise to use that to fix any bugs it uncovers. Fair enough?
Thank you James for your patience
I'm glad we're getting it figured out.
Here is sample script:
OK, the short story is that there's no bugs here. You are just running into surprising "features" of Ruby.
First, let me show how to fix your code:
#!/usr/bin/env ruby -wKU
require "rubygems"
require "highline/import"
ip = [
["tvp1", "219.239.2.1"],
["tvp2", "219.239.2.2"],
["tvp info", "219.239.2.3"],
["polsat", "219.239.2.4"],
["tvn", "219.239.2.5"],
["tvp kultura", "219.239.2.6"],
["tvp polonia", "219.239.2.7"],
["tvp historia", "219.239.2.9"]]
choose do |menu|
menu.prompt = "Please choose your test: "
for j in 0..ip.length-1
ip.each_with_index do |row, i|
menu.choice(:"#{ip[j][0]}\t\t\t#{ip[j][1]} ", "blabla#{j}") do
menu.choice("#{row.first}\t\t\t#{row.last} ", "blabla#{i}") do
puts "#{ip[j][0]}\t\t\t#{ip[j][1]} - your choice"
puts "#{row.first}\t\t\t#{row.last} - your choice"
end
end#for
end
Those simple changes should make your code run as expected.
on my compilation there is always executed last option. Does not matter
which one you pick.
For an explanation of why you were seeing this, please see this write up on my blog:
James Edward Gray II
···
On Jan 7, 2009, at 2:36 AM, Tomasz Krakowski wrote: