french-typography
Installation
SKILL.md
French typography
Spacing in French is part of the text, not decoration. A price that wraps as 1 / 900 $, or a ? alone at the start of a line, reads as a mistake. This skill gives the exact code points, the Québec and France conventions, and a script that checks or fixes files.
The rules
| Case | Rule | Code point |
|---|---|---|
Before : |
non-breaking space | U+00A0 |
Before ; ! ? |
non-breaking space (house default, see below) | U+00A0 |
| Inside French quotes | «, nbsp, text, nbsp, » |
U+00A0 |
| Digit groups | narrow no-break space between groups of three | U+202F |
Number and $ |
non-breaking space (1 900 $) |
U+00A0 |
| Word before a price | non-breaking space, so the amount never starts a line | U+00A0 |
| Percent | non-breaking space between number and % (3,5 %); an extension, Molveau's original frTypo has no percent rule |
U+00A0 |
| Apostrophe | curly ’, never '; --fix converts letter-apostrophe-letter only |
U+2019 |
| Em dash | never in copy; rewrite the sentence (colon, comma, full stop) | U+2014 |
Left alone on purpose: URLs, times (10:30), ICU placeholders ({count}), phone numbers (514 555-1234, 1-514 555-1234) and numbers that are not groups of three (1 2345, or a lone digit such as 2 pages).