指定intersphinx链接到numpy,scipy和matplotlib的目标
按照设置包之间Sphinx文档链接的文档,我已经添加了
intersphinx_mapping = {'python': ('http://docs.python.org/2', None), 'numpy': ('http://docs.scipy.org/doc/numpy/', None), 'scipy': ('http://docs.scipy.org/doc/scipy/reference/', None), 'matplotlib': ('http://matplotlib.sourceforge.net/', None)}
到我的conf.py
,但似乎无法获得除Python本身以外的任何项目的链接工作。 例如
:term:`svg graphics <matplotlib:svg>`
只是带我到索引页面,没有添加预期的#term-svg
锚点,我什至不能findscipy
词汇表或找出如何确定:ref:
s或:term:
s是由一个包支持。
我在哪里可以find如何在numpy
, scipy
和matplotlib
为:ref:
s和:term:
指定目标的说明?
对于这个问题,我怎么链接到狮身人面像? 添加
intersphinx_mapping['sphinx'] = ('http://sphinx-doc.org/', None)
和
:ref:`Intersphinx <intersphinx>`
不起作用。
我在哪里可以find如何在
numpy
,scipy
和matplotlib
为:ref:
s和:term:
指定目标的说明?
我有一把吉斯与一些intersphinx
映射,现在包括所有的numpy
, scipy
和matplotlib
。 您应该能够在intersphinx_mapping
直接在intersphinx_mapping
使用这些条目。 如果任何人有进一步的条目添加到这个列表的build议,请随时张贴要求的要点的评论。
对于所有这些包,按照fgoudra的答案,我强烈build议使用sphobjinv
来解码和检查每个库的objects.inv
文件的语法。 (全面披露:我是sphobjinv
的作者。)(解码后的) objects.inv
每一行都提供了构build一个intersphinx
引用所需的所有信息。 请看这里的sphobjinv
文档。
numpy
是复杂的。 有时你需要一个完全合格的名字,例如:
:func:`numpy.cross`
其他时间(例如,对于C函数),您可以引用函数的基本名称,但是必须明确指示该域,例如:
:c:func:`PyArray_InnerProduct`
还有一些时候你可能不得不引用自定义np
域名,例如:
:np:func:`numpy.ma.append`
没有咨询objects.inv
真的没有办法知道什么是正确的语法。
scipy
大致和numpy
一样scipy
。 通过为各种scipy
子包引入大量的自定义域,事情变得更加复杂,例如:
:scipy-optimize:func:`scipy.integrate.newton_cotes`
对于matplotlib
,看来你总是必须在引用中提供(非常详细的)完全指定的对象名称,例如:
:meth:`matplotlib.axes.Axes.plot`
所有的matplotlib
代码对象似乎都驻留在默认的py
域,但是,这有点简化了事情。
对于其中的任何一个,如果您无法正确构build链接,首先要回退的是使用generic :obj:
role,例如:
:obj:`matplotlib.axes.Axes.plot`
这将构造一个intersphinx
链接,而不pipe特定对象被定义的angular色,但是我认为你仍然必须正确地指定任何相关的非默认域。 如果引用无法正确使用:obj:
angular色,则对象名称或域中存在错误。 检查两个地方的拼写错误。
可以手动指定要查看的库存。 例如,如果intersphinx_mapping['sphinx'] = ('http://sphinx-doc.org/', None)
不起作用,则可以随时下载清单并手动将其附加到映射中(例如,从http: //sphinx-doc.org/objects.inv ,将二进制文件保存在文档中,并在映射中追加path;这会给出类似于:
intersphinx_mapping['sphinx'] = ('http://sphinx-doc.org/', ('objects.inv', ), )
要validation清单中是否存在引用,可以使用sphobjinv python包浏览二进制文件,然后检查所需引用的位置。
这可能不是解决您的问题,但可以帮助debugging一些事情。