x-ref带有intershinx的python标准库,同时省略模块名称



编辑:欢迎我提供的答案之外的其他答案!

考虑以下功能:

from pathlib import Path
from typing import Union

def func(path: Union[str, Path]) -> None:
"""My super function.
Parameters
----------
path : str | Path
path to a super file.
"""
pass

当用斯芬克斯进行记录时,我想用intershinx交叉引用strPath。但显然,它不适用于后者,因为它在objects.inv文件中被引用为pathlib.Path

有没有办法告诉interthinx/sphinxPath来自pathlib模块?无需求助:

path : str | `pathlib.Path`

path : str | `~pathlib.Path`

它在python解释器(例如IPython(中不能很好地呈现。

numpydoc可以通过x-ref别名执行此操作:https://numpydoc.readthedocs.io/en/latest/

在配置conf.py:中

numpydoc_xref_param_type = True
numpydoc_xref_aliases = {
"Path": "pathlib.Path",
}

它可能会尝试匹配parameters、other parameters、Returns和Yields部分的参数类型中的其他单词。可以通过在配置conf.py中添加以下内容来忽略它们:

numpydoc_xref_ignore = {
"of",
"shape",
}

numpydoc还提供了其他有用的工具,如文档验证,可以在conf.py中使用此处描述的密钥进行配置:https://numpydoc.readthedocs.io/en/latest/install.html#configuration

相关内容

  • 没有找到相关文章

最新更新