# HG changeset patch # User Ludovic Chabant # Date 1435725560 25200 # Node ID d8d86debea81b03663169eceb3216cbb7e3038ae # Parent 1359b2b0cc73f52d8c663902a42907ddee150131 performance: Only use Jinja2 for rendering text if necessary. diff -r 1359b2b0cc73 -r d8d86debea81 piecrust/templating/jinjaengine.py --- a/piecrust/templating/jinjaengine.py Mon Jun 29 18:12:31 2015 -0700 +++ b/piecrust/templating/jinjaengine.py Tue Jun 30 21:39:20 2015 -0700 @@ -36,6 +36,19 @@ def renderString(self, txt, data, filename=None): self._ensureLoaded() + offset = 0 + do_render = False + index = txt.find('{') + while index >= 0: + ch = txt[index + 1] + if ch == '{' or ch == '%': + do_render = True + break + index = txt.find('{', offset + 1) + + if not do_render: + return txt + try: tpl = self.env.from_string(txt) except TemplateSyntaxError as tse: