diff --git a/CHANGES b/CHANGES index b7298469b..b043b41d1 100644 --- a/CHANGES +++ b/CHANGES @@ -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 -------- diff --git a/sphinx/domains/std.py b/sphinx/domains/std.py index d8c843152..0fc0b69fd 100644 --- a/sphinx/domains/std.py +++ b/sphinx/domains/std.py @@ -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']) diff --git a/sphinx/ext/intersphinx.py b/sphinx/ext/intersphinx.py index 94b3e658a..99de68b73 100644 --- a/sphinx/ext/intersphinx.py +++ b/sphinx/ext/intersphinx.py @@ -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: