Le chaos L’héritage
Alors que les préférences pour le contenu web sont exposées dans Firefox depuis ses premières versions, changer la langue utilisée pour l’interface utilisateur a toujours été un défi. Voici l’épreuve difficile que les utilisateurs et utilisatrices devaient affronter jusqu’à il y a quelques mois :
- Tout d’abord, vous devez être conscient·e que d’autres langues sont disponibles. Il n’y a pas de paramètre exposant cette information et la documentation est éparpillée à travers différents sites web.
- Vous devez trouver et installer un paquetage de langue (un type de module spécial) depuis addons.mozilla.org.
- Si la langue utilisée dans le système d’exploitation est différente de celle que vous essayez d’installer dans Firefox, vous devez créer une nouvelle préférence dans about:config et la remplir avec le code de langue correct. Avant Firefox 59 et intl.locale.requested, vous deviez définir manuellement la préférence general.useragent.locale dans tous les cas, pas seulement quand il y avait une divergence.
L’alternative est d’installer une compilation de Firefox déjà localisée dans votre langue de préférence. Mais, une fois encore, ce n’est pas si facile à trouver. Imaginez que vous travaillez dans un environnement d’entreprise qui vous fournit un système d’exploitation en anglais (en-US
). Vous recherchez « télécharger Firefox » sur le Web et tombez automatiquement sur cette page qui ne fournit pas d’information sur la langue que vous êtes sur le point de télécharger. Vous devez faire attention à un grand nombre de choses et remarquer le lien vers les autres langues.
Si vous avez déjà installé Firefox dans la mauvaise langue, vous devez le désinstaller, trouver l’installeur pour la langue adéquate et le réinstaller. Lors du processus de désinstallation sur Windows, nous demandons aux utilisateurs et utilisatrices de répondre volontairement à un rapide sondage pour expliquer pourquoi ils ou elles désinstallent le navigateur, et le nombre de ces personnes qui répondent quelque chose comme « mauvaise langue » ou « besoin de réinstaller dans la bonne langue » est stupéfiante, en particulier en considérant que c’est un commentaire optionnel dans un sondage optionnel. C’est un signal clair, s’il en est, que les choses doivent être améliorées.
Tout change avec Firefox 65
Avance rapide vers Firefox 65 :
Nous avons introduit une nouvelle section Langue. Directement depuis le panneau Général, il est désormais possible de choisir parmi les langues déjà disponibles dans Firefox, ce qui supprime le besoin de définir manuellement les préférences dans about:config. Et si la langue n’est pas disponible ? Vous pouvez simplement Rechercher d’autres langues… depuis le menu déroulant.
Ajoutez votre langue préférée à la liste (italien en l’occurrence).
Et redémarrez le navigateur pour avoir l’interface localisée en italien. Notez que le message est affiché dans les deux langues, pour donner une indication supplémentaire à l’utilisateur ou utilisatrice que la bonne langue a été a sélectionnée.
Si vous êtes curieux·se, vous pouvez voir un diagramme d’interaction complet ici.
Beaucoup de choses se passent sous le capot pendant cette brève interaction :
- Quand l’utilisateur ou l’utilisatrice demande d’autres langues, Firefox se connecte à addons.mozilla.org via une API pour obtenir la liste des langues disponibles pour la version utilisée.
- Quand l’utilisateur ou l’utilisatrice ajoute une langue, Firefox télécharge et installe le paquetage de langue pour le code de langue associé.
- Pour améliorer l’expérience utilisateur, il télécharge également, si disponibles, des dictionnaires associés à la langue demandée.
- Quand le navigateur est redémarré, le nouveau code de langue est positionné en premier dans la préférence intl.locale.requested.
Cette fonctionnalité est activée par défaut dans les versions bêta et Release (la version pour tout le monde) de Firefox. Les paquetages de langue ne sont pas fiables dans Nightly, étant donné que les chaînes changent fréquemment, et une langue toujours considérée comme compatible mais incomplète peut mener à un navigateur qui ne fonctionne plus du tout (une situation connue sous le nom d’« écran jaune de la mort » ou yellow screen of death, quand le XUL échoue à cause d’entités DTD manquantes).
L’avenir
Tout d’abord, il reste quelques bogues à résoudre (vous pouvez trouver une liste des dépendances sur le bogue de suivi). Malheureusement, il reste quelques endroits dans le code qui présupposent que la langue ne changera pas et mettent en cache le contenu traduit de manière trop agressive.
Le chemin à suivre doit encore être défini. Terminer la migration vers Fluent améliorerait l’expérience utilisateur de manière significative :
- Le changement de langue se ferait sans redémarrage.
- Firefox prendrait en charge une liste de versions locales de repli. Avec l’ancienne technologie, si une traduction est manquante, la seule alternative de repli est l’anglais. Avec Fluent, nous pouvons définir une chaîne de repli, par exemple ligure->italien->anglais.
Il y a également des zones du navigateur qui ne sont pas couvertes par les paquetages de langue et nécessiteraient d’être réécrites (par exemple, le gestionnaire de profils). Pour celles-ci, la langue utilisée reste celle qui était empaquetée dans le fichier installé.
L’expérience utilisateur pourrait également être améliorée. Par exemple, pouvons-nous faire en sorte que la sélection de langue fasse partie d’une expérience multiplateforme intégrée ? Il y a un grand nombre d’informations que nous pourrions obtenir du système d’exploitation hôte et proposer à l’utilisateur ou l’utilisatrice l’installation et la sélection d’une langue différente. Et si l’utilisateur ou l’utilisatrice consulte une grande quantité de contenu allemand, mais utilise le navigateur en anglais ? Devrions-nous lui suggérer qu’il est possible de changer de langue ?
Avec Firefox 66, nous commençons aussi à collecter des données télémétriques sur les préférences d’internationalisation – regardez le tableau en bas d’about:support – pour mieux comprendre nos utilisateurs et utilisatrices, et comment ces changements dans les préférences influencent la distribution des langues et possiblement la rétention.
Pour une fois, Firefox est bien en avance sur la concurrence. Par exemple, pour Chrome il est seulement possible de changer la langue sur Windows et Chromebook, tandis que Safari n’utilise que la langue de macOS.
Cela est le résultat d’un intense effort inter-équipes. Des remerciements spéciaux à Zibi Braniecki pour l’idée et l’impulsion initiales, et tout le travail réalisé sous le capot pour améliorer l’infrastructure d’internationalisation de Firefox, à Emanuela Damiani pour l’UX (expérience utilisateur) et à Mark Striemer pour la mise en œuvre.
Traduction et relecture : Mozinet, Watilin, Théo, YD et anonymes
Cette traduction comme la version originale sont disponibles sous les termes de la licence CC By-SA 3.0.
Crédit illustrations : les images ont été aussi localisées. La première ne figurait pas dans l’article original.
1 De Da Scritch -
Pas mal, ces avancées.
j’ai un problème personnel : j’aimerais utiliser le «input type=”time” » pour une durée, mais quand le navigateur est en en-US, le champ input passe forcément en mode 12 heures, et ceci quelque soit le navigateur, sans tenir compte de la locale de la page ou de l’élément.
Quequ’un a des astuces pour régler ça ?
2 De hellosct1 -
Bonjour,
Je pense que le champ prend la valeur de votre systeme d’exploitation. Il y a un paramètre en HTML ou Javascript qui permet de configurer le format de la date et de l’heure. Il s’agit d’une piste.
cordialement