# HG changeset patch # User Jeff Hammel # Date 1294365898 28800 # Node ID c20277dbf8fa67836cca3b2bfc4d1f4d9fb49a9a # Parent b91133e3b02d92ba320f040ca1489c19a0b8e88f closer to substitution diff -r b91133e3b02d -r c20277dbf8fa makeitso/template.py --- a/makeitso/template.py Thu Jan 06 17:58:34 2011 -0800 +++ b/makeitso/template.py Thu Jan 06 18:04:58 2011 -0800 @@ -110,14 +110,17 @@ def missing(self, **variables): vars = self.get_variables(**variables) missing = set([]) + + # get known needed variables + for var in self.vars: + if var.name not in vars: + missing.add(var) + if self.look: - pass - else: - for var in self.vars: - if self.usedefaults: - import pdb; pdb.set_trace() - else: - pass + # scan templates for other variables + raise NotImplementedError + + return missing def pre(self, **variables): """do stuff before interpolation""" @@ -125,8 +128,16 @@ def substitute(self, **variables): """do the substitution""" vars = self.get_variables(**variables) - self.pre(**variables) + self.pre(**vars) self.check_missing(vars) + + # do the substitution + PolyTemplate(self.templates, + output=self.output, + interactive=self.interactive, + variables = vars + + self.post(**variables) def post(self, **variables):