Five bridges and patches to use Chameleon with Zope 2.
Project description
Overview
The five.pt package brings the Chameleon template engine to the Zope 2 platform. It’s a drop-in replacement, providing bridges to the most common API.
Support for browser pages, viewlets and viewlet managers is included.
Usage
To enable Chameleon, simply include the ZCML configuration:
<include package="five.pt" />
Tempates may be instantiated directly. Here’s an example of a browser view which uses a view page template:
from Products.Five import BrowserView from five.pt.pagetemplate import ViewPageTemplateFile class SimpleView(BrowserView): index = ViewPageTemplateFile('simple.pt')
Other template classes are available, see the pagetemplate module.
For general information about Chameleon, see http://chameleon.repoze.org/.
Changelog
2.0-rc2 (2011-05-24)
Have the base template class implement IPageTemplate from zope.pagetemplate. This interface is relied on for a number of adapter registrations and the missing interface declaration affects packages such as plone.caching. [malthe]
Set default reload mode to the Zope 2 application server configuration’s debug_mode value. [malthe]
2.0-rc1 (2011-02-28)
Update to Chameleon 2.0.
This release includes many changes and is a complete rewrite of the 1.x series.
Note that Python 2.5+ is now required. [malthe]
Python-expressions are now subject to access-control security. [malthe]
1.3.3 - 2010-09-30
Apply patches at import time instead of product initialisation. [wichert]
1.3.2 - 2010-09-29
Add a same_type method to the default namespace. [wichert]
1.3.1 - 2010-09-23
Added support for eager loading (environment variable CHAMELEON_EAGER). This flag should be passed only in development mode and will reveal any templates which do not parse. [malthe]
1.3 - 2010-09-08
Added support for PageTemplate and ZopePageTemplate. [malthe]
1.2 - 2010-08-30
Fixed acquisition-wrapping issue: we need to wrap with the parent to avoid a pair of template objects (original and patched).
1.1 - 2010-05-15
Add DateTime to the base context. Fixes problems with certain ZMI pages. [wichert]
1.0 - 2010-05-13
If template is not an acquirer, wrap it implicitly. [malthe]
Removed unused ViewletManager ZCML handler. [malthe]
0.10 - 2010-04-20
Improve five.grok support [fretin]
Check if templates are acquisition-aware before trying to wrap them. This fixes problems with METAL macros in some ZMI pages. [wichert]
0.9 - 2010-04-14
Basic support for five.grok templates. [wichert]
0.8 - 2010-01-05
Fixed some calling convention oddity that would result in the view instance being passed doubly as the template arguments.
0.7 - 2009-05-20
Default encoding of the base template set to UTF-8. [malthe]
Update to latest Chameleon. [malthe]
Patch macros attribute. [malthe]
0.6 - 2009-04-06
Avoid another case of unconditionally attempting to Acquisition wrap template files. We do have an interface check for this. [hannosch]
0.5 - 2009-02-17
Added test function to template context. [malthe]
Fixed edge-case (special case?) where the view of a ViewPageTemplateFile is really only the view for a view. [malthe]
Added patch for Products.PageTemplates.PageTemplateFile. [malthe]
Rework the “full namespace provided to path expression” change introduced in 0.3. We no longer call the expensive locals() function but construct a minimal namespace with the context and request ourselves. [hannosch]
If the __get__ method is called uninstantiated, just return the class itself. [malthe]
five.pt 0.4 (released 2/13/2009)
Fixed issue where the template parameter to a viewlet manager directive was effectively ignored. [malthe]
Fixed acquisition-wrapping issue with the (patched) bound template class (could cause infinite loop due to cyclic acquisition chain). [malthe]
Moved evaluate_path and evaluate_exists over to z3c.pt, adding support for global path() and exists() functions for use in python: expressions to it (LP #317967). [sidnei]
five.pt 0.3 (released 12/17/2008)
Use bobo traversal if OFS.interfaces.ITraversable interface is provided. [malthe]
Adjusted the path expression to provide the full namespace to the render function and not just the request. This matches Zope2 behavior. [hannosch]
five.pt 0.2 (released 11/29/2008)
From Zope 2.12 onwards, do not acquisition-wrap content provider. [malthe]
Split out CMF-related code to separate package. [malthe]
Compatibility changes to support Zope 2.10. [malthe]
five.pt 0.1 (released 11/19/2008)
Initial release.
Simplified template class inheritance. [malthe]
Added path and exists functions to skin template namespace. [malthe]
Added call-support for old-style classes in path expressions. [malthe]
Added monkey-patches to replace template engine for module-level view page template instances. [malthe]
Made EContext class more robust. [malthe]
Register custom file-system page template class for use with CMF form controllers. [malthe]
Register custom file-system page template class for use with CMF directory views. [malthe]
Added meta-directives to register browser views, viewlets and viewlet managers using Chameleon templates. [malthe]
Updated to latest API. [malthe]
Package structure. [hannosch]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.