def initialize(*args)
@options = Hash.new
@config = Hash.new
@banner = self.class.banner
klass_options = self.class.options
klass_options.keys.inject(@options) { |memo, key| memo[key] = klass_options[key].dup; memo }
@options.each do |config_key, config_opts|
config_opts[:on] ||= :on
config_opts[:boolean] ||= false
config_opts[:required] ||= false
config_opts[:proc] ||= nil
config_opts[:show_options] ||= false
config_opts[:exit] ||= nil
if config_opts.has_key?(:default)
@config[config_key] = config_opts[:default]
end
end
super(*args)
end