Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multilenguaje #129

Closed
3 tasks done
hugoruscitti opened this issue Jun 11, 2014 · 6 comments
Closed
3 tasks done

Multilenguaje #129

hugoruscitti opened this issue Jun 11, 2014 · 6 comments
Assignees
Milestone

Comments

@hugoruscitti
Copy link

hugoruscitti commented Jun 11, 2014

Pendientes:

  • poder meter portales de los distintos idiomas
  • copiar los textos de castellano para portugués, aymara y guaraní
  • que el lenguage lo tome de forma dinámica

original:

From [email protected] on July 23, 2011 10:34:44

Que se pueda generar un .iso en portugués, o alemán, o etc.

Original issue: http://code.google.com/p/cdpedia/issues/detail?id=128

@hugoruscitti
Copy link
Author

From [email protected] on July 23, 2011 14:34:21

Labels: Milestone-0.8

@hugoruscitti
Copy link
Author

From [email protected] on October 01, 2012 08:50:30

English and Norwegian version would have been nice too.

@facundobatista facundobatista self-assigned this Jun 12, 2014
@facundobatista facundobatista added this to the Release 0.9 milestone Jul 23, 2015
@fzuccolo
Copy link
Member

fzuccolo commented Jul 2, 2020

El idioma está harcodeado en varios lugares del código, tenemos que cambiar eso.
En src/config.py podríamos definir:

LANGUAGE = None
URL_WIKIPEDIA = None
URL_WIKIPEDIA_TPL = 'http://{}.wikipedia.org'

y cargar el idioma al inicio de acuerdo al contexto de ejecución:

cdpetron

Si ejecutamos python cdpetron.py ... <lang>, seteamos config.LANGUAGE = <lang>. Este valor, al terminar de generar una CDPedia, se guarda en temp/bloques/language.txt y también en el config.py de cdroot.

cdpedia

Si ejecutamos python cdpedia.py desde la raíz del proyecto (para testeo/debugging), se espera que haya una CDPedia generada en temp, por lo que podemos leer <lang> de <DIR_BLOQUES>/language.txt.

Si ejecutamos python cdpedia.py desde cdroot el valor de config.LANGUAGE ya debería estar correctamente seteado (se guarda en la generación).

Creo que con esto y algunos cambios menores más ya sería posible generar una CDPedia en otro idioma.

Mejora opcional

Podríamos además automatizar lo descrito en locale/HOWTO.txt agregando un script e.g. locale/locale.py que use exclusivamente el paquete Babel de python, algo así:

python locale.py <option> [value]

  -a --add-language <lang>     Create lang.po and lang/LC_MESSAGES/
  -e --extract                 Extract strings to translate
  -c --compile <lang>          Compile .mo for lang
  -s --stats                   Show percentage for each lang, etc.

@facundobatista
Copy link
Member

+1 a lo de guardar el language en el config, con los cambios a cdpetron y cdpedia que dijiste después.

Además, tendríamos que dejar de pasar ese language por todos lados, y que se lo tome de la config.

Lo de automatizar el manejo de los archivos de traducción también podría ser. Incluso que sea parte de la generación de la cdpedia... ¿de alguna manera que cdpetron se de cuenta al principio que la traducción está desactualizada y tire un warning? O que directamente corte el proceso?

@fzuccolo
Copy link
Member

fzuccolo commented Jul 3, 2020

Sí estaría buenísimo que cdpetron verifique al inicio la traducción, que en test mode tire un warning y en modo normal corte el proceso. Voy a ver cómo se puede hacer. Es lo más lógico que cualquier funcionalidad quede expuesta a través de cdepetron.

@fzuccolo
Copy link
Member

fzuccolo commented Sep 4, 2020

Cierro por que la funcionalidad base se implementó con #275, #286 y #290.
Queda pendiente #306 para un próximo release.

@fzuccolo fzuccolo closed this as completed Sep 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants