Discovering Zope/Plone APIs and docstrings with DocFinderTab
Although Zope and Plone documentation is really good, sometimes it's so comprehensive that we must read and browse lots of code before we get what we are looking for. DocFinderTab
provides a great way of finding it.
How to do it…
- Add the
Products.DocFinderTab
line in theeggs
parameter of[buildout]
part:[buildout] ... # Add additional eggs here eggs = iw.debug Products.DocFinderTab
- Build your instance again and launch it:
./bin/buildout ./bin/instance fg
Now you can navigate to your ZMI (Zope Management Interface) instance to see a new Doc tab. For instance, browse to the URL http://localhost:8080/plone/showDocumentation
to get the documentation tab as shown in the following screenshot:
You can also do this with a particular document, folder, or tool of your site:
http://localhost:8080/plone/front-page/showDocumentation
.http://localhost:8080/plone/events/showDocumentation
.http://localhost:8080/plone/portal_catalog/showDocumentation
.
How it works…
DocF
inderTab
is an introspection tool to expose Zope and Plone documentation from inside the ZMI.
The following paragraph explains how DocFinderTab
works:
It analyses any Zope object inside a running Zope, determines which classes have been used in the object's makeup and provides information about their class level attributes: name, allowed roles, arguments, documentation strings. It provides (read only) access to source code of Python implemented classes and methods.
The excerpt was taken from Dieter Maurer's website (http://www.dieter.handshake.de). He's the creator of DocFinder
, the Zope product used by DocFinderTab
.
There's more…
More information on DocFinderTab
is available at: http://plone.org/products/docfindertab.
To learn about how DocFinder
works visit http://www.dieter.handshake.de/pyprojects/zope/DocFinder.html.
If you are interested in more Python introspection, then visit http://diveintopython.org/power_of_introspection/index.html.