class Byebug::HelpCommand


Ask for help from byebug’s prompt.

def description

def description
  prettify <<-EOD
    h[elp][ <cmd>[ <subcmd>]]
    help                -- prints this help.
    help <cmd>          -- prints help on command <cmd>.
    help <cmd> <subcmd> -- prints help on <cmd>'s subcommand <subcmd>.
  EOD
end

def execute

def execute
  return puts(self.class.help) unless @match[1]
  cmd = Command.commands.select { |c| c.names.include?(@match[1]) }
  return errmsg(pr('help.errors.undefined', cmd: @match[1])) unless cmd.any?
  cmd.each { |c| puts c.help(@match[2]) }
end

def names

def names
  %w(help)
end

def regexp

def regexp
  /^\s* h(?:elp)? (?: \s+(\S+) (?:\s+(\S+))? )? \s*$/x
end