diff options
author | Tim Graham <timograham@gmail.com> | 2016-01-11 20:59:34 -0500 |
---|---|---|
committer | Tim Graham <timograham@gmail.com> | 2016-01-14 18:21:33 -0500 |
commit | e519aab43a419589e92fe284e4ce2f2e034aec6a (patch) | |
tree | e1af3c01ca87ff9b639ac45ec97ac9869d273c43 /docs/_ext/djangodocs.py | |
parent | fd1c5bb041abb617dc58c336a8461fb3a7af4508 (diff) | |
download | django-e519aab43a419589e92fe284e4ce2f2e034aec6a.tar.gz |
Fixed #23868 -- Added support for non-unique django-admin-options in docs.
Also documented missing short command line options to fix #24134. This bumps
the minimum sphinx version required to build the docs to 1.3.4.
Thanks Simon Charette for review.
Diffstat (limited to 'docs/_ext/djangodocs.py')
-rw-r--r-- | docs/_ext/djangodocs.py | 41 |
1 files changed, 4 insertions, 37 deletions
diff --git a/docs/_ext/djangodocs.py b/docs/_ext/djangodocs.py index bc653f78fa..048363122f 100644 --- a/docs/_ext/djangodocs.py +++ b/docs/_ext/djangodocs.py @@ -9,6 +9,7 @@ from docutils import nodes from docutils.parsers.rst import directives from sphinx import addnodes from sphinx.builders.html import StandaloneHTMLBuilder +from sphinx.domains.std import Cmdoption from sphinx.util.compat import Directive from sphinx.util.console import bold from sphinx.util.nodes import set_source_info @@ -46,12 +47,7 @@ def setup(app): indextemplate="pair: %s; django-admin command", parse_node=parse_django_admin_node, ) - app.add_description_unit( - directivename="django-admin-option", - rolename="djadminopt", - indextemplate="pair: %s; django-admin command-line option", - parse_node=parse_django_adminopt_node, - ) + app.add_directive('django-admin-option', Cmdoption) app.add_config_value('django_next_version', '0.0', True) app.add_directive('versionadded', VersionDirective) app.add_directive('versionchanged', VersionDirective) @@ -295,39 +291,10 @@ class DjangoHTMLTranslator(SmartyPantsHTMLTranslator): def parse_django_admin_node(env, sig, signode): command = sig.split(' ')[0] - env._django_curr_admin_command = command + env.ref_context['std:program'] = command title = "django-admin %s" % sig signode += addnodes.desc_name(title, title) - return sig - - -def parse_django_adminopt_node(env, sig, signode): - """A copy of sphinx.directives.CmdoptionDesc.parse_signature()""" - from sphinx.domains.std import option_desc_re - count = 0 - firstname = '' - for m in option_desc_re.finditer(sig): - optname, args = m.groups() - if count: - signode += addnodes.desc_addname(', ', ', ') - signode += addnodes.desc_name(optname, optname) - signode += addnodes.desc_addname(args, args) - if not count: - firstname = optname - count += 1 - if not count: - for m in simple_option_desc_re.finditer(sig): - optname, args = m.groups() - if count: - signode += addnodes.desc_addname(', ', ', ') - signode += addnodes.desc_name(optname, optname) - signode += addnodes.desc_addname(args, args) - if not count: - firstname = optname - count += 1 - if not firstname: - raise ValueError - return firstname + return command class DjangoStandaloneHTMLBuilder(StandaloneHTMLBuilder): |