Open julienmalik opened 8 years ago
Also, loading of the proper translated flavor of the site depending on user's settings would be awesome, but this is probably impossible with a static website. is it really ?
See https://www.flag-sprites.com/ for free flags with css code ready
with a small javascript snippet it should be possible to redirect to the user's language specific version of the page (more or less like simone does for yunohost doc ?)
See https://github.com/yunohost/yunohost-admin/blob/unstable/src%2Fjs%2Fyunohost%2Fmain.js#L111-L119
redirect in js with : document.location.href = "https://tonporn.com"
Jinja has a gettext extension : http://jinja.pocoo.org/docs/dev/extensions/#i18n-extension This could probably help a lot, and decouple quite well localization functionnalities from the core of prosopopee.
I made an attempt with stuff like :
title:
fr: Salut
es: Ola
but I fear this will become complex to handle all the different text attributes of individual sections which all have a different data model (e.g. full-picture and text).
Regarding flags: I've been taugh that using flag is apparently bad for i18n and that language name or short name should be used instead.
An experiment i'm relatively happy with : https://gist.github.com/julienmalik/e6544ad26e82bae4381c
beginning of a solution here : https://github.com/julienmalik/prosopopee/tree/internationalization it generates index.$lang.html for all langs if you put e.g. :
multilingual:
- fr
- es
in the root settings.yaml
to be multilingual the gallery .yaml then needs to be like :
title:
fr: Salut
es: Ola
but the monolingual case is still supported as before.
when generating a multilingual version, if a string is not translated (title: Hello
) then it is used for all languages.
multi langages are supported only for title, subtitle and text keys.
I need to make prosopopee multilingual. Probably it is not so much work and modifications, so i'd like to implement it.
Opening this issue in the hope to get feedback first (so that it has a chance to get merged upstream in the future).
My initial thoughts:
Any title/subtitle/text could have :
The list of translations might need to be referenced from the main settings. Then for each page we render the different flavors :
and in all headers, we put a small widget with flags to switch between languages (ideas welcome for that, i'm far from fluent in html/css/js).