Back to the NVDA Scripting guide
Generating API documentation for NVDA
This is how I generated API documentation using the epydoc program on my Windows machine, November 2011.
- Install the 32-bit version of Python 2.7.2 from www.python.org/download - I tried a later version of Python, that didn't work, and the epydoc installer wouldn't install with the 64-bit version of Python.
- Add the Python folder path (e.g. "C:\Python27") to your system Path environment variable. I found if I didn't do this then I got lots of "could not find module" errors later on.
- Install the latest epydoc from epydoc.sourceforge.net You need to to right-click on the installer and select Run as Administrator - it won't automatically promote itself or trigger a UAC prompt itself.
- Get the NVDA source code using Bazaar. See Get the NVDA Source Code for how I did this.
(Apparently at this point you can call epydoc specifying "*.py *\*.py *\*\*.py" as arguments so as to catch the nested folders of py files. I didn't do this, so my method follows, but using the multiple-arguments is the correct way. Just so you know.)
- Put this VB Script file into your NVDA source code folder and run it. It will generate a batch file that will in turn call epydoc with all the py source files to process. MakeEpydoc.vbs The output file is called epydoc.bat and will appear in the same folder.
- Copy epydoc.bat to the Python Scripts folder, which is probably C:\Python27\Scripts, and run it.
- You should now have a folder called epydocs in the Scripts folder, which should contain all the generated API documentation, the start page for which is index.html.
Notes: The use of a VB Script file to generate a batch file to run epydoc makes zero sense to me, but I can't work out how to make epydoc process a whole folder. There are probably some better commandline options for epydoc, like "add a better title to the index.html page", but I just did that by hand. And I also added a bunch of lines to the system PythonPath variable: although that didn't make it work, it might have been necessary to do - I have no idea.
WebbIE home page