I have completely re-written makedoc.py. It still uses the inspect module, but has one recursive parse method for everything, rather than separate ones. It's a bit of a pig, because I have to stop it trying to get into the standard library, and getting stuck in recursive loops where it reads to code from classes etc etc. It does work properly now, and indents nicely. It produces markdown compatible html, because otherwise markdown destroys underscores for italics. It has a nice link to the contents, that permanently loiters in the top right hand corner. Sorry for all the fuss and broken versions, Colin Rothwell
A preprocessor function has been added to escape any underscores, that aren't in code blocks. I think I've finally nailed the correct output! (What an adventure) Colin
Right then! makedoc had a bug whereby the indented code (for methods) didn't actually appear as code, due to markdown ignoring anything between block level items. I have solved this by switching the output mode to plain HTML (which, thankfully, markdown won't mind), adding a custom "pseudo html" tag (which markdown doesn't process whilst parsing the source) for indents, and running a very simple post-processor function afterwards. This means that you don't need to feed the output of makedoc into markdown.py (because you can't: it won't do anything), and raw HTML is output. Sorry for the broken version! Colin
make doc documents all methods, even those wrapped in classes. Classes within classes are not supported, however. It also adds a link to the top of the page after each modules name, to make browsing easier. It also doesn't add the colon and none after undocumented items.