mirror of
https://github.com/libretro/RetroArch.git
synced 2024-11-28 02:30:35 +00:00
.. | ||
.gitignore | ||
crowdin_sync.sh | ||
crowdin.yaml | ||
h2json.py | ||
json2h.py | ||
msg_hash_ar.c | ||
msg_hash_ar.h | ||
msg_hash_chs.c | ||
msg_hash_chs.h | ||
msg_hash_cht.c | ||
msg_hash_cht.h | ||
msg_hash_de.c | ||
msg_hash_de.h | ||
msg_hash_el.c | ||
msg_hash_el.h | ||
msg_hash_eo.c | ||
msg_hash_eo.h | ||
msg_hash_es.c | ||
msg_hash_es.h | ||
msg_hash_fr.c | ||
msg_hash_fr.h | ||
msg_hash_it.c | ||
msg_hash_it.h | ||
msg_hash_ja.c | ||
msg_hash_ja.h | ||
msg_hash_ko.c | ||
msg_hash_ko.h | ||
msg_hash_lbl.h | ||
msg_hash_nl.c | ||
msg_hash_nl.h | ||
msg_hash_pl.c | ||
msg_hash_pl.h | ||
msg_hash_pt_br.c | ||
msg_hash_pt_br.h | ||
msg_hash_pt_pt.c | ||
msg_hash_pt_pt.h | ||
msg_hash_ru.c | ||
msg_hash_ru.h | ||
msg_hash_tr.c | ||
msg_hash_tr.h | ||
msg_hash_us.c | ||
msg_hash_us.h | ||
msg_hash_vn.c | ||
msg_hash_vn.h | ||
README.md |
Internationalization Workflow (Draft)
Steps
- Developers update strings in
msg_hash_us.h
. - Developers (can set a cron job) run
./h2json.py msg_hash_us.h
to generatemsg_hash_us.json
. It is just a convenient format that is supported by Weblate/Crowdin/Transifex and doesn't need to be in version control. - Developers (can set a cron job) upload
msg_hash_us.json
to Weblate/Crowdin/Transifex. - Translators translate strings on Weblate/Crowdin/Transifex.
- Developers (can set a cron job) download
msg_hash_xx.json
files. - Developers (can set a cron job) run
./json2h.py msg_hash_xx.json
to generatemsg_hash_xx.h
.
Pros
- No new dependencies.
- No performance impact.
- Don't require translators to know how to use Git, how to read C code and how to create Pull Request.
- Translators will be informed whenever a source string changes.
Cron job setup
- Install crowdin cli tool
- Get the
intl/crowdin.yaml
file from someone who have crowdin admin accounts - Add cron job
cd path/to/retroarch/intl && ./crowin_sync.sh