Fix #3487: intersphinx: failed to refer options

This commit is contained in:
Takeshi KOMIYA 2017-03-03 00:50:16 +09:00
parent 042c2beafa
commit 811df6b2e3
3 changed files with 5 additions and 1 deletions

View File

@ -23,6 +23,7 @@ Bugs fixed
return code
* #2073, #3443, #3490: gettext builder that writes pot files unless the content
are same without creation date. Thanks to Yoshiki Shibukawa.
* #3487: intersphinx: failed to refer options
Testing
--------

View File

@ -789,7 +789,7 @@ class StandardDomain(Domain):
for doc in self.env.all_docs:
yield (doc, clean_astext(self.env.titles[doc]), 'doc', doc, '', -1)
for (prog, option), info in iteritems(self.data['progoptions']):
yield (option, option, 'option', info[0], info[1], 1)
yield (option, option, 'cmdoption', info[0], info[1], 1)
for (type, name), info in iteritems(self.data['objects']):
yield (name, name, type, info[0], info[1],
self.object_types[type].attrs['searchprio'])

View File

@ -321,6 +321,9 @@ def missing_reference(app, env, node, contnode):
if not objtypes:
return
objtypes = ['%s:%s' % (domain, objtype) for objtype in objtypes]
if 'std:cmdoption' in objtypes:
# until Sphinx-1.6, cmdoptions are stored as std:option
objtypes.append('std:option')
to_try = [(env.intersphinx_inventory, target)]
in_set = None
if ':' in target: