Skip to main content

kamo is almost subset of mako, maybe

Project description

almost subset of mako. this is a toy package.

don’t use in production!!

# -*- coding:utf-8 -*-
import logging
from kamo import Template
logging.basicConfig(level=logging.DEBUG)


template = Template("""
<%
def decorate(s):
    return "** {} **".format(s)
%>
<%!from datetime import datetime%>

${greeting|decorate}
${name}: this is my first sample! (now: ${datetime.now()})
""")


print(template.render(name="foo", greeting="chears"))
print("----------------------------------------")
print(template.render(name="boo", greeting="chears"))

generated function is such as below.

from datetime import datetime


def render(io, **c):
    write = io.write
    def decorate(s):
        return "** {} **".format(s)

    write(str(decorate(c['greeting'])))
    write('\n')
    write(str(c['name']))
    write(': this is my first sample! (now: ')
    write(str(datetime.now()))
    write(')\n')

lookup template

foo.kamo

${name}: yup

foo.py

from kamo import TemplateManager
tm = TemplateManager(directories=["."])
template = tm.lookup("foo.kamo")    # find template from ["./foo.kamo"]
print(template.render(name="foo"))

Project details


Release history Release notifications | RSS feed

This version

0.0

Download files

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

Source Distribution

kamo-0.0.tar.gz (9.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page