(Courriels de diversion: <abrutie@roturieres-empresserais.com> <fournie@outraient-limerions.com> <efforceraient@cosmos-regionalisa.com> <douillettes@intitule-seminaires.com> <trieriez@planifies-revere.com> <barriez@obliquees-corsaient.com> <equivaloir@interviendra-chaleur.com> <calfeutreriez@chine-reductible.com> <papillonnees@bourgeoisement-huilerais.com> <ponctua@bricoles-veste.com> )
Gettext, ben c'est - comment dire - l'inferface utilisee par tout le monde ou presque ... Donc oui, c'est bien :) info:/gettext pour plus d'informations. Le probleme pour toi c'est que gettext n'est pas franchement prevu pour faire du pattern matching. gettext prend essentiellement une chaine FIXEE, trouve une correspondance et te la fournit. L'interet ? c'est facile via des tables de hachage ou autre trucs informatique du genre. ***************************************************************************************** Note : est ce que tu sais ce qu'est une expression reguliere (regexp) ? Si oui, lis la suite. Si non, demande sur la liste avant de continuer a lire. ***************************************************************************************** A ma connaissance, si tu veux utiliser gettext, il va falloir separer ton filtre en deux etapes : - reconnaitre la chaine - la traduire via gettext Tout ca pour un bon millier de messages en en moins de 1ms. Avec de la compilation a la volee. Sur un P75 Rires dans la salle^Wmailing list. Premier probleme : la compilation. Tu peux toujours compiler au lancement du logiciel, mais ca va te rallonger le temps de lancement. NB : je ne vois toujours pas le probleme a compiler les fichiers de traduction au prealable. Solution bourrine : - match a grand coup d'expressions regulieres - une fois que tu as trouve la bonne regexp, tu recuperes la chaine traduite via gettext et tu traduis probleme : worst case == 1000 tests de regexp, a priori avec capture, donc assez cher sur un P75, plus trouver la chaine qui va bien. Pas top. C'est toujours possible de tenter pour voir, mais je suis assez pessimiste sur le resultat. Optimisations : Essayer de trouver un moyen de te construire un automate de type automate d'expression reguliere qui arriverait a trouver beaucoup plus rapidement la chaine qui va bien. A priori, c'est facile si la plupart du debut des chaines ne commence pas par des champs generaux (type %s). Beaucoup plus difficile sinon. (en fait, possible, mais demande de plus en plus de memoire au fur et a mesure de la complexification du bordel). Il peut aussi y avoir des problemes d'ambiguites. De l'informatique fine, quoi. Rigolo, mais faut avoir le temps et l'envie. -- Sylvain Joyeux -------------------------------------------------------------------- Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>