Jean-Christophe Helary posa la question:
Est-il possible d'envisager un gettext qui fonctionne sans assumer que la source soit en anglais ?
Je pense à des cas évidents où un logiciel est développé localement pour un usage local, donc sans nécessité d'utiliser l'anglais comme langue d'interface, et où son usage va dépasser le cadre local et nécessiter une localisation.
Cette localisation peut se faire vers l'anglais puis par son intermédiaire mais pourquoi pas directement vers d'autres langues.
Normalement il est plus difficile de trouver un traducteur pour une langue X que pour l'Anglais. Par example, si le logiciel est d'abord en Hongrois, comment va-t-on faire pour trouver un traducteur du Hongrois vers le Chinois? Il y a un certain nombre de Chinois qui apprennent l'Anglais étants jeunes, mais pas le Hongrois.
Mais, oui, le problème peut aussi être inverse: Si on cherche un traducteur du Français vers l'Occitan, ce sera plus facile que de l'Anglais pour l'Occitan.
Il est projeté qu'une version future des fichiers PO et de gettext sache gérer la traduction par un langage intermédaire, par exemple, Anglais -> Français -> Occitan. Mais il sera certes utile si le traducteur a au moins une compréhension minimale de l'Anglais.
Une autre raison pour la nécessité de cette "neutralité" de gettext est qu'une grande partie des processus utilisant PO, et ce même pour des processus hors FLOSS sont limités par le fait que PO n'identifie pas la langue source puisqu'elle est l'anglais par défaut. Certain processus utilisent le format PO pour des paires qui n'incluent pas l'anglais et les outils qui vont utiliser ces fichiers peuvent/vont par erreur considérer que l'une des langues est l'anglais.
Je pense que ces cas sont suffisamment rares et peuvent être traités avec peu d'effort.
Bruno