コード例 #1
0
ファイル: render_pool.py プロジェクト: willthomson/grow
 def _create_jinja_env(self, locale='', root=None):
     kwargs = {
         'autoescape':
         True,
         'extensions': [
             'jinja2.ext.autoescape',
             'jinja2.ext.do',
             'jinja2.ext.i18n',
             'jinja2.ext.loopcontrols',
             'jinja2.ext.with_',
         ],
         'loader':
         self.pod.storage.JinjaLoader(
             self.pod.root if root is None else root),
         'lstrip_blocks':
         True,
         'trim_blocks':
         True,
     }
     if self.pod.env.cached:
         kwargs['bytecode_cache'] = self.pod.jinja_bytecode_cache
     kwargs['bytecode_cache'] = self.pod.jinja_bytecode_cache
     kwargs['extensions'].extend(self.pod.list_jinja_extensions())
     env = jinja_dependency.DepEnvironment(**kwargs)
     env.filters.update(
         filters.create_builtin_filters(env, self.pod, locale=locale))
     env.globals.update(
         **tags.create_builtin_globals(env, self.pod, locale=locale))
     env.tests.update(jinja_tests.create_builtin_tests())
     return env
コード例 #2
0
ファイル: render_pool.py プロジェクト: crystalsilver/grow
 def _create_jinja_env(self, locale='', root=None):
     kwargs = {
         'autoescape':
         True,
         'extensions': [
             'jinja2.ext.autoescape',
             'jinja2.ext.do',
             'jinja2.ext.i18n',
             'jinja2.ext.loopcontrols',
             'jinja2.ext.with_',
         ],
         'loader':
         self.pod.storage.JinjaLoader(
             self.pod.root if root is None else root),
         'lstrip_blocks':
         True,
         'trim_blocks':
         True,
     }
     if self.pod.env.cached:
         kwargs['bytecode_cache'] = self.pod.jinja_bytecode_cache
     kwargs['bytecode_cache'] = self.pod.jinja_bytecode_cache
     kwargs['extensions'].extend(self.pod.list_jinja_extensions())
     env = jinja_dependency.DepEnvironment(**kwargs)
     env.filters.update(filters.create_builtin_filters())
     get_gettext_func = self.pod.catalogs.get_gettext_translations
     # pylint: disable=no-member
     env.install_gettext_callables(
         lambda x: get_gettext_func(locale).ugettext(x),
         lambda s, p, n: get_gettext_func(locale).ungettext(s, p, n),
         newstyle=True)
     return env
コード例 #3
0
def create_jinja_env():
    root = os.path.join(os.path.dirname(__file__), 'dist')
    loader = storage.FileStorage.JinjaLoader(root)
    env = jinja2.Environment(loader=loader,
                             autoescape=True,
                             trim_blocks=True,
                             extensions=[
                                 'jinja2.ext.autoescape',
                                 'jinja2.ext.do',
                                 'jinja2.ext.i18n',
                                 'jinja2.ext.loopcontrols',
                                 'jinja2.ext.with_',
                             ])
    env.filters.update(filters.create_builtin_filters(env, None))
    return env
コード例 #4
0
ファイル: ui.py プロジェクト: rsau/grow
def create_jinja_env():
    root = os.path.join(utils.get_grow_dir(), 'ui', 'admin')
    loader = storage.FileStorage.JinjaLoader(root)
    env = jinja2.Environment(loader=loader,
                             autoescape=True,
                             trim_blocks=True,
                             extensions=[
                                 'jinja2.ext.autoescape',
                                 'jinja2.ext.do',
                                 'jinja2.ext.i18n',
                                 'jinja2.ext.loopcontrols',
                                 'jinja2.ext.with_',
                             ])
    env.filters.update(filters.create_builtin_filters())
    return env
コード例 #5
0
ファイル: pods.py プロジェクト: grow/grow
 def get_jinja_env(self, locale='', root=None):
     with self._jinja_env_lock:
         kwargs = {
             'autoescape': True,
             'extensions': [
                 'jinja2.ext.autoescape',
                 'jinja2.ext.do',
                 'jinja2.ext.i18n',
                 'jinja2.ext.loopcontrols',
                 'jinja2.ext.with_',
             ],
             'loader': self.storage.JinjaLoader(self.root if root is None else root),
             'lstrip_blocks': True,
             'trim_blocks': True,
         }
         if self.env.cached:
             kwargs['bytecode_cache'] = self._get_bytecode_cache()
         kwargs['extensions'].extend(self.list_jinja_extensions())
         env = jinja_dependency.DepEnvironment(**kwargs)
         env.filters.update(filters.create_builtin_filters())
         env.globals.update(
             **tags.create_builtin_globals(env, self, locale=locale))
         return env