Skip to content

docs: fix keyword and type documentation rendering in Libdoc - #5423

Merged
aaltat merged 1 commit into
MarketSquare:mainfrom
aaltat:fix/keyword-doc-rendering
Nov 1, 2026
Merged

aaltat merged 1 commit into
MarketSquare:mainfrom
aaltat:fix/keyword-doc-rendering

Conversation

@aaltat

@aaltat aaltat commented Nov 1, 2026

Copy link
Copy Markdown
Member

Summary

Docstring-only. With docstrings stripped, the code is identical to main.

Record Keyword, Record Keywords and Record Selector arrived in #5413, after #5266 converted the argument tables, so they missed the conversion:

-| =Arguments= | =Description= |
-| ``label`` | Shown in the toolbar header, to say which element to pick. |
+*Arguments:*
+  - ``label``: Shown in the toolbar header, to say which element to pick.

Single backticks ask Libdoc for a link. With no target, a plain value renders as a name instead of code. With a target it links somewhere wrong: path in RecordHar linked to the Path type.

-Where `duration` is time format
+Where ``duration`` is time format

Also in data_types.py: not_set, omitContent, path, prefers-reduced-motion, reduce, no-preference, library, playwright, pause_at, fast_forward, run_for, resume, node.innerText, node.textContent. The triple-backtick fence in the library intro, which rendered a stray backtick, is now inline code.

AutoClosingLevel and PlaywrightLogTypes are used only by __init__, and Libdoc builds type link targets from keywords, so `X` never resolved for them:

-see `PlaywrightLogTypes`
+see [#type-PlaywrightLogTypes|PlaywrightLogTypes]

Evidence

RF 7.5 Libdoc spec, specdocformat=HTML:

  • Before: the three Record keywords have 0 of 8 arguments documented. Unresolved <span class="name"> values include duration, width, the values above, a stray ` and the two types.
    After: 8 of 8 arguments documented. The only unresolved name left is matches, from the assertionengine package.

Chromium, docs/Browser.html from inv docs:

  • Before: AutoClosingLevel and PlaywrightLogTypes were plain text with nothing to click.
    After: clicking the AutoClosingLevel link sets the hash and shows the modal background, the same as a Libdoc-generated type link.

inv node-build, inv lint-python and inv docs pass. inv utest: 1542 passed, 2 skipped. Acceptance tests not run locally: no code changed.

Merge Danger

Door: two-way

Blast Radius: documentation

Translations see these docstrings as updated at the next release. The explicit type links were checked on RF 7.5. On RF 7.1.1 they were only read in the Libdoc template, which maps #type-X to #type-modal-X.

🤖 Generated with Claude Code

Record Keyword, Record Keywords and Record Selector arrived in MarketSquare#5413 after
MarketSquare#5266 converted the argument tables, so they kept the old table and had no
per-argument documentation in Robot Framework 7.5 Libdoc.

Single backticks on plain values made Libdoc look for a link target. Without
one they rendered as names, not code, and RecordHar's `path` linked to the
unrelated Path type. Use double backticks instead.

AutoClosingLevel and PlaywrightLogTypes are used only by __init__, and Libdoc
builds type link targets from keywords, so they now link to the type anchors
explicitly.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@sonarqubecloud

sonarqubecloud Bot commented Nov 1, 2026

Copy link
Copy Markdown

@aaltat
aaltat merged commit 8b7fb60 into MarketSquare:main Nov 1, 2026
59 of 61 checks passed
@aaltat
aaltat deleted the fix/keyword-doc-rendering branch November 1, 2026 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant