Adapter une application à l’international
spoiler alert:
c’est le bordel
- GNOME
- Coordinateur de l’équipe de traduction française
- Coordinateur de l’internationalisation
Marquage
fn("Hello")
gettext("Hello")
_("Hello")
Formes plurielles
- Un, plusieurs
- “I’ve had 0 beers” vs. « J’ai bu 0 bière »
- « J’ai bu 1,5 litre »
- 1, 2, 3…
- nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;
- ngettext("I’ve had %d beer", "I’ve had %d beers", n)
Commentaires et contexte
Commentaires pour lever les ambiguïtés
Contexte si la chaîne peut apparaître dans différentes situations
□
Longueur du texte
Locales
Paramètres régionaux
- Langue
- Région
- Unités
- Formats (dates, séparateurs…)
- Premier jour de la semaine
- …
Variantes pour une langue
- fr : "De rien"
- fr_be : "S’il vous plaît"
- fr_els : "Seeeervice"
Impact d’une modification de chaîne
→ Cycle de développement
Conclusions
C’est le bordel
mais des solutions existent.
Soyez prudents et ouverts.
Auto-promotion