summaryrefslogtreecommitdiff
path: root/docs/c2rst.py
diff options
context:
space:
mode:
authorDan Halbert <halbert@halwitz.org>2018-02-27 22:03:52 -0500
committerGitHub <noreply@github.com>2018-02-27 22:03:52 -0500
commit568c04e6afa8016062f685b2198c0209f62827f4 (patch)
treed07b76119f715add462983b335797adf64b61249 /docs/c2rst.py
parent6a2379fd0bfe10017d8abc5c36ef1d470c0d9b27 (diff)
parentea633117d01d94e8d56ed94344e4b3e46b4eef03 (diff)
Merge pull request #650 from tannewt/merge_2x3.0.0-alpha.2
Merge in commits from 2.x branch.
Diffstat (limited to 'docs/c2rst.py')
-rw-r--r--docs/c2rst.py20
1 files changed, 14 insertions, 6 deletions
diff --git a/docs/c2rst.py b/docs/c2rst.py
index 3018e62af..9ca8bc1bb 100644
--- a/docs/c2rst.py
+++ b/docs/c2rst.py
@@ -1,10 +1,18 @@
import sphinx.parsers
-import docutils.parsers.rst as rst
class CStrip(sphinx.parsers.Parser):
- def __init(self):
- self.rst_parser = rst.Parser()
+ def __init__(self):
+ self.rst_parser = sphinx.parsers.RSTParser()
- def parse(self, inputstring, document):
- print(inputstring)
- self.rst_parser(stripped, document)
+ def parse(self, inputstring, document):
+ # This setting is missing starting with Sphinx 1.7.1 so we set it ourself.
+ document.settings.tab_width = 4
+ stripped = []
+ for line in inputstring.split("\n"):
+ line = line.strip()
+ if line == "//|":
+ stripped.append("")
+ elif line.startswith("//| "):
+ stripped.append(line[len("//| "):])
+ stripped = "\r\n".join(stripped)
+ self.rst_parser.parse(stripped, document)