#!/usr/bin/env python3 import argparse import os import sys from pprint import pprint try: import boxes except ImportError: sys.path.append(os.path.dirname(__file__) + "/..") import boxes import boxes.generators def printusage(): print("""Usage: boxes [NAME] [options] --list list possible names --help show help for given NAME """) def main(): modules = boxes.generators.getAllGeneratorModules() del modules['_template'] if len(sys.argv) == 1: printusage() elif sys.argv[1] in modules: name = sys.argv[1] sys.argv[0] = "%s %s" % (sys.argv[0], sys.argv[1]) del sys.argv[1] modules[name].main() elif sys.argv[1] == '--list': print("Available generators:") for name in sorted(modules): if not hasattr(modules[name], "main"): continue print(" * ", name) else: print("Unknown generator name. Use boxes --list to get a list of available commands.") main()