Translate the documentation into French - #31
Conversation
Sets up French as a third language and fixes its terminology before any page is translated, the order that kept terms from drifting in Finnish. Nothing is translated yet: fallback_to_default means every French URL serves the English page, and the status report lists all 21 as missing with the stamp each will need. Two French-specific rules the Finnish glossary does not cover: the address form is the vouvoiement imperative, and French typography needs a narrow no-break space before ; : ! ? and guillemets for quotations. carrier board is translated as "carte mère" on the same reasoning Matti applied to "emolevy" — familiarity over literal accuracy — and carries the same warning about inverting the CM5/board relationship. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
French takes the accurate term where Finnish took the familiar one. Recorded as a deliberate divergence rather than left to look like an inconsistency, so nobody harmonises the two languages later. One consequence worth having written down: the Finnish glossary warns translators to spell out the CM5/board relationship in passages where "emolevy" would invert it. French does not need that warning, because "carte porteuse" already says what the board is. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Twelve of 21 pages. None of these link into other pages, so they stand alone and the remaining nine can land separately. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
System Operation, the technical reference interfaces page and the Ubuntu guide. 15 of 21. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
16 of 21. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
18 of 21. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
19 of 21. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
20 of 21. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The last page, plus the anchor pass and stamps for all 21. Translating the remaining pages broke 20 anchors — four more than the Finnish pass, because in French the daemon and REST API headings also change slug where the Finnish ones happened to coincide with English. All 2925 anchors in the built site now resolve. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Self-reviewI wrote this branch and I do not read French, so this is a mechanical pass. It cannot tell you whether a sentence says the right thing — the limitation already stated in the description stands. One real defect, found by testing a claim I made rather than re-reading it. This PR adds a typography rule and breaks it 334 times
The 21 translated pages contain 334 plain spaces before those characters and zero narrow or non-breaking ones. Every It is not cosmetic. A plain space before a colon lets the line break in front of it, which is exactly the "sloppy-looking translated page" the glossary warns about — and it is the first thing a French reader notices. One thing worth deciding rather than assuming, since I wrote the rule too: U+202F (narrow no-break) is typographically correct but renders inconsistently across fonts. U+00A0 (ordinary no-break) is universally supported and is what most French technical documentation uses in practice. I would fix to U+00A0 and amend the glossary to say so, rather than chase the narrower character. Either is a scripted change over the same 334 sites; leaving them plain is the one option I would argue against. Everything else I could check is clean
Still unverifiedThe French prose itself. No one who reads French has looked at it, by decision. Everything above is structure and characters. 🤖 Generated with Claude Code |
This branch added the rule and then broke it 334 times: every French page used an ordinary space before ; : ! ?, and none used a no-break one. An ordinary space lets the line break in front of the punctuation, which is the first thing a French reader notices — and exactly the "sloppy-looking translated page" the glossary warns about. U+00A0 rather than the typographically precise U+202F: the narrow form renders inconsistently across fonts, while U+00A0 is universally supported and is what French technical documentation uses. The glossary now says so rather than describing the stricter rule nothing followed. Code fences and inline code were protected, so no command or config snippet changed. Heading slugs are unaffected — the slugifier treats U+00A0 as whitespace — and all 2925 anchors still resolve. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This branch added the rule and then half-applied it: all 28 quotations opened with „ (U+201E) and closed with a straight ASCII quote instead of “ (U+201C). A low opening quote paired with a vertical closing one looks broken to any German reader. Same failure as the French spacing rule on #31 — a typography rule written in one file and not followed in the others. The replacement is scoped, not blind: straight quotes also carry meaning as markdown syntax in `!!! type "Titel"` and inside code fences. Only the quote closing a „ pair changed; 34 admonition titles and every code fence are untouched. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Adds French as a third language. All 21 pages translated.
Read this before reviewing
Nobody who reads French has read this. That was decided rather than overlooked: the question was raised before any page was translated, and the answer was to publish without a French reviewer. Flagging it here so it is visible to whoever merges, not buried in a chat log.
What that means in practice: everything below is a mechanical check. None of it can tell you whether a sentence says the right thing. The pages carry fuse ratings, voltages, current limits, polarity instructions and ABYC references — a mistranslated "must" or an inverted polarity would pass every check in this PR.
Terminology
Fixed up front in
solutions/translation/french-glossary.md, before any page was translated — the order that kept terms from drifting in Finnish.carrier board→ carte porteuse, which is a deliberate divergence from Finnish. Finnish usesemolevy(literally motherboard), chosen for familiarity over accuracy; French takes the accurate term. The glossary records this as a decision so nobody "harmonises" the two languages later, and notes the practical consequence: the Finnish glossary tells translators to spell out the CM5/board relationship in passages whereemolevywould invert it, and French does not need that warning.Two rules the Finnish glossary does not cover, because they are specific to French: the address form is the vouvoiement imperative, and French typography needs a narrow no-break space before
; : ! ?and guillemets for quotations.The machinery earned its keep
This is the first language added since #30, and it behaved as intended on first real use: French built and fell back to English from the first commit, and the status report listed all 21 pages as missing with the stamp each would need.
Anchors: 20 broke, four more than the Finnish pass. In French the daemon and REST API headings also change slug, where the Finnish ones happened to coincide with English by luck. Without
check_anchors.pythese would have shipped —mkdocs build --strictreports nothing. All 2925 anchors in the built site now resolve.Verified
uv run mkdocs build --strictpasses3.3V rail … from the 3.3V railbecomesla ligne 3,3 V … cette ligne, and oneNMEA 2000of thirteen is carried by a pronoun. Both checked by hand.🤖 Generated with Claude Code