docs/test2rst.py
changeset 2950 1b4c92621e23
parent 2825 7608f1e04205
child 2951 2ddc63d13af8
--- a/docs/test2rst.py	Tue Sep 19 12:52:22 2017 +0200
+++ b/docs/test2rst.py	Tue Aug 29 16:42:40 2017 +0200
@@ -17,22 +17,38 @@
     newlines = []
 
     code_block_mode = False
+    sphinx_directive_mode = False
 
     for line in orig.splitlines():
 
         # Emtpy lines doesn't change output
         if not line:
             newlines.append(line)
+            code_block_mode = False
+            sphinx_directive_mode = False
+            continue
+
+        # Ignore line
+        if line.endswith('#ignore'):
             continue
 
+        # Sphinx directives mode
+        if line.startswith('  .. '):
+
+            # Insert a empty line to makes sphinx happy
+            newlines.append("")
+
+            # And unindent the directive
+            line = line[2:]
+            sphinx_directive_mode = True
+
+        # Code mode
         codeline = line.startswith('  ')
-        if codeline:
+        if codeline and not sphinx_directive_mode:
             if code_block_mode is False:
                 newlines.extend(['::', ''])
 
             code_block_mode = True
-        else:
-            code_block_mode = False
 
         newlines.append(line)