comparison genshi/template/plugin.py @ 770:c290dc5a6813 stable-0.5.x

Ported [894] and [895] back to 0.5.x branch.
author cmlenz
date Tue, 01 Jul 2008 10:42:57 +0000
parents badb73198fb1
children 2c2e9e685424
comparison
equal deleted inserted replaced
767:f7682ced2777 770:c290dc5a6813
13 # history and logs, available at http://genshi.edgewall.org/log/. 13 # history and logs, available at http://genshi.edgewall.org/log/.
14 14
15 """Basic support for the template engine plugin API used by TurboGears and 15 """Basic support for the template engine plugin API used by TurboGears and
16 CherryPy/Buffet. 16 CherryPy/Buffet.
17 """ 17 """
18
19 from pkg_resources import resource_filename
20 18
21 from genshi.input import ET, HTML, XML 19 from genshi.input import ET, HTML, XML
22 from genshi.output import DocType 20 from genshi.output import DocType
23 from genshi.template.base import Template 21 from genshi.template.base import Template
24 from genshi.template.loader import TemplateLoader 22 from genshi.template.loader import TemplateLoader
89 return self.template_class(template_string) 87 return self.template_class(template_string)
90 88
91 if self.use_package_naming: 89 if self.use_package_naming:
92 divider = templatename.rfind('.') 90 divider = templatename.rfind('.')
93 if divider >= 0: 91 if divider >= 0:
92 from pkg_resources import resource_filename
94 package = templatename[:divider] 93 package = templatename[:divider]
95 basename = templatename[divider + 1:] + self.extension 94 basename = templatename[divider + 1:] + self.extension
96 templatename = resource_filename(package, basename) 95 templatename = resource_filename(package, basename)
97 96
98 return self.loader.load(templatename) 97 return self.loader.load(templatename)
Copyright (C) 2012-2017 Edgewall Software