sphinx objects.inv检查/操作工具
sphobjinv的Python项目详细描述
当前开发版本:
最新稳定版本:
信息:
使用狮身人面像?
在编写交叉引用时遇到问题?
sphobjinv(缩写为“sphinxobjects.inv”)可以帮助您!
函数sphinx交叉引用所需的语法是 在很多情况下不明显。有时候狮身人面像能正确地猜出 你的意思是,但它是相当击中或错过。最好的方法是 狮身人面像有一个完全指定的交叉引用 sphobjinv进来了。
在pip install sphobjinv之后,找到所需的文档集 交叉引用,并将其传递给sphobjinv suggest。
对于内部交叉引用,请在build/html:
中找到objects.inv。$ sphobjinv suggest doc/build/html/objects.inv as_rst -st 50 Name Score ----------------------------------------------------------- ------- :py:attribute:`sphobjinv.data.SuperDataObj.as_rst` 60 :py:function:`sphobjinv.cmdline.getparser` 50 :py:attribute:`sphobjinv.data.DataObjBytes.as_str` 50 :py:attribute:`sphobjinv.data.DataObjStr.as_str` 50 :py:attribute:`sphobjinv.data.SuperDataObj.as_str` 50 :py:attribute:`sphobjinv.inventory.Inventory.objects_rst` 50
上面shell命令中的-s参数指示打印 fuzzywuzzy与每个搜索结果匹配的分数,以及-t 50 更改匹配分数的报告阈值。
对于外部参考,只要找到它在web上的任何位置的文档, 并从文档集中传递sphobjinv suggesturl 使用--url/-u标志。例如,假设我需要知道如何 交叉引用烧瓶中的redirect()函数(请参见 here):
$ sphobjinv suggest http://flask.pocoo.org/docs/1.0/views/#method-hints redirect -su No inventory at provided URL. Attempting "http://flask.pocoo.org/docs/1.0/views/objects.inv" ... Attempting "http://flask.pocoo.org/docs/1.0/objects.inv" ... Remote inventory found. Name Score ------------------------------- ------- :py:function:`flask.redirect` 90
注意sphobjinv suggest的结果是使用 block指令,而交叉引用必须使用 内联指令。因此,上面的redirect()函数必须是 交叉引用为:func:`flask.redirect`,不:function:`flask.redirect`。
创建清单后需要编辑清单,还是从头开始编写清单?
sphobjinv也有帮助。
objects.inv文件可以在命令行中解压缩为纯文本:
$ sphobjinv convert plain -o doc/build/html/objects.inv doc/scratch/ Conversion completed. '...objects.inv' converted to '...objects.txt' (plain).
支持json输出(sphobjinv convert json ...),并且 库存可以重新压缩到 intersphinx读取的部分zlib压缩格式 (sphobjinv convert zlib ...)。
或者,sphobjinv公开一个api来实现 库存创建/修改:
>>> import sphobjinv as soi >>> inv = soi.Inventory('doc/build/html/objects.inv') >>> print(inv) <Inventory (fname_zlib): sphobjinv v2.0, 195 objects> >>> inv.project 'sphobjinv' >>> inv.version '2.0' >>> inv.objects[0] DataObjStr(name='sphobjinv.cmdline', domain='py', role='module', priority='0', uri='cli/implementation.html#module-$', dispname='-')
API还支持直接重新导出库存, 供以后与intersphinx交叉引用一起使用。 见the docs 更多细节。
完整文档位于 Read The Docs。
在PyPI上提供 (pip install sphobjinv)。
版权所有(c)Brian Skin 2016-2018
许可证:麻省理工学院的许可证。见LICENSE.txt 完整的许可条款。