원클릭으로
skill-qdoc-output
Reference for QDoc HTML output filename generation patterns by node type
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Reference for QDoc HTML output filename generation patterns by node type
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Qt documentation products, modules, repository structure, and API types. Apply when working with Qt documentation, resolving module names, or understanding Qt's documentation ecosystem.
Authoritative style rules for writing accessibility alt text in Qt documentation, including priority order, formatting rules, and terminology guidelines. Use when adding alt text to images.
Cross-product impact checking for Qt documentation changes. Load this skill whenever a doc change (page rename, title change, filename change, API rename, QML type rename) may affect products outside the changed module. Covers all doc.qt.io products, all doc-snapshots.qt.io products, and qt.io marketing pages. Provides verified snapshot paths, index file availability, link mechanisms per product, and search procedures in priority order. Use alongside doc-impact-analyzer Steps 5–6 or standalone when auditing cross-product reference breakage.
Structured findings report format shared by doc-structure-auditor and doc-impact-analyzer. Covers severity levels, finding types, summary tables, validation blocks, notes, and verdicts.
Reference for the Qt Doc Team diff format - generic feedback and recommendation template with validation and approval workflow
Language, grammar, and style guidelines for Qt documentation including active voice, terminology, QUIP 25 standards, and proper API documentation patterns. Covers both WHAT to write (style/content) and HOW to write it (QDoc syntax).
| name | skill-qdoc-output |
| description | Reference for QDoc HTML output filename generation patterns by node type |
| metadata | {"version":"1.0"} |
How QDoc generates HTML filenames for different documentation node types.
Primary implementation: qttools/src/qdoc/qdoc/src/qdoc/generator.cpp
| Function | Lines | Purpose |
|---|---|---|
Generator::fileBase() | 308-376 | Generates base filename without extension |
Generator::fileName() | 418-438 | Adds file extension to base |
Generator::outputPrefix() | 2103-2117 | Returns prefix by genus (e.g., "qml-") |
Generator::outputSuffix() | 2119-2132 | Returns suffix by node type |
Supporting code:
Utilities::asAsciiPrintable() - utilities.cpp:157-197 - Canonicalizes to lowercase ASCII| Node Type | Pattern | Example |
|---|---|---|
| C++ class | {classname}.html | qwidget.html |
| C++ class (namespaced) | {namespace}-{class}.html | qt-alignment.html |
| QML type | qml-{module}-{type}.html | qml-qtquick-rectangle.html |
| QML value type | qml-{type}.html | qml-color.html |
| C++ module | {module}-module.html | qtcore-module.html |
| QML module | {module}-qmlmodule.html | qtquick-qmlmodule.html |
| Group | {groupname}.html | animation.html |
| Example | {project}-{name}-example.html | qtbase-calculator-example.html |
| Page (overviews) | per \page command in source | getting-started.html |
Important: For \page documents, the HTML filename is explicitly specified in the source file's \page command. Always read the source to verify. For all other types (class, QML type, module, group, example), QDoc generates the filename automatically - verify via index files.
1. If CollectionNode:
- If QmlModule: append "-qmlmodule"
- Else if Module: append "-module"
- Else (Group): no suffix
- Append outputSuffix()
2. If TextPageNode:
- If Example: prepend "{project}-", append "-example"
3. If QmlType:
- If has logicalModuleName and not QmlBasicType:
- Prepend "{logicalModuleName}{outputSuffix}-"
- Prepend outputPrefix() (default: "qml-")
4. If ProxyNode:
- Append "-{moduleName}-proxy"
5. Else (C++ class/namespace):
- Build from parent chain with hyphens
- For undocumented-here namespaces: append "-sub-{moduleName}"
- Append outputSuffix()
6. Prepend outputPrefix()
7. Canonicalize with asAsciiPrintable()
The asAsciiPrintable() function:
HTML filenames can be verified in QDoc index files:
# Find class
grep 'class name="QWidget"' */doc/*/*.index
# Output: <class name="QWidget" href="qwidget.html" ...>
# Find QML type
grep 'qmlclass name="Rectangle"' */doc/*/*.index
# Output: <qmlclass name="Rectangle" href="qml-qtquick-rectangle.html" ...>
# Find group
grep '<group name="animation"' */doc/*/*.index
# Output: <group name="animation" href="animation.html" ...>
# Find module
grep '<module name="QtCore"' */doc/*/*.index
# Output: <module name="QtCore" href="qtcore-module.html" ...>
Prefixes and suffixes are configurable in qdocconf:
outputPrefixes = QML
outputPrefixes.QML = qml-
outputSuffixes = QML
outputSuffixes.QML =
Defaults:
Input: \qmltype Rectangle
\inqmlmodule QtQuick
Output: qml-qtquick-rectangle.html
Algorithm:
Input: \class Qt::Alignment
Output: qt-alignment.html
Algorithm:
Input: \group animation
\title Animation Framework
Output: animation.html
Algorithm: