Spaces:
Paused
Paused
| import sys | |
| def main(args=None): | |
| if args is None: | |
| args = sys.argv[1:] | |
| # TODO Handle library-wide options. Eg.: | |
| # --unicodedata | |
| # --verbose / other logging stuff | |
| # TODO Allow a way to run arbitrary modules? Useful for setting | |
| # library-wide options and calling another library. Eg.: | |
| # | |
| # $ fonttools --unicodedata=... fontmake ... | |
| # | |
| # This allows for a git-like command where thirdparty commands | |
| # can be added. Should we just try importing the fonttools | |
| # module first and try without if it fails? | |
| if len(sys.argv) < 2: | |
| sys.argv.append("help") | |
| if sys.argv[1] == "-h" or sys.argv[1] == "--help": | |
| sys.argv[1] = "help" | |
| mod = "fontTools." + sys.argv[1] | |
| sys.argv[1] = sys.argv[0] + " " + sys.argv[1] | |
| del sys.argv[0] | |
| import runpy | |
| runpy.run_module(mod, run_name="__main__") | |
| if __name__ == "__main__": | |
| sys.exit(main()) | |