Skip to content

content-metadata.md: unwrap HTMLBlock; markdown prose + indented HTML tables#47

Merged
jduval23 merged 1 commit into
rokudev:v2.0from
chrisdp:unwrap-content-metadata-tables
May 18, 2026
Merged

content-metadata.md: unwrap HTMLBlock; markdown prose + indented HTML tables#47
jduval23 merged 1 commit into
rokudev:v2.0from
chrisdp:unwrap-content-metadata-tables

Conversation

@chrisdp
Copy link
Copy Markdown
Contributor

@chrisdp chrisdp commented May 15, 2026

Summary

The whole body of content-metadata.md was wrapped in a JSX <HTMLBlock>{...}</HTMLBlock> template literal. ReadMe doesn't run its markdown processor inside HTMLBlock, so the 15 [text](doc:slug) references inside (ContentType → roInt, Rating Attribute Icons, ifHttpAgent, Roku OS 9.3 release notes, content-protection, etc.) rendered literally as bracket-and-parens text.

Changes

Drop the wrapper and rebuild the page so:

  • Prose (paragraphs, lists, headings, blockquotes) is plain markdown.
  • HTML tables stay HTML — they have nested tables, <br />, <a>, and bullet lists inside cells — but are now indented by nesting depth. Cells that contain a nested matrix table are broken across lines so the inner <table> sits at a reasonable level.
  • Standalone <pre><code>...</code></pre> snippets become markdown fenced blocks (and the &lt; / &gt; entities inside them are decoded so they render as <contentType> etc.).
  • The Confluence-era hljs syntax-highlighting <span> wrappers are stripped (they would have rendered literally outside HTMLBlock).
  • { and } in <td> text are written as JSX template literals ({'{'} / {'}'}) so MDX doesn't read them as JSX expressions; ".parameters[0].body" has its [0] escaped so it isn't read as a reference-style link; <img> tags are self-closed.
  • Link styles unified to markdown: <a href="/dev/docs/SLUG"> and [text](/dev/docs/SLUG) become [text](doc:SLUG); same-page <a href="#anchor"> becomes [text](#anchor); external <a href="URL"> with matching text becomes [URL](URL).

Inbound links to #digital-rights-management-drm-control-attributes and #playback-configuration-attributes are preserved because the heading text didn't change.

… tables

The whole body of this page was wrapped in a JSX
<HTMLBlock>{`...`}</HTMLBlock> template literal, which kept ReadMe's
markdown processor from rendering the 15 [text](doc:slug) references
inside (ContentType -> roInt, Rating Attribute Icons, ifHttpAgent,
Roku OS 9.3 release notes, content-protection, etc.).

Drop the wrapper and rebuild the page so:
- Prose (paragraphs, lists, headings, blockquotes) is plain markdown.
- HTML tables stay HTML (they have nested tables, <br />, <a>, and
  bullet lists inside cells), but are now indented by nesting depth.
  Cells that contain a nested matrix table are broken across lines so
  the inner <table> sits at a reasonable level.
- Standalone <pre><code>...</code></pre> snippets become markdown
  fenced blocks (and the HTML entities &lt;/&gt; inside them are
  decoded so they render as `<contentType>` etc.).
- The Confluence-era hljs syntax-highlighting <span> wrappers are
  stripped (they were rendering literally outside HTMLBlock).
- { and } in <td> text are written as JSX template literals
  ({'{'} / {'}'}) so MDX doesn't read them as JSX expressions.
- ".parameters[0].body" has its [0] escaped so MDX doesn't read it
  as a reference-style link.
- <img> tags are self-closed for MDX.
- Link styles are unified to markdown: <a href="/dev/docs/SLUG"> and
  [text](/dev/docs/SLUG) become [text](doc:SLUG); same-page
  <a href="#anchor"> becomes [text](#anchor); external <a href="URL">
  with matching text becomes [URL](URL).

Inbound links to #digital-rights-management-drm-control-attributes
and #playback-configuration-attributes are preserved because the
heading text didn't change.
@jduval23 jduval23 merged commit 03b56f1 into rokudev:v2.0 May 18, 2026
1 check failed
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.

2 participants