在狮身人面像中自定义方法签名

时间:2019-05-07 16:32:39

标签: python python-sphinx

有一种简单的方法可以在sphinx中格式化方法签名吗? 我正在使用RTD主题,并将其构建为html。

我目前遇到的问题是:

    使用打字模块创建的
  • 自定义类型注释将以其完整格式打印,但我只希望打印其名称(例如CustomType = Union[type1, type2, type3]应该简单地呈现为CustomType,但改为呈现为Union[type1, type2, type3]

  • 方法签名打印在一行上,我希望将其打印为缩进的自定义表单

  • 方法签名应该像在IDE中那样突出显示语法

我不确定如何实现这些自定义,在我看来html主题conf中没有任何选择。

我尝试的第一件事是像this code之类的东西,但是我有点卡住了。

第一刻,我还考虑过制作一个狮身人面像的叉子(就像这个用户确实试图解决另一个烦人的问题[PR]),但是后来我意识到,如果您不这样做,这样的事情真的很复杂。不太了解这个项目...

如有必要,我将提供更多详细信息。

1 个答案:

答案 0 :(得分:0)

这不能完全满足我的需求,但是至少从版本2.1开始,他们增加了从方法签名中排除类型提示的可能性。

您可以通过在docs conf.py文件中设置以下行来启用此功能:

autodoc_typehints = "none"

我还建议然后设置此变量以指定Sphinx的最低版本:

needs_sphinx = "2.1"