Fredrik Lundh wrote:
> here's a simple (and only lightly tested) in-place indenter:
>
> def indent(elem, level=0):
> i = "\n" + level*" "
> if len(elem):
> if not elem.text or not elem.text.strip():
> elem.text = i + " "
> for elem in elem:
> indent(elem, level+1)
> if not elem.tail or not elem.tail.strip():
> elem.tail = i
> else:
> if level and (not elem.tail or not elem.tail.strip()):
> elem.tail = i
which can, in fact, be simplified too:
def indent(elem, level=0):
i = "\n" + level*" "
if not elem.text or not elem.text.strip():
elem.text = i + " "
for elem in elem:
indent(elem, level+1)
if not elem.tail or not elem.tail.strip():
elem.tail = i
(however, this is perhaps a bit too clever...)
</F>
_______________________________________________
XML-SIG maillist - [email protected]
http://mail.python.org/mailman/listinfo/xml-sig