Sha256: c572e7bd01561793cbd12dbe33a4ff1dd52653df3b7cf2346d241c38cb4a8102
Contents?: true
Size: 929 Bytes
Versions: 1
Compression:
Stored size: 929 Bytes
Contents
require 'highline/import' require 'rcoli/utils' require 'rcoli/extensions' require 'rcoli/help' require 'rcoli/model' @program = RCoLi::Program.new def application(id, &block) @program.name id @program.switch :long => 'debug' do |s| s.description "Turn on debugging" end @program.switch :long => 'mode-dev' do |s| s.description "Turn on development mode" end @program.command(:help) do |c| c.description "Display help documentation" c.skip_pre true c.skip_post true c.force true c.action do |global_opts, opts, args| @program.help args end end @program.instance_eval &block end at_exit { begin @program.execute(ARGV, self) rescue InvalidCommand => e say "#{@program.value_of_name}: #{e.message}. See '#{@program.value_of_name} help'" rescue ApplicationError => e say($terminal.color "#{e.message}", :red) Kernel::exit(1) end }
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rcoli-0.6.7 | lib/rcoli.rb |