Sha256: 91a536a3e0072fa2521330d8cbab4b9de7d3925251f5db2ca4ec8e91698251d5

Contents?: true

Size: 1.33 KB

Versions: 20

Compression:

Stored size: 1.33 KB

Contents

# -*- coding: utf-8 -*-
module Gemirro
  # CLI mode
  module CLI
    ##
    # Hash containing the default Slop options.
    #
    # @return [Hash]
    #
    SLOP_OPTIONS = {
      strict: true,
      help: true,
      banner: 'Usage: gemirro [COMMAND] [OPTIONS]'
    }

    ##
    # @return [Slop]
    #
    def self.options
      @options ||= default_options
    end

    ##
    # Loads the specified configuration file or displays an error if it doesn't
    # exist.
    #
    # @param [String] config_file
    # @return [Gemirro::Configuration]
    #
    def self.load_configuration(config_file)
      config_file ||= Configuration.default_configuration_file
      config_file   = File.expand_path(config_file, Dir.pwd)

      unless File.file?(config_file)
        abort "The configuration file #{config_file} does not exist"
      end

      require(config_file)
    end

    ##
    # @return [Slop]
    #
    def self.default_options
      Slop.new(SLOP_OPTIONS.dup) do
        separator "\nOptions:\n"

        on :v, :version, 'Shows the current version' do
          puts CLI.version_information
        end
      end
    end

    ##
    # Returns a String containing some platform/version related information.
    #
    # @return [String]
    #
    def self.version_information
      "gemirro v#{VERSION} on #{RUBY_DESCRIPTION}"
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
gemirro-0.11.0 lib/gemirro/cli.rb
gemirro-0.10.5 lib/gemirro/cli.rb
gemirro-0.10.4 lib/gemirro/cli.rb
gemirro-0.10.3 lib/gemirro/cli.rb
gemirro-0.10.2 lib/gemirro/cli.rb
gemirro-0.10.1 lib/gemirro/cli.rb
gemirro-0.10.0 lib/gemirro/cli.rb
gemirro-0.9.1 lib/gemirro/cli.rb
gemirro-0.9.0 lib/gemirro/cli.rb
gemirro-0.8.1 lib/gemirro/cli.rb
gemirro-0.8.0 lib/gemirro/cli.rb
gemirro-0.7.0 lib/gemirro/cli.rb
gemirro-0.6.0 lib/gemirro/cli.rb
gemirro-0.5.0 lib/gemirro/cli.rb
gemirro-0.4.0 lib/gemirro/cli.rb
gemirro-0.3.0 lib/gemirro/cli.rb
gemirro-0.2.0 lib/gemirro/cli.rb
gemirro-0.1.0 lib/gemirro/cli.rb
gemirro-0.0.2 lib/gemirro/cli.rb
gemirro-0.0.1 lib/gemirro/cli.rb