self.scriptlets[name] = {
"lang" : "shell",
- "scriptlet" : self.expand_string("\n".join(lines)),
+ "scriptlet" : "\n".join(lines),
}
+ def get_scriptlet(self, name):
+ return self.scriptlets.get(name, None)
+
class PackageLexer(TemplateLexer):
def init(self, environ):
# Check if template exists.
assert self.template
+ def get_scriptlet(self, name):
+ scriptlet = self.scriptlets.get(name, None)
+
+ if scriptlet is None and self.template:
+ scriptlet = self.template.get_scriptlet(name)
+
+ if scriptlet and scriptlet["lang"] == "shell":
+ scriptlet["scriptlet"] = \
+ self.expand_string(scriptlet["scriptlet"])
+
+ return scriptlet
+
class ExportLexer(DefaultLexer):
@property
return self.get_deps("conflicts")
def get_scriptlet(self, type):
- scriptlet = self.lexer.scriptlets.get(type, None)
-
- if scriptlet is None and self.lexer.template:
- scriptlet = self.lexer.template.scriptlets.get(type, None)
-
- return scriptlet
+ return self.lexer.get_scriptlet(type)
@property
def inst_size(self):