[Zope-CMF] Proposal for hooking rendering
Paul Everitt
paul at zope-europe.org
Tue Nov 29 03:34:09 EST 2005
Hi all. I'd like to make a small proposal to enable investigation of a
larger proposal.
I'm generally interested in the ideas of pipelines for markup rendering.
Specifically, I'm interested in separating the concerns of skin
scripters and corporate ID people into two logical parts:
http://www.zope.org/Wikis/DevSite/Projects/ComponentArchitecture/SiteThemes
http://www.zope.org/Members/zopepaul/zopesitethemesdiagram.png
This isn't revolutionary stuff. It's a meme that appears in Typo3 and a
few Python templating systems.
At the EuroPython sprint, Tres coded up a nice little ZCML pipeline
product that hooked Zope 3.1's publication events. However, this event
isn't usable in Five 1.3.
Here's my small proposal for a near-term CMF 1.x release:
1) In CMFCore/FSPageTemplate.py, modify its pt_render or _exec.
2) Check to see if there is a configured pipeline tool.
3) If so, run the result of:
result = self.pt_render(extra_context=bound_names)
...through the tool and return it.
Things I'm not proposing:
1) CMF out-of-the-box contains any tool nor any pipelines.
2) I'm not asking others to do the work on these. I'll learn enough to
make some prototypes.
Before I write a proper proposal, though, I'd like to find out if there
is basic interest:
1) Does the CMF have an interest in experimenting with ideas on
splitting corporate ID responsibilities from product skin responsibilities?
2) Is the idea of a portal tool wired into ZPT rendering a low-impact
way to do this experimentation?
Downsides:
1) Fundamental changes to the 1.x series might be suspicious.
2) This will, one day, be superseded by event subscribers.
3) Once this door opens, it might quickly turn into a monster (pipeline
chains, etc.).
--Paul
More information about the Zope-CMF
mailing list