diff --git a/CHANGES b/CHANGES index c6530941b..99890cdf4 100644 --- a/CHANGES +++ b/CHANGES @@ -28,6 +28,8 @@ Release 1.2 (in development) * #1015: Stop overriding jQuery contains() in the JavaScript. +* #1028: Fix line block output in the text builder. + Release 1.1.3 (Mar 10, 2012) ============================ diff --git a/sphinx/writers/text.py b/sphinx/writers/text.py index e5ab070c7..862c5848d 100644 --- a/sphinx/writers/text.py +++ b/sphinx/writers/text.py @@ -71,6 +71,7 @@ class TextTranslator(nodes.NodeVisitor): self.stateindent = [0] self.list_counter = [] self.sectionlevel = 0 + self.lineblocklevel = 0 self.table = None def add_text(self, text): @@ -593,14 +594,18 @@ class TextTranslator(nodes.NodeVisitor): self.end_state(wrap=False) def visit_line_block(self, node): - self.new_state(0) + self.new_state() + self.lineblocklevel += 1 def depart_line_block(self, node): - self.end_state(wrap=False) + self.lineblocklevel -= 1 + self.end_state(wrap=False, end=None) + if not self.lineblocklevel: + self.add_text('\n') def visit_line(self, node): pass def depart_line(self, node): - pass + self.add_text('\n') def visit_block_quote(self, node): self.new_state()