# Localisation (linguistique)

La localisation$^,$$^,$ ou régionalisation est la traduction ainsi que l’adaptation culturelle d’un produit (à des pays, régions ou groupes spécifiques) afin de prendre en compte les spécificités de deux marchés distincts. L’abréviation l10n, avec 10 qui représente le nombre de caractères entre le l et le n de localization, est également utilisée.
La localisation linguistique est plus qu’une simple activité de traduction, car elle implique l’étude exhaustive de la culture cible afin d’adapter de la manière la plus appropriée le produit aux besoins locaux.
Le processus de localisation se rapporte, dans la majorité des cas, à l’adaptation culturelle et à la traduction des logiciels, jeux vidéo et sites web, et plus rarement, à toute traduction écrite (qui peut aussi impliquer des processus d’adaptation culturelle). La localisation peut se faire pour des régions ou des pays où on parle des langues différentes, ou bien pour des régions ou des pays où des dialectes ou des variantes de la même langue sont parlés (ainsi l’espagnol parlé en Espagne diffère de l’espagnol parlé en Amérique du Sud, de même les idiomes et le choix des mots sont variables dans les pays où l’anglais est la langue officielle, États-Unis, Royaume-Uni, Canada, etc.).
Avant qu'un produit ne soit régionalisé, un certain nombre de produits doivent être internationalisés, c’est-à-dire qu'ils soient écrits pour pouvoir être traduits.
Ce processus demandant beaucoup de travail, des outils simplifient la régionalisation et celle-ci est confiée à des entreprises spécialisées afin de réduire les coûts.
Les paramètres régionaux sont généralement partagés par les différentes applications. Certaines applications spécialisées nécessitent leurs propres paramètres. Le consortium Unicode travaille sur une normalisation de ces paramètres régionaux, le projet Common Locale Data Repository.

## Le processus global : internationalisation, mondialisation et localisation

Comme l’expliquait l’Association pour les standards des métiers de la localisation (LISA, Localisation Industry Standards Association), aujourd'hui dissoute, la mondialisation « doit se penser plus en termes de cycle qu’en termes de processus ». [2] Mondialiser consiste à penser à l’avance le design et les méthodes de développement d’un produit, en intégrant les impératifs d’une audience multiculturelle, afin d’éviter des coûts supplémentaires et des problèmes de qualité, de gagner du temps et de simplifier l’effort de localisation pour chaque région et pays. La localisation est donc une composante à part entière du processus de mondialisation dont les deux phases sont :
* L’internationalisation qui comprend la planification et les étapes préparatoires à la réalisation d’un produit qui est conçu pour être vendu sur le marché mondial. Ce processus fait disparaître toutes les données culturelles ; de plus tout élément de contenu spécifique à un pays ou à une langue est inventorié afin d’être facilement adapté. Si ce contenu n’est pas séparé lors de cette phase, il devra l’être lors de la phase de localisation, mais cela alourdira les coûts du projet et rallongera sa durée. Dans certains cas extrêmes, des produits qui n’ont pas été internationalisés peuvent ne pas être localisables.
* La localisation, renvoie à l’adaptation proprement dite du produit à un marché spécifique. La phase de localisation soulève, entre autres, des questions d’ordre linguistique, physique, économique, culturel et enfin technique.
À la fin de chaque phase, des tests, y compris des tests d’assurance de qualité, sont conduits afin de garantir que le produit fonctionne correctement et qu’il satisfait les attentes du client.

## Traduction contre localisation

La localisation est souvent considérée comme une simple « traduction high-tech », mais cette conception sous-estime son importance et la complexité des opérations qu’elle comprend. Bien qu’il soit souvent difficile de définir la frontière entre la traduction et la localisation, la localisation incorpore en général d’importantes composantes non textuelles d’un produit ou d’un service. En plus de la traduction, le processus de localisation peut également comprendre l’adaptation de graphiques, l’adoption des monnaies locales, l’utilisation de formats spécifiques pour la date, l’adresse ou le numéro de téléphone, le choix des couleurs et de nombreux autres détails, pouvant aller jusqu’à la redéfinition de la structure physique d’un projet. Tous ces changements ont pour objectif de prendre en compte les sensibilités locales, d’éviter d’entrer en conflit avec les cultures et les coutumes locales et de pénétrer un marché en adoptant ses besoins et ses désirs. Par exemple, la localisation vise à offrir des versions adaptées à différents pays du site internet d’une entreprise, ou différentes éditions d’un livre en fonction de l’endroit où l’ouvrage est publié.

## Internationalisation contre localisation

Alors que la localisation a pour but d’adapter un produit à un environnement local défini, l’internationalisation vise à concevoir le produit de manière à minimiser tout travail supplémentaire pour toute localisation ultérieure.
Prenons pour exemple une personne travaillant pour une entreprise qui jusqu’à maintenant n’opérait qu’aux États-Unis. Cette entreprise est en train d’ouvrir une filiale importante en Chine et a donc besoin d’un site web en chinois. L’entreprise offre les mêmes produits et services dans les deux pays avec seulement quelques différences mineures, mais il se pourrait que certains éléments du site destiné à l'origine aux États-Unis soient offensants ou tout du moins agaçants pour le public chinois (l’utilisation de drapeaux, de couleurs, d’images nationalistes, de musiques, etc.). Ainsi cette entreprise pourrait perdre des parts de marché à cause de détails de présentation.
De plus, cette entreprise pourrait avoir besoin d’adapter ses produits pour ses nouveaux clients, le jeu vidéo en est un exemple parfait.
Maintenant, supposons que notre entreprise possède des bureaux dans une douzaine de pays, et qu’elle ait besoin d’un site web spécifique pour chacun d’eux. Avant de décider comment localiser le site et les produits qui y sont proposés pour chaque pays, un professionnel pourra conseiller à l’entreprise de créer une stratégie d’ensemble : mondialiser la manière dont l’entreprise mène ses affaires. Ainsi l’entreprise devra mettre en place un plan-cadre pour codifier et supporter cette stratégie internationale. Cette stratégie et ce plan-cadre fourniront une méthodologie uniforme pour la localisation dans les douze pays.

## Difficultés

Le premier problème de la régionalisation est celui du contexte des phrases traduites. En effet, dans l'interface, les phrases sont parfois composées de plusieurs entités assemblées en fonction du contexte, et qui vont apparaître séparées et hors contexte dans le logiciel traduit. Par exemple, une phrase du type
    Impossible d'exécuter la tâche x : l'objet y n'est pas un objet conforme aux spécifications z.
