def __init__(self, name, loader, *largs, **kwargs): kwargs['formatter_class'] = RawTextHelpFormatter kwargs['fromfile_prefix_chars']="@" args = kwargs.pop('args', None) preparser = ArgumentParser(add_help=False, fromfile_prefix_chars=kwargs['fromfile_prefix_chars']) preparser.add_argument("-X", type=loader, action="append") # Process the plugins preparser.exit = lambda a, b: None # preparser.convert_arg_line_to_args = self.convert_arg_line_to_args preparser._read_args_from_files = PluginArgumentParser._read_args_from_files.__get__(preparser) preparser._yield_args_from_files = PluginArgumentParser._yield_args_from_files.__get__(preparser) preparser.convert_args_file_to_args = PluginArgumentParser.convert_args_file_to_args.__get__(preparser) self.ns, unknown = preparser.parse_known_args(args) ArgumentParser.__init__(self, name, *largs, **kwargs) self.add_argument("-X", action='append', help='path of additional plugins to be loaded' )