J'essaye une nouvelle strategie pour effectuer des traductions: a travers "google translate API"
Hier soir, pour tester, j'ai traduit Ubercart 2.2 (le plus recent), soit un fichier .po de 4200 phrases / 970Ko. J'ai pris 10 minutes a traduire les 4200 parcelles en Fraçais avec le traducteur-google, et en suite 2 heures a corriger toutes les erreures de formattage, provenant du faite que le traducteur-google croit que ! % " @ sont des mots.
Voila donc le resultat, C'est Ubercart 2.2 traduit par google, version Alpha!!! seulement pour tester!
Si vous voulez m'aider a ameliorer le Javascript de traduction automatique, je peux vous dire toutes ses particuliarités.
il se trouve ici:
http://drupal.org/node/667806
la traduction-google complete de ubercart 2.2 est ICI, avec 3750 phrases en tout,
http://raidorf.esmartdesign.com/ubc-fr-gtranslator.rar

Comments
Bonjour, Cela constitue en
Bonjour,
Cela constitue en effet une excellente base de travail.
En parcourant les 2 versions de traduction, j'ai du mal à cerner la différence entre les 2 versions, quelle est la version la mieux travaillée pour poursuivre l'affinage ? :-)
Alexandre
Bonjour,Merci d'etre
Bonjour,
Merci d'etre encourageant. en faite, ce soir j'ai mis au point un code qui gere les combinaisons de glyphes et la traduction tout en 20 minutes, et qui prend en compte les expressions tel que "@user" et "!product".
la version de ce soir est ici: c'est la meilleure version.
http://raidorf.esmartdesign.com/ubc-fr-gtranslator.rar
Cool, Je vais mettre à jour
Cool,
Je vais mettre à jour et regarder ce que cela donne sur mon site de dev.
Vas-tu partager ton code ?
Comment cela fonctionne exactement ? Tu appelles l'API de Google depuis Drupal ou tu soumets un fichier ?
D'après ce que j'ai vu, le service de Google ne fait pas de traduction de fichier gettext...
Bonnes fêtes de fin d'années.
Alexandre
Salut et merci pour cette
Salut et merci pour cette initiative.
Je regarderai cela de + près asap même si j'avoue être a priori très perplexe sur la qualité des résultats de traduction délivrés par Google. Je crains en effet que nous passions plus de tps à corriger les erreurs de syntaxe et de grammaire qu'à traduire le contenu nous-même. Sans parler des erreurs qu'il peut induire... A voir, donc
lor
Merci Lor,C'est une question
Merci Lor,
C'est une question interressante.
Bloggy, pour te repondre d abord,
en ce moment je vais voir si quelqun me passe 20-30 euro sur le forum de "paid services" ce qui est assez improbable. en faite il s'agit de 2 pages php et de une page javascript , c'est pas du tout commode pour distribuer car il faut aussi renommer un .txt, copier et coller les données, loader les pages web qui modifient le .txt... c'est super galere!
mais je mettreais sans doute en ligne avec des instructions.
php peux pas "$_post" du texte avec [ "/"user/" \n" ] entre 2 pages, et javascript peux pas sauver des .txt, seulement activex qui marche seulement avec ie6+. donc cést vraiment galere!
Lor:
toutes les phrases entre 1-10 mots sont souvent satisfaisants, exemples pris au hazard:
msgstr ""
msgid "Billing information"
msgstr "Informations de facturation"
msgstr ""
msgid "Company name"
msgstr "Nom de l'entreprise"
msgstr ""
msgid "Transaction mode"
msgstr "Transaction mode"
msgstr ""
msgid "copy"
msgstr "copie"
msgstr ""
msgid "Report settings"
msgstr "Paramètres de rapports"
msgstr ""
msgid "not set"
msgstr "non établies"
msgstr ""
msgid "Revenue"
msgstr "Recettes"
En suite, on passe aux phrases plus longues:
msgstr ""
msgid "Manage stock levels of your ubercart products"
msgstr "Gérez les niveaux de stock de vos produits Ubercart"
msgstr ""
msgid "Administer store settings, products, orders, and more."
msgstr "Administrer stocker des paramètres, des produits, commandes, et plus encore."
msgstr ""
msgid "View and modify customer information and orders."
msgstr "Afficher et modifier les informations de clients et commandes."
msgstr ""
msgid "You must enable the order module to track customers."
msgstr "Vous devez activer le module de commande pour repérer des clients."
msgstr ""
msgid "The following users on your site have placed orders:"
msgstr "Les utilisateurs suivants sur votre site ont passé des commandes:"
... si ça sonne faux, tu peux bien sur l'effacer et remettre a zero
en suite les phrases super longues:... elles ont des adverbes des adjectifs, des mots techniques, google fait pire que du verbatim! cést atroce!":)
"Enter the custom PHP to be evaluated when this condition is executed. "
"Should not include <?php ?> delimiters."
msgstr ""
"Entrez la coutume PHP qui doit être évalué lorsque cette condition est exécutée."
"ne devrait pas inclure <? php?>; délimiteurs."
et voila une phrase super longue interprétées par google:
VERSION ORIGINALE
"Use the checkboxes to specify which card types you accept for payment. "
"Selected card types will show their icons in the payment method "
"selection list and be used for card number validation."
TRADUCTION AUTOMATIQUE
"Utilisez les cases à cocher pour spécifier les types de carte que vous acceptez de paiement."
"types de carte choisie s'affichent leurs icônes dans la liste de méthode de paiement"
"de sélection et peuvent être utilisées pour la validation de numéro de carte."
completement de travers!
sur 100 traductiions, il y en a 40% qui font 2-3 mots, traduites presque correctement. 30% en dessous de 10 mots, 10% seulement qui prennent plusieurs lignes.
en effet c'est en même temps tres louche et tres bon! ce serait possible d'effacer toutes les phrases longues, et google fournit les traductions... moi, je suis franglais, et quand je dois traduire "billing" le mot "facturation" me vient pas tres facilement en tête, donc c est utile que google les ecrit.
a mon avis sur 1000 auto traductions il y en a 300 qui sont tres justes et 200 qui sont presque justes. le reste est le bazar.
Pour le plaisir de la perle :-)
Aller, je vous laisse deviner !!!
"Pour permettre à l'exploitation forestière"
Plus sérieusement : cette expérience met en lumière notre besoin d'avancées sur le partage de traductions concernant UC fr
Merci pour l'ouverture de cette conversation.
je songe a refaire le fichier
je songe a refaire le fichier de traduction en enlevant les traductions déjà verifiées, ce qui l'allegerait du tiers ou de la moitié.
De cette mainière il-y-aurait seulement 10,000 lignes (= 2000 phrases) a verifier au lieu de 19,000 (= 3870 phrases). en suite, je peux le segmenter en 20 morceaux egals de 500 lignes, soit environ un 30 minutes de traduction par morceau... et je met les 20 morceaux en liste ici, et les gens peuvent en faire un chaqun, et quand une partie est faite je la met hors ligne. car sinon c'est SUPER DIFFICILE de traduire 2000 phrases ensemble, on va tous refaire le travail que les autres ont deja fait et on pourrait pas voir ce qu'il reste a faire.
C'est marrant - j'apprends pleins de mots que je connaissias pas avant. par google:
Majoration/décote = hausse/baisse de prix
recettes = revenues
+1
+1
Sprints de traduction
Bonjour,
Nous organisons des sprints de traduction qui permettent de traduire et/ou valider des modules complets. Localize fournit tous les outils nécessaires à ce travail. Je ne pense pas qu'il soit utile de rajouter des listes dans les messages : si tout le monde fait ça... on ne va plus savoir où regarder pour avoir un état des lieux à jour.
Concernant une base de travail pour la trad de Ubercart, il existe http://l10n.privnet.biz/translation_group/french mais je ne sais pas si c'est toujours utilisé.
Enfin, par expérience, il est plus rapide de traduire manuellement (quitte à s'aider de Google ou tout autre assistant de trad) que d'essayer d'automatiser. En automatisant, l'effort que la communauté fait pour utiliser toujours les mêmes termes validés dans le glossaire n'est pas soutenu car on a tendance à ne corriger que les termes mal traduits, sans vérifier la cohérence...
Donc, a valider avec LoR mais utiliser les mécanismes standard et participer aux sprints de trad me semble être la meilleure solution.
ImTranslator
A titre personnel, j'utilise ImTranslator qui laisse tranquille les %, ..., mais la prise en charge est limitée en terme de mots.
J'ai mis au point un systeme
J'ai mis au point un systeme qui garde tous les % en place apres la traduction automatique, de même que les @ ! etc:
(pareil que ImTranslator mais toutes les données en un clic et livré en .txt / .po)
$hdata = str_ireplace(" / " ,"/", $gdata);
$idata = str_ireplace("@ zxczxc" ,"@zxczxc", $hdata);
$jdata = str_ireplace(" ! zxczxc" ," !zxczxc", $idata);
$kdata = str_ireplace("! zxczxc" ," !zxczxc", $jdata);
---!--->>$ldata = preg_replace('~(\w+)(%)~i' , '%$1', $kdata);
j'ai fait aussi un code qui divise le .po en phrases traduites et non traduites, comme ça il livre uniquement tout ce qui n'a pas été traduit par la communauté, et le passe a google-translate, donc en relisant, on voit seulement les traductions nouvelles de google a verifier...
aussi je vais faire un code qui divise les phrases en differentes longeures, car si on peut passer seulement les phrases de 1-2 mots a google, ça evite de traduire au moins 500 strings a la main, c'est pas mal. (strings=parcelles?- voire glossaire!)
j'ai regardé dans le Glossaire, mais il y a seulement 10 termes a verifier dans la lexique ubercart, je pense pas que c'est un echec notable, car il y a 1 mot toutes les 200 phrases qui prend souche dans le glossaire, par exemple "breadcrumb = fil d'Ariane".
je mettrais en ligne tout le traducteur-automatique pour la communauté des differentes langues, avec des reglages differents, longeures des phrases etc... J'ai tout fait car c'est un exercice amusant pour apprendre le PHP, j'ai vu que l'interface utilisateur etait presque entierement en anglais quand j'ai voulu ubercart 2.2 en français. toute la premiere page, les pages en dessous, le titre "ubercart administration" ... tout en anglais.. c'etait pas pratique.
Cool
You should suggest make a module for this. Look at the Auto Draft module I released a few days ago - it auto-translates nodes in much the same way. It would be great to extend i18n to allow this. Or if you could extend my module to manage interface translations too! =)
http://drupal.org/project/i18n_auto_draft
Hi Greg, That is excellent. i
Hi Greg, That is excellent. i wish i know how to make modules! it's 10x times tougher than straight php if you ask me.
...
J'ai fait une bien meilleure version de la traduction, elle est ordonnee par longueure de phrase. c'est beacoup plus facile a verifier, et toutes les phrases traduites par l'homme ont été balancées donc ce n'est plus mélangé.
Ici pour la version ordonnée et triée:
http://raidorf.esmartdesign.com/ubercart_fr_version_ordonee.po
Ici pour le nouveau traducteur qui trie et ordonne toutes les phrases, c'est assez chouette! il faut decompresser le tout dans localhost et suivre les instructions.
http://raidorf.esmartdesign.com/gtranslator.zip
Did you consider to use it make a quick translation on Drupal7
The po freeze was suppose to be this Friday
It could be usefull to do test the new D7UX for French users.
I have a opportunity in one week time.
hiya
here is a FR google translation of D7 alpha 1... it excludes all the human translated phrases. this file contains exclusively google translated strings, they are ordered from the short phrases to the long ones, so you can throw out when it becomes tedious.
http://raidorf.esmartdesign.com/drupal7_alpha_core_gtrans_grouped.po
sorry i dont know if that is what you meant, i dont even know what UX and AX is. u can edit out the long phrases and upload it to drupal if you think it's cool.
Sample:
#: modules/user/user.tokens.inc:46
msgid "Last login"
msgstr "Dernière connexion"
#: modules/aggregator/aggregator.admin.inc:453
msgid "Processors"
msgstr "Processeurs"
#: includes/iso.inc:223
msgid "Singapore"
msgstr "Singapour"
#: modules/system/system.admin.inc:274
msgid "Set default"
msgstr "Set default"
#: modules/user/user.admin.inc:262
msgid "Anonymous users"
msgstr "Utilisateurs anonymes"
#: modules/system/system.admin.inc:1622
msgid "Clear cache"
msgstr "Effacez la mémoire cache"
#: includes/iso.inc:29
msgid "Afghanistan"
msgstr "Afghanistan"
#: includes/iso.inc:38
msgid "American Samoa"
msgstr "Samoa américaines"
#: includes/iso.inc:36
msgid "Antarctica"
msgstr "Antarctique"
#: includes/iso.inc:37
msgid "Argentina"
msgstr "Argentine"
#: includes/iso.inc:40
msgid "Australia"
msgstr "Australie"
#: includes/iso.inc:43
msgid "Azerbaijan"
msgstr "Azerbaïdjan"
#: includes/iso.inc:46
msgid "Bangladesh"
msgstr "Bangladesh"
#: includes/iso.inc:60
msgid "Bouvet Island"
msgstr "Île Bouvet"
#: includes/iso.inc:48
msgid "Burkina Faso"
msgstr "Burkina Faso"
#: includes/iso.inc:78
msgid "Cape Verde"
msgstr "Cap-Vert"
#: includes/iso.inc:149
msgid "Cayman Islands"
msgstr "Îles Caïmans"
Bonjour, La version
Bonjour,
Merci pour l'effort de trad, je vais de ce pas l'essayer.