This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!
Project Description

repoze.bfg.chameleon_genshi

Bindings for Chameleon Genshi-style templating support under repoze.bfg. See the Chameleon website for chameleon.genshi templating language details.

The API for use of repoze.bfg.chameleon_genshi under BFG is identical to the one used for chameleon.zpt` templates as documented in the “Templating” chapter of the BFG docs. Only the templating language itself (Genshi vs. ZPT) and import locations (r.b.chameleon_genshi vs. r.b.chameleon_zpt) differ.

An example:

from repoze.bfg.chameleon_genshi import render_template_to_response
render_template_to_response('relative/path/to/template')

relative/path/to/template is relative to the package directory in which the above code is defined.

See also the render_template and get_template APIs exposed by the repoze.bfg.chameleon_genshi package, which serve the same purpose as their brethren in repoze.bfg.chameleon_zpt.

Genshi templates can also be used as a BFG “renderer” when you use repoze.bfg.chameleon_genshi. The easiest way to allow for this is to use the following ZCML in your application’s configure.zcml:

<include package="repoze.bfg.chameleon_genshi"/>

Once your application has been set up to process this ZCML, your application can point at chameleon.genshi templates that have the .genshi file extension from within @bfg_view directives or ZCML view directives in your application. For example:

@bfg_view(renderer='templates/foo.genshi')
def someview(request):
    ....

Or:

<view
  renderer="templates/foo.genshi"
  view=".views.someview"/>

If you’d rather not use a .genshi extension for your chameleon.genshi templates, or if you’d rather not use ZCML to do registration, you can explicitly register a renderer using the add_renderer method of a “configurator”. To do so, in the run.py of your BFG application, in the function called at startup, which uses a repoze.bfg.configuration.Configurator as config:

from repoze.bfg.chameleon_genshi import renderer_factory
config.add_renderer('.cgenshi', renderer_factory)

Once you’ve registered .cgenshi as a renderer in a view configuration, you can do the following:

@bfg_view(renderer='templates/foo.cgenshi')
def someview(request):
    ....

Misc

By default, Chameleon’s Genshi XIncludes support cannot resolve repoze.bfg “resource specifications” (e.g. my_package:foo/bar.genshi). In order to activate an XIncludes class that understands repoze.bfg resource specifications, call the repoze.bfg.chameleon_genshi.XIncludes.activate method before using any templates (e.g., at process startup time):

from repoze.bfg.chameleon_genshi import XIncludes
XIncludes.activate()

This will replace the XIncludes helper class for all consumers of Chameleon in the process.

repoze.bfg.chameleon_genshi

0.3 (2010-07-09)

  • By default, Chameleon’s Genshi XIncludes support cannot resolve repoze.bfg “resource specifications” (e.g. my_package:foo/bar.genshi). In order to activate an XIncludes class that understands repoze.bfg resource specifications, call the repoze.bfg.chameleon_genshi.XIncludes.activate method before using any templates (e.g., at process startup time):

    from repoze.bfg.chameleon_genshi import XIncludes
    XIncludes.activate()
    

    This will replace the XIncludes helper class for all consumers of Chameleon in the process.

  • Depend on Chameleon >= 1.2.8 (replaceable XIncludes class).

0.2 (2010-06-15)

  • Bring up to speed with BFG 1.3.X.

0.1 (2009-05-02)

  • Initial release (break code out of BFG core).
Release History

Release History

0.3

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
repoze.bfg.chameleon_genshi-0.3.tar.gz (8.1 kB) Copy SHA256 Checksum SHA256 Source Jul 9, 2010

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting