diff options
author | Cheryl Sabella <cheryl.sabella@gmail.com> | 2018-10-12 14:55:20 (GMT) |
---|---|---|
committer | Victor Stinner <vstinner@redhat.com> | 2018-10-12 14:55:20 (GMT) |
commit | 2d6097d027e0dd3debbabc702aa9c98d94ba32a3 (patch) | |
tree | 283b237b7e8da5afa68b5d79792d61f8d60596ac /Doc/tools/extensions | |
parent | da2bf9f66d0c95b988c5d87646d168f65499b316 (diff) | |
download | cpython-2d6097d027e0dd3debbabc702aa9c98d94ba32a3.zip cpython-2d6097d027e0dd3debbabc702aa9c98d94ba32a3.tar.gz cpython-2d6097d027e0dd3debbabc702aa9c98d94ba32a3.tar.bz2 |
bpo-11233: Create availability directive for documentation (GH-9692)
Replace "Availability: xxx" with ".. availability:: xxx" in the doc.
Original patch by Georg Brandl.
Co-Authored-By: Georg Brandl <georg@python.org>
Diffstat (limited to 'Doc/tools/extensions')
-rw-r--r-- | Doc/tools/extensions/pyspecific.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Doc/tools/extensions/pyspecific.py b/Doc/tools/extensions/pyspecific.py index 8036daa..132920f 100644 --- a/Doc/tools/extensions/pyspecific.py +++ b/Doc/tools/extensions/pyspecific.py @@ -131,6 +131,25 @@ class ImplementationDetail(Directive): return [pnode] +# Support for documenting platform availability + +class Availability(Directive): + + has_content = False + required_arguments = 1 + optional_arguments = 0 + final_argument_whitespace = True + + def run(self): + pnode = nodes.paragraph(classes=['availability']) + n, m = self.state.inline_text(':ref:`Availability <availability>`: ', + self.lineno) + pnode.extend(n + m) + n, m = self.state.inline_text(self.arguments[0], self.lineno) + pnode.extend(n + m) + return [pnode] + + # Support for documenting decorators class PyDecoratorMixin(object): @@ -401,6 +420,7 @@ def setup(app): app.add_role('issue', issue_role) app.add_role('source', source_role) app.add_directive('impl-detail', ImplementationDetail) + app.add_directive('availability', Availability) app.add_directive('deprecated-removed', DeprecatedRemoved) app.add_builder(PydocTopicsBuilder) app.add_builder(suspicious.CheckSuspiciousMarkupBuilder) |