1 #!/usr/bin/env python 2 3 import sys, os 4 import simplify 5 import fixnames 6 import viewer 7 from annotate import AnnotationError, annotate_all as aa 8 9 def makedoc(viewer, module, builtins): 10 try: 11 dirname = "%s-docs" % module.name 12 if not os.path.exists(dirname): 13 os.mkdir(dirname) 14 viewer.makedoc(module, os.path.join(dirname, "%s%shtml" % (module.name, os.path.extsep))) 15 viewer.makedoc(builtins, os.path.join(dirname, "%s%shtml" % (builtins.name, os.path.extsep))) 16 except viewer.ViewerError, exc: 17 raise 18 19 if __name__ == "__main__": 20 21 builtins = simplify.simplify(os.path.join("lib", "builtins.py"), 1) 22 module = simplify.simplify(sys.argv[1]) 23 fixnames.fix(builtins) 24 fixnames.fix(module, builtins) 25 26 stream = sys.stdout 27 v = viewer.Viewer(stream) 28 29 if "-a" in sys.argv: 30 try: 31 aa([module], builtins) 32 except AnnotationError, exc: 33 v.report(exc) 34 35 if "-d" in sys.argv: 36 makedoc(viewer, module, builtins) 37 38 # vim: tabstop=4 expandtab shiftwidth=4