summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPauli Virtanen <pav@iki.fi>2009-07-22 01:10:21 +0000
committerPauli Virtanen <pav@iki.fi>2009-07-22 01:10:21 +0000
commit2951b794d0b6498c5d6b2fd8c0f188a447bd8d14 (patch)
tree54eddbc8f1a4b7d3223da36df182a9da8fd4c847
parent32b71d5f6773d7f85f752bc252257ab32e62ca14 (diff)
downloadnumpy-2951b794d0b6498c5d6b2fd8c0f188a447bd8d14.tar.gz
numpydoc: fix issue with docutils < 0.5
-rw-r--r--doc/sphinxext/numpydoc.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/doc/sphinxext/numpydoc.py b/doc/sphinxext/numpydoc.py
index 70e304d69..0abdc7bc0 100644
--- a/doc/sphinxext/numpydoc.py
+++ b/doc/sphinxext/numpydoc.py
@@ -120,12 +120,17 @@ def setup(app, get_doc_object_=get_doc_object):
from docutils.statemachine import ViewList
def get_directive(name):
- from docutils.parsers.rst.directives import directive
+ from docutils.parsers.rst import directives
try:
- return directive(name, None, None)[0]
+ # docutils 0.4
+ return directives._directives[name]
+ except (AttributeError, KeyError):
+ pass
+ try:
+ return directives.directive(name, None, None)[0]
except AttributeError:
- return None
-
+ raise RuntimeError("No directive named '%s' found" % name)
+
def wrap_mangling_directive(base_directive_name, objtype):
base_directive = get_directive(base_directive_name)