On Sep 30, 10:38=A0am, Stefano Crocco <stefano.cro... / alice.it> wrote:
> On Thursday 30 September 2010, RichardOnRails wrote:
>
>
>
> > |Hi,
> > |
> > |I'm using Example:http://rubylearning.com/satishtalim/ruby_arrays.html
> > |as a guide to GetoptLong usage. =A0I get the message:
> > |
> > |uninitialized constant GetoptLong::OptionalArgument (NameError)
> > |
> > |for line 10 of the program listed below (with line 10 flagged). =A0Can
> > |anyone point me to a working example of GetoptsLong usage?
> > |
> > |Thanks in Advance,
> > |Richard
> > |
> > |# SummarizeBalances.rb
> > |# K:\_Projects\Ruby\_Ruby_Apps\InvestmentSW
> > |# Example:http://rubylearning.com/satishtalim/ruby_arrays.html
> > |
> > |require 'GetoptLong'
> > |
> > | =A0 =A0puts "Args =3D " + ARGV.join(", ")
> > |
> > | =A0 =A0opts =3D GetoptLong.new(
> > | =A0[ =A0 =A0 =A0 "--from", "-f", =A0GetoptLong::OptionalArgument], =
=A0 =A0 # Line 10
> > | =A0[ =A0 =A0 =A0 "--to", "-t", =A0GetoptLong::OptionalArgument],
> > | =A0[ =A0 =A0 =A0 "--weeks_until", "-w", =A0GetoptLong::OptionalArgume=
nt]
> > | =A0 =A0)
> > |
> > | =A0 =A0# Process the arguments
> > | =A0 =A0opts.each { |opt, arg|
> > | =A0puts %{%s =3D> "%s"} % [opt, arg]
> > | =A0 =A0}
> > | =A0 =A0rem_args =3D ARGV.join(", ")
> > | =A0 =A0puts "Remaining args =3D %s" % [rem_args] if rem_args
>
> As you can see from the link you posted, the constant name is
> GetoptLong::OPTIONAL_ARGUMENT, not GetoptLong::OptionalArgument. However,=
 I'd
> consider using OptionParser (which, like GetoptLong is included in the ru=
by
> standard library) rather than GetoptLong, since it provides a much more r=
uby-
> oriented interface.
>
> Stefano

Hi Stefano,

Excellent response.

>> As you can see ...
Admittedly, I did see the syntax in the example.  What I didn't see,
alas, was the precise option I wanted to use.  By time I clicked my
SciTE editor, thus overlaying the example,  I forgot the syntax.
Remembering the words was all I could muster.  Sad tale :-)

>> OptionParser
Looks good, especially the comprehensive example.

Best wishes,
Richard