Skip to content

Convert the FAQ from FML to Markdown - #1009

Merged
slachiewicz merged 2 commits into
masterfrom
faq-to-markdown
Aug 10, 2026
Merged

Convert the FAQ from FML to Markdown#1009
slachiewicz merged 2 commits into
masterfrom
faq-to-markdown

Conversation

@slachiewicz

Copy link
Copy Markdown
Member

Part of an estate-wide move of the remaining FAQ pages from FML to Markdown. FML is a
FAQ-specific Doxia format with no Markdown counterpart and doxia-converter cannot target
it, so the page is hand-written rather than converted.

Two commits, deliberately

  1. A pure rename, maven-archetype-plugin/src/site/fml/faq.fml
    maven-archetype-plugin/src/site/markdown/faq.md, no content change.
  2. The rewrite.

Git records a rename plus a rewrite in a single commit as a delete and an add, which stops
git log --follow. Splitting them keeps the history.
Please merge or rebase rather than squash, since squashing collapses the rename again.

Anchors are preserved, and that is the point

This page has been on maven.apache.org for years and is linked from outside, so no URL may
change. FML derives its anchor from the <faq id=…> attribute, whereas a Markdown heading
gets one derived from the question text — a different string. So each original id is
written out explicitly as an <a name> ahead of its heading, taken from the rendered HTML
rather than from the raw attribute.

Verification

Built the site before and after and compared the set of anchors the generated faq.html
actually serves:

anchors served
before packaging, authentication, old, excludes, top, bodyColumn
after the same six, plus five heading-derived ids

Every anchor present before is still present after — the set only grows. The <head> is
byte-identical, so the title and metadata are unchanged. site.xml needs no edit:
src/site/fml/faq.fml and src/site/markdown/faq.md both render to faq.html, and the
<item name="FAQ" href="faq.html"/> entry in the plugin's site.xml is untouched.

What is lost

FML generates a [top] back-link after each answer; those are dropped rather than
hand-written. The question now renders as an h3 heading instead of a definition term.
Those are the only rendering differences.

Drafted with Claude — please verify

Git records a rename plus a rewrite in one commit as a delete and an
add, which stops 'git log --follow'. Splitting the rename out keeps the
history. Please merge or rebase rather than squash.

Generated-by: Claude Opus 5 (1M context)
doxia-converter cannot target FML usefully - the questions come out as
link-reference syntax rather than headings, the [top] back-links become
links to a nonexistent 'top' page, and the contents links lose their #
anchors. The page is written out by hand instead.

Explicit anchors keep the existing deep links working. Markdown derives
a heading anchor from the question text, which is not the <faq id> the
site serves, so each id is written out as an <a name> ahead of its
heading.

Verified by building the site before and after and comparing the set of
anchors the generated faq.html actually serves. Every anchor present
before is still present after:

  before: packaging, authentication, old, excludes, top, bodyColumn
  after:  the same six, plus five heading-derived ids

The <head> is byte-identical, so the title and metadata are unchanged.
site.xml needs no edit - src/site/fml/faq.fml and
src/site/markdown/faq.md both render to faq.html.

FML generates a [top] back-link after each answer; those are dropped
rather than hand-written. The question now renders as an h3 heading
instead of a definition term. Those are the only rendering losses.

Generated-by: Claude Opus 5 (1M context)
@slachiewicz slachiewicz added the documentation Improvements or additions to documentation label Aug 10, 2026
@slachiewicz
slachiewicz marked this pull request as ready for review August 10, 2026 00:27
@slachiewicz
slachiewicz merged commit b13be00 into master Aug 10, 2026
20 of 21 checks passed
@slachiewicz
slachiewicz deleted the faq-to-markdown branch August 10, 2026 00:27
@github-actions github-actions Bot added this to the 3.4.2 milestone Aug 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant