[Python-ideas] Improving Pydoc
Ron Adam
rrr at ronadam.com
Fri Dec 22 14:37:40 CET 2006
Thomas Heller wrote:
> Ron Adam schrieb:
>> Improving pydoc has been suggested before by me and others. I've been working
>> on a version that is probably 80% done and would like to get feed back at this
>> point to determine if I'm approaching this in the best way.
>>
>> Basically pydoc.py consists of over 2,000 lines of python code and is not well
>> organized inside which means (my thoughts) it will pretty much stay the way it
>> is and not be as useful as it could be.
>>
>> Currently pydoc.py has the following uses.
>>
>> * It is imported and used as pythons console help function.
>> * It can be used to generate help text files.
>> * It can open a tkinter search index and from that launch a web server and
>> a browser to veiw a html help page.
>> * It can be used to generate static html help files.
>>
>>
>> It looks (to me) like splitting it into two modules would be good. One module
>> for just the text help and introspection functions, and the other for the html
>> server and html output stuff.
>
> Yes, I remember several cases where I had to copy code out of pydoc.py because I wanted
> to reuse it and could not because pydoc pulls in too much stuff (I care about this when
> freezing my programs with py2exe).
> Is splitting pydoc into 2 modules sufficient, or should it even be split into an own package?
That is one of the questions I have, which would be preferable. Here's a list
of files I have and what they do.
pyhelp.py - Command line option parser / front end
gettext.py - Generates text output
scanner.py - module and search functions
_pydoc.py - starts server and web browser
gethtml.py - Generate html output
server.py - html server
pager.py - multy-platform console text pager
stringtools.py - frequently used string formatting functions
stylesheet.css
There is still quite a bit of inter-dependence between these, but not anywhere
near as complex as the original was. I think you will need to look at the source
to see what is actually going on though. I'll be posting a link to it either
today or tomorrow.
> Although I do not believe that this is on-topic for *this* list; I would prefer
> such changes to go into Python 2.6 already.
As Brett said, and Guido promoted by asking for volunteers:
On 12/18/06, Brett Cannon <brett at python.org> wrote:
> A Python pie-in-the-sky list (python-ideas?) seems reasonable. Let's
> python-dev focus on maintaining the current code, python-3000 on
> Py3K-specific work, and the ideas list to be where new ideas are vetted out
> and congealed into a PEP to bring to either python-3000 or python-dev.
While we could hash out the exact meaning of 'pie-in-the-sky', 'new-ideas',
'vetted out and congealed', etc... my general impression is that things that
aren't ready yet for python-dev or python-3000 should be here until they are
ready. Then of course, it could be moved to python-dev if you prefer. I would
like that too.
This give us a place where we can have in progress discussion of features and
*alternatives* without disrupting python-dev or python-3000 with things that
aren't ready.
In this case, there is still a lot more this needs before it's ready I think. A
PEP? A fully (or mostly) working patch? But maybe if others take an interest
here, it won't be here long. ;-)
Cheers,
Ron
More information about the Python-ideas
mailing list