def init_arg_parser(show_help_for=None, hide_hidden=True): """ Create a base argument parser """ def dummy_error(msg): raise PBException('parse error') cmd_list = get_cmd_list(hide_hidden=hide_hidden) # Set up global options: parser = argparse.ArgumentParser( description='PyBOMBS: A meta-package manager integrated with CGRAN.', epilog='Run `pybombs <command> --help to learn about command-specific options.', ) config_manager.setup_parser(parser) subparsers = parser.add_subparsers( title='PyBOMBS subcommands', #description='valid subcommands', help="Description:", dest='command', metavar='<command>', ) if hide_hidden: parser.error = dummy_error # Set up options for each command: for cmd in cmd_list: for cmd_name, cmd_help in iteritems(cmd.cmds): subparser = subparsers.add_parser(cmd_name, help=cmd_help, add_help=True) cmd.setup_subparser(subparser, cmd_name) if cmd_name == show_help_for: subparser.print_help() exit(0) return parser
def init_arg_parser(show_help_for=None, hide_hidden=True): """ Create a base argument parser """ def dummy_error(msg): raise PBException('parse error') cmd_list = get_cmd_list(hide_hidden=hide_hidden) # Set up global options: parser = argparse.ArgumentParser( description='PyBOMBS: A meta-package manager integrated with CGRAN.', epilog= 'Run `pybombs <command> --help to learn about command-specific options.', ) config_manager.setup_parser(parser) subparsers = parser.add_subparsers( title='PyBOMBS subcommands', #description='valid subcommands', help="Description:", dest='command', metavar='<command>', ) if hide_hidden: parser.error = dummy_error # Set up options for each command: for cmd in cmd_list: for cmd_name, cmd_help in cmd.cmds.iteritems(): subparser = subparsers.add_parser(cmd_name, help=cmd_help, add_help=True) cmd.setup_subparser(subparser, cmd_name) if cmd_name == show_help_for: subparser.print_help() exit(0) return parser