Loquacious 1.0.0

Loquacious version 1.0.0
by Tim P.
http://codeforpeople.rubyforge.org/loquacious

== DESCRIPTION

Descriptive configuration files for Ruby written in Ruby.

Loquacious provides a very open configuration system written in ruby and
descriptions for each configuration attribute. The attributes and
descriptions
can be iterated over allowing for helpful information about those
attributes to
be displayed to the user.

In the simple case we have a file something like

Loquacious.configuration_for(‘app’) {
name ‘value’, :desc => “Defines the name”
foo ‘bar’, :desc => “FooBar”
id 42, :desc => “Ara T. Howard”
}

Which can be loaded via the standard Ruby loading mechanisms

Kernel.load ‘config/app.rb’

The attributes and their descriptions can be printed by using a Help
object

help = Loquacious.help_for(‘app’)
help.show :values => true # show the values for the attributes,
too

Descriptions are optional, and configurations can be nested arbitrarily
deep.

Loquacious.configuration_for(‘nested’) {
desc “The outermost level”
a {
desc “One more level in”
b {
desc “Finally, a real value”
c ‘value’
}
}
}

config = Loquacious.configuration_for(‘nested’)

p config.a.b.c #=> “value”

And as you can see, descriptions can either be given inline after the
value or
they can appear above the attribute and value on their own line.

== CHANGES

  • 1 major enhancement
    • Birthday!