Read the French catalog end to end: one word per term, and one answer on its typography
Read all 2,003 entries against their msgids. 189 msgstrs changed and no msgid did, so the completeness check stays green throughout and nothing in the code moves.
What the reading found
Six terminology splits, where one English word had become two French ones:
- 11 strings still called a slot a
séance, the event sense #3619722 retired from the English. One of them is the unique-constraint message an operator reads. - 24 called a place grade a
catégoriewhile the entity itself is agrade de place, including the three validation messages on tariff presets. - 16 called a tenant a
locataire, against 50 that saytenant. Orchestra saystenanttoo. workflowwas written three ways:flux de travail(25), a bareflux(8) andworkflow(13). Orchestra, the engine that owns the word, keepsworkflowin French throughout its own catalog and has noflux de travailat all.sectionandareahad both becomezone. That is what a collision costs: "An area with no setting follows its section" had become une zone sans réglage suit ce que dit la zone elle-même, and "a whole section, or one subsection of one" had become une zone entière, ou une seule de ses sous-zones while the very next sentence usedzoneforarea.- Settlement was
règlementandrégler, which is what a French reader pays a bill with, in a catalog that is careful never to describe a booking in money words. It is aclôturenow, which is what four of the sibling strings already said.
Plus booker rendered as visiteur in six strings, operator as exploitant in two, a seat row as rangée in four, and parked as positionné where Orchestra says en attente.
Sentences that were simply wrong
- Four said
cliquez une place. The verb takessur. quelles qu'il choisisseis not a sentence. It isquelles que soient celles qu'il choisit.Contingentées pour ce contingentfor "Pinned to this allotment", andil n'y a donc rien à qui réserver des places, whereà quiis for people.- The slot number carried U+00BA, the Spanish and Portuguese ordinal, rather than
°. - "Color used to render the grade on the place map" said le groupe de places.
- "Claimed from the guarantee" said prélevé sur la carte enregistrée, while the sibling string one row above said sur la garantie.
- "Attempts allowed per window; below 1 switches the limit off" had lost its second clause entirely.
Nous avons rendu votre autre place à la place, twice;doit finir renseigné;déplacée pour regrouper un groupe;ce que ce tarif tarife;une sélection qui chevauche une limite de mois;Qui a cliqué ... contrairement à qui.
The two things a script could count
Both decided once for the catalog rather than per string, and both written down in docs/translation.md so the next reading starts from them.
The apostrophe is U+2019, 756 converted.
The space before a colon, semicolon, exclamation or question mark is U+00A0, as is the space inside a pair of French quotation marks: 437 inserted. U+00A0 rather than the narrow U+202F because 240 of the 313 sites are colons, which is the mark French typography gives a word space rather than a fine one, and because one character for all four means one grep finds every exception rather than four. Dompdf's bundled DejaVu Sans carries both, so the ticket PDF did not decide it.
Checked
msgfmt --check clean; scripts/check-translations.php reports every shipped string translated; the msgid set is byte-identical to 1.x; every placeholder and every HTML tag matches its msgid, per plural form; no run-together blocks and the same 6,290 lines.
Noticed while reading, not touched here
msgid "New labels"is in the catalog and indocs/venue-map.md, but not()call emits it. Removing a string is out of scope for this issue.- The venue package warning lists "areas, grades, places, zones and default modes" on the English side, naming areas and zones as two things. Changing it is a msgid change.
AI-Generated: Yes (Claude Code read the catalog and drafted these changes and this description. I reviewed them before pushing.)