from opts import * import searcher import opener import argparse parser = argparse.ArgumentParser(prog='ext-open',prefix_chars=prefix_char) for opt in prefix: parser.add_argument(*opt.pop('ostring'),**opt) sub_parsers = parser.add_subparsers(dest='ext') exe_parser = sub_parsers.add_parser('exe',prefix_chars=prefix_char) for opt in exe: exe_parser.add_argument(*opt.pop('ostring'),**opt) for ext in exts: sub_parser = sub_parsers.add_parser(ext['ext'],prefix_chars=prefix_char) for opt in ext['opts']+common: opt = opt.copy() sub_parser.add_argument(*opt.pop('ostring'),**opt) if __name__ == '__main__': args = parser.parse_args() print(args)