插入图像并保留成员的默认顺序
Insert an image and preserve the default order of members
我想在 Sphinx 中使用某些方法后得到图像,我有:
Foo
============
.. autoclass:: Bar.foo
:exclude-members: baz
.. automethod:: baz
.. image:: ./images/baz_graph.png
问题是方法的顺序混淆了,方法 baz
现在是第一个出现的方法,甚至在 __init__
之前出现(默认顺序是 bysource
)。
我想要的是在一个方法之后插入一个图像,并让该方法和图像按 bysource
顺序排列。
没有办法像你想的那样解决这个问题。对任何排序选项和成员 :member:
、undoc-member
、:private-members:
等使用任何 .. automethod::
directive inside an .. autoclass::
directive (any directive declared for a member inside the containing outer directive) automatically places that declaration ahead of the remaining automated order options...
您必须以某种方式定义顺序,而 :bysource:
选项强加一种顺序;明确的指令声明强加了一个额外的顺序来取代前者。要对单个成员进行排序,您可以混合前两种排序,但如果这两种排序不能像您希望的那样工作,那么剩下的唯一可能的排序是 .rst
文件中每个成员的有序指令声明。
当然,显式声明尽可能少的成员并让自动选项填充剩余的成员很方便...但是如果您还想在每个成员下方包含一个图像,您唯一的选择是声明内部指令明确地使用 .. image::
指令。
我想在 Sphinx 中使用某些方法后得到图像,我有:
Foo
============
.. autoclass:: Bar.foo
:exclude-members: baz
.. automethod:: baz
.. image:: ./images/baz_graph.png
问题是方法的顺序混淆了,方法 baz
现在是第一个出现的方法,甚至在 __init__
之前出现(默认顺序是 bysource
)。
我想要的是在一个方法之后插入一个图像,并让该方法和图像按 bysource
顺序排列。
没有办法像你想的那样解决这个问题。对任何排序选项和成员 :member:
、undoc-member
、:private-members:
等使用任何 .. automethod::
directive inside an .. autoclass::
directive (any directive declared for a member inside the containing outer directive) automatically places that declaration ahead of the remaining automated order options...
您必须以某种方式定义顺序,而 :bysource:
选项强加一种顺序;明确的指令声明强加了一个额外的顺序来取代前者。要对单个成员进行排序,您可以混合前两种排序,但如果这两种排序不能像您希望的那样工作,那么剩下的唯一可能的排序是 .rst
文件中每个成员的有序指令声明。
当然,显式声明尽可能少的成员并让自动选项填充剩余的成员很方便...但是如果您还想在每个成员下方包含一个图像,您唯一的选择是声明内部指令明确地使用 .. image::
指令。