CTS : Community Translation System
Qu'est-ce que CTS ?
CTS est un logiciel de traduction d'application en ligne. Il permet a une communauté d'utilisateur de participer à la traduction d'un logiciel sans connaitre la programmation. Pour l'équipe de développement, il permet de faire des exports des données générées vers un système de traduction basique ou bien vers des fichiers .po pour Gnu Gettext.
Pour quel langage ?
Bien que CTS soit écrit en php, les exports ne sont pas spécifiquement écrit pour un langage en particulier. Gnu Gettext existe pour la plupart des langages, et le système de base devrait ètre facilement adaptable pour la plupart des langages.
Quel est ce système de traduction basique ?
Basiquement cela consiste en une série de fichier appelés lang.?? dans ces fichiers se trouve une variable (un array() pour php) appelée ctsword (nom non définitif, je viens de le trouver). En fonction de la langue, seul un de ces fichiers est appelés. ctsword est une table de hash de la forme :
$ctsword["keyword"] = "mot-clef" $ctsword["admin"] = "Administrateur" $ctsword["user"] = "Utilisateur"Dans l'application il ne reste plus qu'a appeler ctsword avec le bon mot-clef et la traduction est affichée. Ce système est bien décrit dans cet article du jdn.
Qu'est-ce Gnu Gettext ?
Gnu Gettext est un système de localisation (l10n). C'est à dire qu'il gère non seulement les traductions des vocables, mais aussi les différences culturelles comme le format de la date (par exemple).
Démonstration :
login: admin pass: azerty (attention à ne pas changer ou éeffacer le compte admin SVP)
login contributeur: batman,superman,spiderman pas de mot de passe.
Téléchargement :
[18/05/2007] bis Tarball de la version 0.7
[18/05/2007] Tarball de la version 0.6
[14/05/2007] Tarball de la version 0.5
[8/10/2006] Tarball de la version 0.4
Changelog :
Version 0.7
- Ajout d'une fonction array_diff_key pour les versions de php inférieure à la 5.1
- Amélioration du multilinguisme
- Un simple utilisateur a désormais la possibilité de se déconnecter.
Version 0.6
- Ajout partiel du multilinguisme à partir de fichiers générés par CTS lui-même
- Corrections de bugs dans les exports .php et .po
- Ajout d'une colonne dédiée à l'aide contextuelle
- Nouveau listing des utilisateurs
- Corrections de bugs variés
Version 0.5
- Correction de plein de bugs.
- Ajout de protections contre les injections SQL
- Réorganisation de l'arborescence
- Icones plus jolies
Version 0.4
- Export vers des fichiers python
- Gestion du nom du projet
- Nouvelle interface
Version 0.3
- Possibilité de faire des snapshot (images ? sauvegarde ?) de la traduction en cours et de restaurer ces snapshots.
Version 0.2
- Ajout de plein de langues.
- Possibilité de bloquer la modification d'une langue donnée.
- Support multiutisateur
- 2 modes d'accèes : Anonymes et authentifié.
- Export vers php et fichiers .po (gettext) pour une langue ou en fichier .zip pour l'ensemble des traductions.
- Premier système d'installation : setup.php
Contacts :
Développeur principal et unique : Mathieu Ignacio (changez le premier point par un @)