sphinx.ext.viewcode --添加指向突出显示的源代码的链接

模块作者: Georg Brandl

Added in version 1.0.

此扩展模块查看您的Python对象描述 (.. class::.. function:: 等)并试图找到包含对象的源文件。找到后,将为每个模块输出一个单独的HTML页面,其中包含突出显示的源代码版本,并将一个链接添加到指向所述对象的源代码的所有对象描述。还将插入从源返回到描述的链接。

警告

基本上, viewcode Extension将导入要链接到的模块。如果任何模块在导入时有副作用,这些模块将在 sphinx-build 就是奔跑。

如果您记录脚本(与库模块相对),请确保它们的主例程受 if __name__ == '__main__' 条件。

此外,如果您不想通过以下方式导入模块 viewcode ,您可以告诉源代码所在位置 viewcode 使用 viewcode-find-source 事件。

如果 viewcode_follow_imported_members 时,您还需要使用 viewcode-follow-imported 事件。

此扩展仅适用于与HTML相关的构建器,如 htmlapplehelpdevhelphtmlhelpqthelp 以此类推,除了 singlehtml 。默认情况下 epub 构建器不支持此扩展(请参见 viewcode_enable_epub )。

配置

viewcode_follow_imported_members
类型:
bool
默认:
True

如果这是 True ,视图代码扩展将发出 viewcode-follow-imported 事件通过其他扩展解析模块的名称。

Added in version 1.3.

在 1.8 版本发生变更: 重命名自 viewcode_importviewcode_follow_imported_members

viewcode_enable_epub
类型:
bool
默认:
False

如果这是 True ,即使您使用epub构建器,也会启用视频码扩展。此扩展在toctree外部生成页面,但作为epub格式不受欢迎。

在1.4.x之前,始终启用此扩展。如果希望生成与1.4.x相同的epub,则应设置 True ,但epub格式检查器的分数变得更差。

Added in version 1.5.

警告

并非所有epub阅读器都支持由视图代码扩展生成的页面。这些读者忽略了指向不在toctree下的页面的链接。

某些阅读器渲染结果已损坏, epubcheck 的分数变得更差,即使读者支持。

viewcode_line_numbers
类型:
bool
默认:
False

如果设置为 True ,内联行号将添加到突出显示的代码中。

Added in version 7.2.

viewcode-find-source(app, modname)

Added in version 1.8.

查找模块的源代码。此事件的事件处理程序应返回源代码本身的元组和标记词典。字典将类、函数、属性等的名称映射到其类型、开始行号和结束行号的元组。类型应为“CLASS”、“DEF”或“OTHER”之一。

参数:
  • app -- Sphinx应用程序对象。

  • modname -- 要查找其源代码的模块的名称。

viewcode-follow-imported(app, modname, attribute)

Added in version 1.8.

查找属性的原始模块的名称。

参数:
  • app -- Sphinx应用程序对象。

  • modname -- 属性所属的模块的名称。

  • attribute -- 要跟随的成员的名称。