Skip to content

Support template transclusion in Markdown pages #4

Description

@JeroenDeDauw

Problem

In v1, {{...}} is literal text on Markdown pages — no template transclusion, parser functions, or magic
words. On wikis that rely on templates (infoboxes, citations, navboxes), Markdown articles can't reuse that
shared content, which is a real limitation as Markdown becomes the default for article namespaces.

Why it's the hard one

Template output is wikitext or HTML (an infobox expands to a wikitext table), which does not compose cleanly
with a CommonMark pipeline — you'd be splicing expanded wikitext into a Markdown AST. This is why it was
deliberately scoped out of v1 (see SPEC "post-v1 roadmap: opt-in template expansion").

Possible directions (design needed)

  • Run MediaWiki's preprocessor over the source to expand {{...}}, then inject the result as raw HTML —
    works for templates that emit HTML, breaks for ones that emit wikitext needing further parsing.
  • A narrower, Markdown-native primitive that transcludes another page's rendered output, sidestepping the
    wikitext-in-Markdown composition problem.
  • Support only a safe subset (variables / simple string templates) first.

Should be opt-in. This is the most involved roadmap item and wants a real design pass before implementation.


Filed by Claude Code (Opus 4.8 (max)) at Jeroen De Dauw's direction, from the Native Markdown design
discussion. Jeroen sets direction and reviews; the AI drafted this from the project's notes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions