Commits

Martin Geisler committed 876a931

minirst: better interaction between comments and margins

You can now split a list with a comment:

* foo

.. separator

* bar

and the two list items will no longer be run together, that is the
output is

* foo

* bar

instead of

* foo
* bar

Comments (0)

Files changed (1)

mercurial/minirst.py

         b = blocks[i]
         if b['type'] == 'paragraph' and b['lines'][0].startswith('.. '):
             del blocks[i]
+            if i < len(blocks) and blocks[i]['type'] == 'margin':
+                del blocks[i]
         else:
             i += 1
     return blocks
     blocks = hgrole(blocks)
     blocks = splitparagraphs(blocks)
     blocks = updatefieldlists(blocks)
+    blocks = addmargins(blocks)
     blocks = prunecomments(blocks)
-    blocks = addmargins(blocks)
     blocks = findadmonitions(blocks)
     text = '\n'.join(formatblock(b, width) for b in blocks)
     if keep is None:
     blocks = debug(splitparagraphs, blocks)
     blocks = debug(updatefieldlists, blocks)
     blocks = debug(findsections, blocks)
+    blocks = debug(addmargins, blocks)
     blocks = debug(prunecomments, blocks)
-    blocks = debug(addmargins, blocks)
     blocks = debug(findadmonitions, blocks)
     print '\n'.join(formatblock(b, 30) for b in blocks)