[pyar] Strings con reemplazos en jinja
Facundo Batista
facundobatista en gmail.com
Sab Jul 12 20:31:30 ART 2014
Buenas!
En otro thread me ayudaron y logré hacer que en CDPedia (donde tenemos
un server no django pero usamos templates jinja) funcione tener algo
como por ejemplo:
<h5>{{ gettext('Search') }}</h5>
Luego yo ejecuto:
pybabel -v extract -F locale/babel.config -o locale/core.pot
src/web/templates/
Y paso a tener ese string en el core.pot. Hago todo lo que corresponde
a nivel de "localización" (traducir, compilar, etc), ¡y funciona!
Ahora vamos por el nivel dos: strings con reemplazos.
Estuve tratando de lograr hacer andar lo siguiente (la verdad, a los
ponchazos, no encontré en ningun lugar que diga cómo hacerlo :/ ):
<title>{{ gettext('Article %s not found.' % (article_name,)) }}</title>
Como ven ahí, el texto tiene un %s que luego jinja debería reemplazar
con el nombre del artículo!!
En inglés eso funciona: cuando corro CDPedia teniendo ese texto en el
template, yo veo algo como:
"Article FooBar not found"
El tema es que no logro que encaje la internacionalización acá. O sea,
el mismo "pybabel extract" que tiraba antes no me está incluyendo este
string en el .pot (y si lo incluyo a mano, traduzco, compilo, etc,
igual tampoco funciona).
Lo que me gustaría que pase es que esto me aparezca en el .pot:
"Article %s not found"
...así yo traduzco esto en el es.po....
"No se encontró el artículo %s"
... y luego al correr CDPedia se debería ver:
"No se encontró el artículo FooBar"
¿Alguien tiene idea cómo hacer funcionar esto?
Muchas gracias!!
Slds.
--
. Facundo
Blog: http://www.taniquetil.com.ar/plog/
PyAr: http://www.python.org/ar/
Twitter: @facundobatista
More information about the pyar
mailing list