pip/pip/commands/help.py

32 lines
911 B
Python
Raw Normal View History

from pip.basecommand import Command, SUCCESS, ERROR
from pip.exceptions import CommandError
class HelpCommand(Command):
name = 'help'
usage = '%prog'
summary = 'Show available commands'
def run(self, options, args):
from pip.commands import commands, get_similar_commands
try:
# 'pip help' with no args is handled by pip.__init__.parseopt()
2012-12-06 15:56:46 +01:00
cmd_name = args[0] # the command we need help for
2012-12-06 16:01:54 +01:00
except IndexError:
return SUCCESS
if cmd_name not in commands:
guess = get_similar_commands(cmd_name)
msg = ['unknown command "%s"' % cmd_name]
if guess:
msg.append('maybe you meant "%s"' % guess)
raise CommandError(' - '.join(msg))
2012-12-06 15:56:46 +01:00
command = commands[cmd_name](self.main_parser) # instantiate
command.parser.print_help()
return SUCCESS