Mercurial > hg
view tests/test-template-engine @ 11343:f325db39c8b9
check-code: catch format(), introduced in Python 2.6
author | Martin Geisler <mg@aragost.com> |
---|---|
date | Tue, 15 Jun 2010 09:55:59 +0200 |
parents | babc00a82c5e |
children |
line wrap: on
line source
#!/bin/sh cat > engine.py << EOF from mercurial import templater class mytemplater(object): def __init__(self, loader, filters, defaults): self.loader = loader def process(self, t, map): tmpl = self.loader(t) for k, v in map.iteritems(): if k in ('templ', 'ctx', 'repo', 'revcache', 'cache'): continue if hasattr(v, '__call__'): v = v(**map) v = templater.stringify(v) tmpl = tmpl.replace('{{%s}}' % k, v) yield tmpl templater.engines['my'] = mytemplater EOF hg init test echo '[extensions]' > test/.hg/hgrc echo "engine = `pwd`/engine.py" >> test/.hg/hgrc cd test cat > mymap << EOF changeset = my:changeset.txt EOF cat > changeset.txt << EOF {{rev}} {{node}} {{author}} EOF hg ci -Ama hg log --style=./mymap