def text(self, el):
self.quotewrite(el)
+ def rawcode(self, el):
+ self.write(el)
+
def attrval(self, buf):
qc, qt = (u"'", u"'") if u'"' in buf else (u'"', u""")
self.write(qc)
self.element(el)
elif isinstance(el, cons.text):
self.text(el)
+ elif isinstance(el, cons.raw):
+ self.rawcode(el)
else:
raise Exception("Unknown object in element tree: " + el)
reind = False
if not self.simple(el):
sub = self.update(curind=self.curind + self.indent)
- sub.out.indent(sub.curind)
+ sub.reindent()
reind = True
for ch in el.children:
sub.node(ch)
if reind:
- self.out.indent(self.curind)
+ self.reindent()
self.endtag(el)
def element(self, el, **extra):
super(indenter, self).element(el, **extra)
if self.out.col > 80 and self.simple(el):
- self.out.indent(self.curind)
+ self.reindent()
+
+ def reindent(self):
+ self.out.indent(self.curind.encode(self.charset))
def start(self):
super(indenter, self).start()