Comezo, Non, leandro non se garda nada do contexto, o único que podes ter é o número de liña e aquivo onde se topa dita cadea.
Por outra banda co sistema que proño eu e realmente é o que se está a empregar en calqueira linguaxe con bindings con gettext é que podes ter múltiples linguaxes con marcar unha vez só o código. Ó xerar os .mo polos en RUTA_APP/locale/LC_MESSAGES/nome_idioma.mo e a aplicación se encarga automaticamente de ler desa "base de datos de traducción" e sustituír segun conveña. A única forma que tes de controlar a linguaxe que vai mostrar a aplicación é poñer a linguaxe na que queres mediante esta función setlocale(LC_MESSAGES,"gl_ES"); para o caso do galego e en PHP, o bo que ten todo isto e que mediante lóxica de aplicación LC_MESSAGES pode ser configurado como queiras e polo tanto segundo o que configures vaiche coller o arquivo de idioma que corresponda. En canto á forma de decía Xavier coido que é simplemente moi arriscada porque o número de posibilidades de traducción que podes ter é moi grande e polo tanto o "parser" non vai ser nin escalable nin lóxico, sobre todo tendo esta libraría xa testeada e empregada en producción. No caso de Xavier se quere voltar a traducir a mesma aplicación a varios idiomas tería que "rebuscar" no código de novo para cada idioma cousa que con gettext xa o fai automáticamente a libraría (xgettext). E unha última cousa, gettext non só podes "traducir" as cadeas de texto dunha app, senón que tamén configurache o modo en que se mostran as datas, moedas e demáis. Polo tanto para localizar unha app o custo que supón marcar o código con un simple _( ) non é nada comparado con expresións regulares. Leandro Regueiro escribiu: >> Primeiro extraes, pero despois, como volves a meter o código??? >> > > Unha pregunta que pode ser estúpida, cando se extraen as cadeas, > gárdase algo de información de contexto, coma a liña na que estaba a > cadea? Porque senón cun script que fora a esa liña, buscara nela a > cadea orixinal, e a cambiara pola cadea traducida xa teriamos o choio > solucionado! > > Ata logo, > Leandro Regueiro > _______________________________________________ > G11n mailing list > G11n en mancomun.org > http://listas.mancomun.org/mailman/listinfo/g11n > -- Paco Dieguez Linux User #409880 Chave GPG: A2A4F9B8 en keyserver.rediris.com www.mabishu.com