修复文档问题

修复文本

Shiboken的元素可以用来添加文本。 它的"replace"模式目前尚未实现。

修复代码片段

可以通过在sources/pyside6/doc/snippets下放置一个Python等效代码来替换代码片段。 目录结构与Qt的目录结构相匹配。要替换qtbase/examples/foo/snippet.cpp中id为0的代码片段, 请在该目录下放置一个文件qtbase/examples/foo/snippet_0.cpp.py(每个文件一个代码片段,代码片段id附加到基本名称上)。

更复杂的映射可以添加到 tools/snippets_translate/override.py

# 在Qt主版本更改后重新创建模块描述

源树中包含位于doc/extras目录下的.rst文件,这些文件包含模块描述(例如命名为“QtCore.rst”)。它们是从C++模块描述中提取/改编的。如果没有模块描述文件,shiboken将从qdoc生成的webxml文件中提取模块描述。这最终会出现在构建目录下的doc/rst/PySide6//index.rst中。它可以作为模块描述文件的起点。应该删除C++特定的信息,如构建说明。

描述可能会链接到教程,这些教程可以添加到additionaldocs.lst中以进行webxml提取。

维护 additionaldocs.lst

该文件是附加文档文件的列表。这些基本上是文档引用的Qt教程。它们将通过shiboken/sphinx进行一些Python适配。

可以通过以下脚本和一些手动编辑来创建列表。它将找到几乎所有文档。其中相当一部分可能未被引用,但没有好的方法来过滤这一点。存在于Python中的示例页面应被移除。

for F in *.webxml
do
    echo "$F" | egrep '(-index)|(-module)|(-qmlmodule)\.webxml$' > /dev/null
    if [ $? -ne 0 ]
    then
        if fgrep '<para>' "$F" > /dev/null # Exclude reference only
        then
            egrep "(<class )|(<namespace )" $F > /dev/null || echo $F
        fi
    fi
done

继承图

inheritance_diagram.pyproject 列出了涉及继承图生成的脚本,inheritance_diagram.py 是 sphinx 使用的主要脚本。其他脚本包含用于检查的主测试驱动程序。

有两个脚本用于确定继承关系: * json_inheritance.py(环境变量 INHERITANCE_FILE)读取一个 包含由shiboken的文档生成器生成的类层次结构的inheritance.json文件。

  • import_inheritance.py 实际上尝试导入类(遗留)