Kid (templating language)

From HandWiki

Kid is a simple template engine for XML-based vocabularies written in Python. Kid claims to have many of the best features of XSLT, TAL, and PHP, but "with much of the limitations and complexity stamped out". Kid initially acted as the View component of the TurboGears framework in the framework's version 1.0 implementation; however, in version 1.1, the TurboGears project team replaced it with Genshi, citing perceived performance advantages.[1]

Kid is used by the Fedora Project in the repoview utility [2] which creates a set of static HTML pages within a YUM repository.

Example

Python part:

from kid import Template
template = Template(file='mytemplate.kid',
    title='bar',
    mylist=['1', '2', '3', '4', '5', '6']
)
print template.serialize()

Template part:

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:py="http://purl.org/kid/ns#">
  <head>
    <title py:content="title">title goes here</title>
  </head>
  <body>
    <ul>
      <li py:for="item in mylist" py:content="item">item goes here</li>
    </ul>
  </body>
</html>

References

  1. Replacing Kid with Genshi, A Brief Introduction to Kid Templates — TurboGears v1.0 documentation
  2. Repoview at Fedora Hosted

External links