dolibarr-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Dolibarr-dev] Dolibarr multi-langues


From: Benoit Mortier
Subject: Re: [Dolibarr-dev] Dolibarr multi-langues
Date: Wed, 14 Jul 2004 00:17:17 +0200
User-agent: KMail/1.5.4

Le Mardi 13 Juillet 2004 23:28, Eldy a ?crit :
> Benoit Mortier wrote:
> >Le Mardi 13 Juillet 2004 09:58, Rodolphe Quiedeville a ?crit :
> >>Le Sunday 11 July 2004 19:30, Eldy a écrit :
> >>>Dolibarr multi-langues
> >>
> >>Dans le cas de l'utilisation de gettext, on appellera de toutes
> >>facons la fonction au travers de la classe Translate() cela nous
> >>permettra de changer facilement de système au besoin.
> >
> >on a un accord sur gettext, alors ;-) si oui je commence la mise en
> >place aujoudrdh'ui ;-)
> >
> >Bonne journée
>
> Moi je suis pas chaud du tout pour gettext car c'est pas dispo sur
> mon php (snif). De plus ca bloquera la diffusion
> de Dolibarr en environnement windows ce qui me semble pas terrible
> (la dll en module optionnel existe mais n'est
> pas active par defaut et plante sur la plupart des versions php que
> j'ai testé).

cela veux dire que sous windows pas de gettext ??? meme sur un php 4.3.x 
??? peut tu m'en dire plus ??? j'ai pas de machine windows ;-)

> Le système que je viens de mettre a jour aujourdh'ui fonctionne sur
> le meme principe que egroupware, squirrelmail, etc...

squirrelmail utilise des fichiers .po avec gettext je viens de verifier 
sur ma version 1.4.3a ;-)

> A savoir des fichiers de traductions au format textes. L'objet $langs
> est crée de manière globale par la classe "Translate",
> ensuite en fonction des besoins on execute $langs->load("xxx") qui
> permet de charger la traduction du fichier xxx ce qui
> permet de créer des grouper les traductions par catégorie (catégorie
> xxx) et permet de ne charger que les traductions
> en rapport avec le besoin. Ensuite, pour afficher une chaine
> $langs->trans("MyString");
> Il y a de plus, une gestion cachée qui évite de lire plusieurs fois
> le meme fichier si l'un d'eux est deja chargé ce qui permet
> de charger un fichier de traduction ou on veut en fonction des
> besoins sans que cela ne génère des accès disques inutiles.

je vais regarder cela de plus pres pour me faire une opinion.

J'ai fait un test avec gettext avec les dernieres sources de dolibarr, 
et cela etait relativement facile.

> L'avantage est que n'importe qui peut se lancer dans un travail de
> traduction. Il sufiit de prendre les fichiers anglais dans le
> rep en_US et de la copier traduit dans xx_XX ou xx_XX est le code de
> la nouvelle langue.
>
> Si une gestion avec gettext doit etre faite, elle peut etre incluse
> dans la classe Translate, ce qui rend  le code toujours opérationnel
> sans y toucher mais je crains que ce ne soit pas une bonne idée d'un
> point de vue portabilité. De plus, par expérience un logiciel qui a
> des fichiers langues au format texte est très vite traduit (les
> contributions fusent plus vite qu'au format gettext).

mais le format gettext est du texte ;-) 

# French Squirrelmail Translation
# Copyright (c) 1999-2004 The Squirrelmail Development Team
# Antoine Hulin <address@hidden>, 2002-2003
# Alex Lemaresquier <address@hidden>, 2003-2004
# $Id: squirrelmail.po,v 1.8.2.8 2004/05/26 06:57:13 jervfors Exp $
msgid ""
msgstr ""
"Project-Id-Version: squirrelmail \n"
"POT-Creation-Date: 2004-05-23 18:06+0300\n"
"PO-Revision-Date: 2004-05-26 08:48+0200\n"
"Last-Translator: Alex Lemaresquier <address@hidden>\n"
"Language-Team: French <address@hidden>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"

msgid "Address Book"
msgstr "Carnet d'adresses"

msgid "All"
msgstr "Tout"

> Avant d'inclure gettext dans la classe Translate, peut-etre faut-il
> d'abord concentré ces efforts en remplacant dans les pages php
> les chaines en dur par un $langs->trans("MyString").

Oui, cela nous permettra d'y reflechir encore ...

Bonne nuit
-- 
Benoit Mortier
OpenSides sprl
Linux Engineer





reply via email to

[Prev in Thread] Current Thread [Next in Thread]