Welcome to Curtain’s documentation!

Curtain is a simple, small templating language. Its characteristics are:

  • Supports just about the same features of TAL and METAL together with the Zope internationalization extensions.
  • Is compiled [1].
  • Allows incremental production of code through a SAX event generator. In fact, Curtain could be better described as a SAX event processor, since SAX events are both its input and output.

If you want to use Curtain, you should go to the Installing Curtain chapter.


If you find a bug, we would love to hear about it so to fix it. You can find our bugtracking system at http://sourceforge.net/apps/trac/curtain. In order to be helpful what you can do is, in order of increasing awesomeness:

  • A plain bug report, writing a ticket which describe the problem.
  • Attaching also a minimal, working example which shows the problem in question.
  • Writing a patch against the latest SVN sources which solves the problem.
  • Writing a test case which checks for regressions.


If you want to keep in touch about Curtain development, you can also give a look at the Curtain blog, and perhaps subscribe to RSS feed.

Indices and tables


[1]The template is compiled once to Python code, then to bytecode through Python’s own mechanisms of code evaluation. There is not yet a support for saving the compiled version to a file for caching.

Table Of Contents

Next topic

Installing Curtain

This Page