X-Git-Url: http://dolda2000.com/gitweb/?p=wrw.git;a=blobdiff_plain;f=wrw%2Fsp%2Futil.py;h=931cbdb6d0269810d887d22d52749799f2ff1ac6;hp=5138f17de082ac8d85dba6c22b062d8694145a2b;hb=537064f6656c313c601126692d31628a85de663d;hpb=cb66c33fdb75345266af29fc4063bf833100cca5 diff --git a/wrw/sp/util.py b/wrw/sp/util.py index 5138f17..931cbdb 100644 --- a/wrw/sp/util.py +++ b/wrw/sp/util.py @@ -229,6 +229,7 @@ class indenter(formatter): self.inline = False self.stack = [] self.last = None, None + self.lastendbr = True def write(self, text): lines = text.split("\n") @@ -262,7 +263,7 @@ class indenter(formatter): def starttag(self, el): if not self.inline: - if self.last[0] == "<" and self.last[1].name == el.name: + if self.last[0] == "<" and self.last[1].name == el.name and self.lastendbr: pass else: self.br() @@ -279,8 +280,11 @@ class indenter(formatter): def endtag(self, el): il = self.inline self.pop() - if not il: + if il or (self.last[0] == ">" and self.last[1] == el): + self.lastendbr = False + else: self.br() + self.lastendbr = True super().endtag(el) def start(self, el):