def __init__(self, *args, **kw): self.GTW = GTW = JNJ.GTW(self) self.env = env = JNJ.Environment.HTML(*args, GTW=GTW, **kw) self.Template_Type = T = Template_E.New \ ( "x" , By_Path = {} , Map = {} , Media_Map = {} , css_href_map = {} , etag = None ) self.Template_Map = T.Map for t in sorted(pyk.itervalues(Template.Map), key=TFL.Getter.id): T.copy(env, t)
def HTML \ ( version = "html/5.jnj" , load_path = () , loader = None , globals = {} , encoding = "utf-8" , i18n = False , Media_Parameters = None , GTW = None , prefixes = {} , ** kw ) : jnj_loader = FileSystemLoader (sos.path.dirname (__file__), "utf-8") loaders = [] if loader : loaders.append (loader) if load_path : loaders.append (FileSystemLoader (load_path, encoding)) loaders.append (jnj_loader) if prefixes : sk = lambda x : (- len (x [1]), x [1]) for prefix, lp in sorted (pyk.iteritems (prefixes), key = sk) : loaders.append \ ( PrefixLoader ({prefix : FileSystemLoader (lp, encoding)}, delimiter='::') ) loaders.append (PrefixLoader (dict (STD = jnj_loader), delimiter='::')) loader = ChoiceLoader (loaders) extensions = (kw.pop ("extensions", []) + Default_Extensions) if i18n : extensions.append ("jinja2.ext.i18n") result = Environment \ ( extensions = uniq (extensions), loader = loader, ** kw) if GTW is None : GTW = JNJ.GTW (result) result.globals.update \ ( globals , GTW = GTW , html_version = version ) result.Media_Parameters = Media_Parameters result.encoding = encoding result.static_handler = None if i18n : result.install_gettext_translations (TFL.I18N) return result