Spaces:
Running
Running
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()) | |