pourra être composée de deux chaînes apparaissant séparément : « Impossible d'exécuter la tâche x : » et « l'objet y n'est pas un objet conforme aux spécifications z. » Selon les cas, cela pourra être une autre phrase qui apparaîtra après les deux-points. Par ailleurs, les noms x, y et z sont eux-mêmes stockés à part et peuvent varier. Le traducteur se retrouve donc à traduire des phrases partielles sans savoir la manière dont elles vont s'assembler.
Se pose aussi un problème de cohérence, et de mise en forme : l'association des phrases a-t-elle un sens dans la langue cible ? Faut-il mettre un espace avant le premier ou après le dernier caractère ?…
La plupart des programmes disposent de « raccourcis », c'est-à-dire que les commandes les plus fréquentes sont accessibles de manière rapide, par exemple par une combinaison de touches [Ctrl]+lettre ou [Alt]+lettre ; ce moyen est peu intuitif, mais facilite le travail des utilisateurs chevronnés. La lettre en question est en général en relation avec le nom de la commande (initiale en général). Faut-il alors utiliser une autre lettre dans la langue cible afin de garder le caractère mnémotechnique ? Cela pose le problème de la cohérence (il faut faire attention à ce que la lettre choisie n'ait pas un autre sens) et des possibilités du traducteur : l'interface de traduction permet-elle de faire cette opération ou faut-il modifier le code ?
S'il n'est pas possible de changer cette lettre, il faudrait alors indiquer le moyen mnémotechnique dans la documentation. Par ailleurs, lorsque cette commande est présente dans un menu, la lettre est parfois soulignée. Si l'on utilise la même lettre de raccourci mais que ce n'est pas l'initiale, alors il faut penser à dé-souligner l'initiale, et éventuellement à souligner la lettre si elle est présente à un autre endroit du mot.
Concernant le traducteur, dans l'idéal, il doit maîtriser parfaitement la langue de destination, donc être locuteur de la langue et avoir fait des études de cette langue, il doit bien connaître le domaine technique afin d'en connaître le vocabulaire spécifique, et aussi maîtriser le logiciel afin de comprendre le contexte des phrases. Cela pose le problème des ressources allouées à la traduction : dans les cas pointus, soit il faut une équipe, soit il faut une perle rare. Dans tous les cas, le traducteur devrait pouvoir dialoguer avec les développeurs.
Par ailleurs, certaines chaînes n'ont pas de sens mais sont des indications de mise en forme (retour de ligne, format d'une variable…), le traducteur doit donc être formé à reconnaître ces chaînes spécifiques pour ne pas les traduire, ou bien les déplacer selon le contexte. Il faut aussi se méfier des chaînes qui ont un rôle particulier, par exemple qui sont détectées par le logiciel et déclenchent telle ou telle action ; ceci est plutôt un problème de programmation en amont, dans la perspective d'une internationalisation, aucun mécanisme ne devrait faire intervenir la recherche d'un mot ou d'une phrase, ou tout du moins de telles chaînes ne devraient pas être « codées en dur (en) » mais être mises dans des variables à traduire de manière pertinente.
Un cas particulier est celui des langages de macro-instruction. Une macro écrite avec le logiciel dans une langue est-elle utilisable avec le logiciel dans l'autre langue ? Cela pose essentiellement le problème de la représentation des instructions : si les instructions sont traduites, stocke-t-on le mot dans la langue cible, ou bien stocke-t-on un code ou le mot en langue source pour le traduire seulement à l'affichage ? C'est le cas par exemple pour les noms des fonctions dans Microsoft Excel.
Vient ensuite le problème de l'interface : les messages n'ont pas la même longueur selon les langues, le traducteur peut avoir à ajuster la taille des boîtes de texte et celle des boutons.
Enfin, certaines langues s'écrivent de gauche à droite, d'autres de droite à gauche, d'autres de haut en bas. Dans ce contexte, où positionner le texte accompagnant un contrôle (bouton, case à cocher, curseur, zone de saisie…)?

## Composante du cahier des charges

La régionalisation est facilitée par une prise en compte dès la conception du logiciel et dans le cahier des charges, ainsi que par le respect des normes de développement. Par exemple :
* ne pas utiliser de mot (du langage naturel) codé en dur mais utiliser systématiquement des variables (par exemple une chaîne qui serait recherchée dans un texte pour déclencher une action, cas typique de mots comme « none ») ;
* concevoir l'interface graphique en permettant d'augmenter les espaces réservés à du texte ;
* en cas de titre accolé, mettre le titre au-dessus de l'objet, ce qui évite de devoir bouger ou retailler l'objet en fonction de la taille du titre ;

## Localisation des jeux vidéo

La localisation d'un jeu vidéo est le processus de préparation d'un jeu vidéo pour un marché autre que celui où il a été publié à l'origine$^,$$^,$. Le nom du jeu, le matériel artistique, l'emballage, les manuels et les différences culturelles et juridiques ont tendance à changer.
Avant de procéder à la localisation, les fabricants prennent en compte des facteurs économiques tels que les bénéfices potentiels à l'étranger$^,$$^,$. La plupart des localisations officielles sont réalisées par les développeurs du jeu ou par une société de traduction tierce. Néanmoins, les localisations de fans sont également populaires$^,$.
La localisation est largement incompatible entre les plates-formes, les moteurs et les entreprises en raison de sa nouveauté$^,$. Les localisateurs ont l'intention de créer une expérience similaire à celle du jeu original, en tenant compte de la discrétion du public visé par la localisation. La localisation est considérée comme un échec si elle est confuse ou difficile à comprendre ; elle peut rompre l'immersion du joueur.
Il existe différents types de textes utilisés dans les jeux vidéo. Les jeux vidéo sont également multimédias et comprennent de nombreuses ressources différentes, telles que des vidéos. Les producteurs de matériel de localisation doivent savoir comment les traiter. Lorsqu'il s'agit de cut-scenes ou de vidéos pré-rendues, les producteurs doivent s'efforcer de les garder relativement inchangées. La tâche la plus importante est la synchronisation labiale des dialogues nouvellement enregistrés et le sous-titrage de chaque partie de la scène préenregistrée ou rendue.

