class Thor

Attributes

parent_class[RW]

Public Class Methods

banner(command, namespace = nil, subcommand = false) click to toggle source
basename2(subcommand = false) click to toggle source
# File lib/everyday_thor_util/thor-fix.rb, line 7
def basename2(subcommand = false)
  bn  = parent_class && parent_class.basename2
  bn2 = basename
  ns  = self.namespace.split(':').last
  bn ? (subcommand ? bn : "#{bn} #{ns}") : bn2
end
define_non_command(method_name, &block) click to toggle source
# File lib/everyday_thor_util/common.rb, line 13
def define_non_command(method_name, &block)
  no_commands { define_method(method_name, &block) }
end
handle_argument_error(command, error, args, arity) click to toggle source
# File lib/everyday_thor_util/thor-fix.rb, line 25
def handle_argument_error(command, error, args, arity)
  msg = "ERROR: \"#{basename2} #{command.name.gsub(/_/, '-')}\" was called with "
  msg << 'no arguments' if args.empty?
  msg << 'arguments ' << args.inspect unless args.empty?
  msg << "\nUsage: #{banner(command).inspect}"
  fail InvocationError, msg
end
old_subcommand(subcommand, subcommand_class)
Alias for: subcommand
subcommand(subcommand, subcommand_class) click to toggle source
# File lib/everyday_thor_util/thor-fix.rb, line 20
def subcommand(subcommand, subcommand_class)
  subcommand_class.parent_class = self
  old_subcommand(subcommand, subcommand_class)
end
Also aliased as: old_subcommand