diff options
-rwxr-xr-x | Tools/scripts/pydoc | 78 |
1 files changed, 2 insertions, 76 deletions
diff --git a/Tools/scripts/pydoc b/Tools/scripts/pydoc index a1dcbcc..0964929 100755 --- a/Tools/scripts/pydoc +++ b/Tools/scripts/pydoc @@ -1,78 +1,4 @@ #!/usr/bin/env python -# -------------------------------------------------- command-line interface - -import sys, os, pydoc -from string import lower - -if __name__ == '__main__': - import getopt - class BadUsage: pass - - try: - opts, args = getopt.getopt(sys.argv[1:], 'k:p:w') - writing = 0 - - for opt, val in opts: - if opt == '-k': - pydoc.apropos(lower(val)) - break - if opt == '-p': - try: - port = int(val) - except ValueError: - raise BadUsage - def ready(port=port): - print 'server ready at http://127.0.0.1:%d/' % port - pydoc.serve(('127.0.0.1', port), ready) - break - if opt == '-w': - if not args: raise BadUsage - writing = 1 - else: - if args: - for arg in args: - try: - if os.path.isfile(arg): - arg = pydoc.importfile(arg) - if writing: - if os.path.isdir(arg): pydoc.writedocs(arg) - else: pydoc.writedoc(arg) - else: pydoc.man(arg) - except pydoc.DocImportError, value: - print 'problem in %s - %s' % ( - value.filename, value.args) - else: - if sys.platform in ['mac', 'win', 'win32', 'nt']: - # GUI platforms with threading - import threading - ready = threading.Event() - address = ('127.0.0.1', 12346) - threading.Thread( - target=pydoc.serve, args=(address, ready.set)).start() - ready.wait() - import webbrowser - webbrowser.open('http://127.0.0.1:12346/') - else: - raise BadUsage - - except (getopt.error, BadUsage): - print """%s <name> ... - Show documentation on something. - <name> may be the name of a Python function, module, or package, - or a dotted reference to a class or function within a module or - module in a package, or the filename of a Python module to import. - -%s -k <keyword> - Search for a keyword in the synopsis lines of all modules. - -%s -p <port> - Start an HTTP server on the given port on the local machine. - -%s -w <module> ... - Write out the HTML documentation for a module to a file. - -%s -w <moduledir> - Write out the HTML documentation for all modules in the tree - under a given directory to files in the current directory. -""" % ((sys.argv[0],) * 5) +import pydoc +pydoc.cli() |