如果我尝试引用自定义图形类
class MyFigure(
sphinx.util.docutils.SphinxDirective,
docutils.parsers.rst.directives.images.Figure
):
pass
def setup(app):
app.add_role('fig', MyFigure)
然后像使用它一样
.. fig:: foo.png
:name: myfig
Look at :ref:`myfig`.
任何引用都将失败,并显示
WARNING: undefined label: myfig
如何解决这个问题?
docutils.parsers.rst.directives.images.Figure
不是自定义的正确类,因为它不处理name
属性。改用狮身人面像的修补版本sphinx.directives.patches.Figure
。