bundled/jinja2/jinja2-debug.py @ 638009474a3b
api: Don't crash if the diff has no lines (in case of merge for instance)
| author | Benoît Allard <benoit@aeteurope.nl> |
|---|---|
| date | Mon, 23 Jan 2012 15:01:27 +0100 |
| parents | 256716e3a3d7 |
| children | (none) |
#!/usr/bin/env python # -*- coding: utf-8 -*- """ Jinja2 Debug Interface ~~~~~~~~~~~~~~~~~~~~~~ Helper script for internal Jinja2 debugging. Requires Werkzeug. :copyright: Copyright 2010 by Armin Ronacher. :license: BSD. """ import sys import jinja2 from werkzeug import script env = jinja2.Environment(extensions=['jinja2.ext.i18n', 'jinja2.ext.do', 'jinja2.ext.loopcontrols']) def shell_init_func(): def _compile(x): print env.compile(x, raw=True) result = { 'e': env, 'c': _compile, 't': env.from_string, 'p': env.parse } for key in jinja2.__all__: result[key] = getattr(jinja2, key) return result def action_compile(): print env.compile(sys.stdin.read(), raw=True) action_shell = script.make_shell(shell_init_func) if __name__ == '__main__': script.run()