Skip to main content
Help improve PyPI by participating in a 5-minute user interface survey!

Nontemplate is not a Templating Language

Project Description

For more information, see <http://code.zoic.org/nontemplate/>.

Summary

  • NonTemplate allows you to generate simple XML output directly in your Python code with a minimum of syntactic noise.
  • It uses the with statement introduced in Python 2.6 to ensure that once a tag is opened, it will be closed.
  • Python code and template codes can be interleaved naturally, without resorting to restrictive language constructions. Your favourite debugger can see, and set breakpoints in, every level of your template.
  • 100% pure Python (>= 2.6), and it works just fine in Python 3.0 as well.
  • Performance is comparable to the commonly used templating languages and is better than most.
  • Asynchronous use is easy: NonTemplate is happy reading from iterables and writing to IO streams. This means you can start sending XHTML to your clients while your database is still retrieving rows …

Example

import nontemplate

D = nontemplate.Document(doctype=nontemplate.doctype.html_2_0)

with D.html():
    D._comment("this is a test")
    D._comment("this --> is too")
    D._emit("<!-- testing & < > emit -->\n")
    with D.head():
        D.title()("foo")
    with D.body():
        with D.h1(id="foo"):
            D._text("This is a <foo> & test")
        with D.table(_class="cool"):
            with D.tbody():
                for row in range(1,3):
                    with D.tr():
                        for col in range(1,3):
                            D.td()("%d,%d" % (row,col))

Release history Release notifications

This version
History Node

0.13

History Node

0.12

History Node

0.11

History Node

0.1

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
nontemplate-0.13.tar.gz (4.4 kB) Copy SHA256 hash SHA256 Source None Sep 28, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page