## Balises linguistiques et codes

Les codes de langue sont très liés au processus de localisation car ils indiquent le positionnement géographique en jeu dans la traduction et l’adaptation du produit. Ils sont utilisés dans des contextes variés, par exemple ils peuvent être utilisés de manière informelle dans la publication de documents par l’Union européenne ou peuvent être introduits dans le balisage HTML sous l’attribut lang. Dans le cas de l’Union européenne les balises linguistiques sont basées sur le code ISO 639-1 alpha-2 ; en HTML les codes linguistiques sont généralement définis par le Best Current Practice (BCP) de l’Internet Engineering Task Force. Le choix d’un code ou d’une balise relève de la nature du projet et des exigences du spécialiste en localisation.
Bien souvent, il existe un premier attribut qui identifie la langue (ex : « en ») et un sous-attribut optionnel, en majuscules, spécifiant la variation linguistique (ex : « GB »). Ces deux entités sont généralement liées par un trait d’union mais il peut parfois être nécessaire de le remplacer par un tiret bas.
Il existe un grand nombre de systèmes de balisage pour la codification linguistique. Par exemple l’Organisation Internationale de Normalisation (ISO) utilise à la fois des codes de deux et trois lettres respectivement dans les standards ISO 639-1 et 639-2 pour représenter les langues.
Exemples de codes ISO 639-1 à deux lettres :
| Famille linguistique | Code ISO 639-1 | Variantes linguistiques |
| Anglais | en-GB | Anglais britannique |
| Anglais | en-US | Anglais américain |
| Anglais | en-NZ | Anglais de Nouvelle-Zélande |
| Anglais | en-IE | Anglais d'Irlande |
| Anglais | en-AU | Anglais d'Australie |
| Anglais | en-CA | Anglais canadien |
| Espagnol | es-ES | Castillan (tel qu’écrit et parlé en Espagne) |
| Espagnol | es-MX | Espagnol mexicain |
| Espagnol | es-AR | Espagnol argentin |
| Espagnol | es-CO | Espagnol colombien |
| Français | fr-BE | Français belge |
| Français | fr-CH | Français de Suisse |
| Français | fr-FR | Français de France |
| Français | fr-CA | Français canadien |
| Portugais | pt-PT | Portugais européen (tel que pratiqué au Portugal) |
| Portugais | pt-BR | Portugais brésilien |
| Chinois | zh-CN | Chinois de Chine (caractères simplifiés) |
| Chinois | zh-TW | Chinois taïwanais (caractères traditionnels) |
| Chinois | zh-HK | Chinois de Hong Kong (caractères traditionnels) |

## Outils spécialisés

Sous Linux, le format de fichier po est utilisé pour permettre la réalisation de programmes informatiques multilingues. Un fichier po est un fichier texte comportant la version originale des messages systèmes avec les équivalences traduites utilisées.
* Lingobit Localizer, outil de localisation pour .Net, MFC et Java
* Gettext, utilisé par la plupart des logiciels libres tournant sous Linux ;
* Codito (projets Delphi) ;
* Multilizer (projets Delphi).
* Visual Localize (AIT), pour les projets Visual Studio et .NET de Microsoft Windows
* Loc@le d'Accent Software, pour Microsoft Windows (apparemment plus distribué)
* Qt Linguist, logiciel facilitant la traduction de programmes réalisés avec la bibliothèque Qt.
* Lokalize (en), l'outil de localisation de KDE.
* Po4a, pour la traduction de ce qui n'est pas du code (documentation….