Sha256: 50273aa53c9792f533ee3d93984677c29080186e76f354fde1d8f4b8ec14d260

Contents?: true

Size: 748 Bytes

Versions: 3

Compression:

Stored size: 748 Bytes

Contents

require 'thor'
module <%= MiscUtils.camel_case(name) %>
  class CLI < Thor
    desc 'execute', 'Execute the main program'
    method_option 'version',
                  aliases: '-v',
                  desc: 'Display version number'
    def execute
      opts = options.symbolize_keys
      if opts[:version]
        puts "You are using <%= MiscUtils.camel_case(name) %> version #{<%= MiscUtils.camel_case(name) %>::VERSION}"
        exit
      end
      puts "Your options #{opts}"
      process(opts)
    end

    desc 'usage', 'Display help screen'
    def usage
      puts <<-EOS
Add your sample usage here!
      EOS
    end

    default_task :usage

    private

    def process(opts = {})
      puts "Your options #{opts}"
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
gem_bootstrap-0.1.3 templates/lib/newgem/cli.rb
gem_bootstrap-0.1.2 templates/lib/newgem/cli.rb
gem_bootstrap-0.1.1 templates/lib/newgem/cli.rb