class Thor::Command

def formatted_usage(klass, namespace = true, subcommand = false)

and required options into the given usage.
Returns the formatted usage by injecting given required arguments
def formatted_usage(klass, namespace = true, subcommand = false)
  if ancestor_name
    formatted = "#{ancestor_name} ".dup # add space
  elsif namespace
    namespace = klass.namespace
    formatted = "#{namespace.gsub(/^(default)/, '')}:".dup
  end
  formatted ||= "#{klass.namespace.split(':').last} ".dup if subcommand
  formatted ||= "".dup
  Array(usage).map do |specific_usage|
    formatted_specific_usage = formatted
    formatted_specific_usage += required_arguments_for(klass, specific_usage)
    # Add required options
    formatted_specific_usage += " #{required_options}"
    # Strip and go!
    formatted_specific_usage.strip
  end.join("\n")
end