ZPTDebugger is a Zope 2 product for templates debugging. It shows all Python and TAL expressions used during rendering.
Current release ZPTDebugger-1.1.2.tar. gz
List all available releases.
Or checkout the current code from SNV Plone Collective.
A little story
I hit on an idea of this products after searching for bug in Plone template that uses Archetypes. Because of this framework and Plone complexity there is a big chain of templates, macros and slots that are used to present final view of Archetypic content. So finding what is wrong there is a real challenge. Of course if somebody has a deep knowledge of those structure or has a lot of time he will find the solution. But if he didn’t.
Using ZPTDebuger you can easily see the values of each Python expression used in template and all other templates used by it. You can see the expression, its value, value type and time used to execute it.
This product is instantiated as simple Zope object but inside there is quite complicated algorithm. The expression evaluation is done very simple but methods that generates structure for nice tree-like view are more complicated. So unit tests are essential. How to use them see in Unit tests chapter. Product will monkey patch TALInterpreter and PageTemplates. Expressions but debugging functionality is disabled by default. It is enabled only during debugger call. But despite that it should’t be used on live instances.
This is FREE and OPEN SOURCE product. You can use anywhere for free and change it whatever you like.