Internationalisation en AS3 avec Gettext

16 views
Skip to first unread message

lunar

unread,
Dec 16, 2009, 12:39:44 PM12/16/09
to FCNG
Bonjour à vous,

Ce message pour vous faire partager cette bibliothèque AS3 permettant
d'internationaliser vos applications AS3 (et également Flex depuis
peu). Elle se base sur la suite d'utilitaire gettext, bien connue.

Plus qu'un simple parseur des fichiers de traduction (il en existe
plusieurs), vous avez à dispo toute l'API de gettext, portée vers AS3.
Elle s'inspire donc très largement de l'API qu'on trouve en C, d'où
provient gettext à l'origine.
Le principal intérêt de la biblio est de profiter de toute la
puissance des utilitaires de gettext concernant la maintenance, la
mise à jour et la création des traductions.

Je vous invite à la tester, et à faire un feedback dessus ;)
Toutes les infos sur http://wiki.github.com/vincent-petithory/as3-gettext

Philippe

unread,
Dec 16, 2009, 2:21:59 PM12/16/09
to FCNG
Franchement ça à l'air pas mal du tout.

zwetan

unread,
Dec 16, 2009, 4:25:40 PM12/16/09
to FCNG
sympa, mais attention dans un prochain upgrade de l' API de Flash
il y aura un API de localization en natif

idealement un gettext v2 voudrait utiliser ca

zwetan

Eric Priou

unread,
Dec 16, 2009, 6:04:56 PM12/16/09
to fc...@googlegroups.com
> Elle s'inspire donc très largement de l'API qu'on trouve en C, d'où
> provient gettext à l'origine.
> Le principal intérêt de la biblio est de profiter de toute la
> puissance des utilitaires de gettext concernant la maintenance, la
> mise à jour et la création des traductions.
Intéressant.

Je n'ai pas eu le temps de regarder ta librairie encore, mais est-ce
un portage as3 de gettext ou une compilation via Alchemy de la
librairie originale ?
Je ne suis pas sûr toutefois que cela apporte des performances
intéressantes…

---
Eric Priou aka erixtekila
http://www.v-i-a.net/inprogress





lunar

unread,
Dec 17, 2009, 4:09:06 AM12/17/09
to FCNG
Salut,

> mais est-ce
> un portage as3 de gettext ou une compilation via Alchemy de la
> librairie originale ?

On peut décomposer gettext en 2 sous-éléments : d'une part des
exécutables qui sont les utilitaires que je mentionnais, d'autre part
une API utilisant les fichiers générés par les utilitaires.
Concrètement, ce portage as3 est une émulation de l'API, et dans notre
workflow, on réutilise les utilitaires de gettext. Pas d'Alchemy qui
traîne donc.


Pour résumer très sommairement le workflow avec gettext, on a les
utilitaires :

xgettext : parse notre code source, en extrait les chaînes de
caractère à traduire (système de marquage pour cela). Genere un .pot =
template des traductions
msginit : crée un .po, fichier de traduction, à partir du .pot. On le
donne au traducteur, ou le traducteur peut créer lui-même le fichier.
msgfmt : crée un .mo, le fichier binaire des traductions, utilisé par
l'application, à partir du fichier que le traducteur nous a redonné.

Ce process se répète chaque fois que le code source est modifié. Cela
met à jour automatiquement les fichiers de traduction, en conservant
les traductions existantes, etc.

Ensuite le portage as3 consiste d'une part à utiliser ces
fichiers .mo, et d'autre part à avoir l'API similaire à celle de
gettext (textdomain, bindtextdomain, gettext, ngettext, dgettext), en
faisant bien sûr les adaptations nécessaires entre la philosophie AS3
et C.

> sympa, mais attention dans un prochain upgrade de l' API de Flash
> il y aura un API de localization en natif

> idealement un gettext v2 voudrait utiliser ca

Intéressant, par contre j'ai pas trouvé d'infos là-dessus. Il faudra
voir ce que propose en détail cette API, si elle s'accompagne de
nouveaux formats de fichier, etc., pour voir dans quelle mesure
gettext peut en profiter.

Cédric Néhémie

unread,
Dec 17, 2009, 5:03:42 AM12/17/09
to fc...@googlegroups.com
Salut � tous,
> Bonjour � vous,
>
> Ce message pour vous faire partager cette biblioth�que AS3 permettant
> d'internationaliser vos applications AS3 (et �galement Flex depuis

> peu). Elle se base sur la suite d'utilitaire gettext, bien connue.
>
> Plus qu'un simple parseur des fichiers de traduction (il en existe
> plusieurs), vous avez � dispo toute l'API de gettext, port�e vers AS3.
> Elle s'inspire donc tr�s largement de l'API qu'on trouve en C, d'o�
> provient gettext � l'origine.
> Le principal int�r�t de la biblio est de profiter de toute la

> puissance des utilitaires de gettext concernant la maintenance, la
> mise � jour et la cr�ation des traductions.
>
> Je vous invite � la tester, et � faire un feedback dessus ;)

Jolie initiative, pour ma part j'utilise gettext pour l'as3 depuis un
petit moment, et je dois dire que �a a de sacr� avantages (ayant souvent
une partie serveur en django, on trouve tt ce qu'il faut pour
administrer les locales direct depuis l'admin django).

� noter qu'Alessandro Crugnola avait d�j� r�aliser un parser pour
gettext (voir ici :
http://www.sephiroth.it/phpwiki/index.php?title=Gettext_actionscript3 )

En passant j'en profite pour rajouter en pi�ce jointe un petit jsfl qui
m'a bien servi, il parcours la sc�ne d'un fla r�cursivement pour � la
fin g�n�rer un .pot avec tte les cha�nes gettext trouv�es. (� noter que
les retours � la ligne sont �chapp�s afin d'�viter les embrouilles).

C�dric

Generate POT file for this fla - 2.jsfl
Reply all
Reply to author
Forward
0 new messages