def self.run(argv=ARGV)
op = OptionParser.new do |opt|
opt.banner = Banner
opt.summary_indent = ' '
opt.separator "\nCommands:\n #{commands_info.join("\n ")}"
opt.separator "\nOptions:\n"
opt.on('-v', '--version', 'Shows the version of Ramaze') do
puts Ramaze::VERSION
exit
end
opt.on('-h', '--help', 'Shows this help message') do
puts op
exit
end
end
op.order!(argv)
if !argv[0]
puts op.to_s
exit
end
cmd = argv.delete_at(0).to_sym
if Commands.key?(cmd)
cmd = Commands[cmd].new
cmd.run(argv)
else
abort 'The specified command is invalid'
end
end