Bahmni: Changes in locale_en.json, should I update Transifex as well?

From the PAT call last week, @binduak informed me that yes, Transifex is automatically pulling the locale_en.json files to be used as the reference for message keys.

This means that if someone needs to add new keys, he/her must add them in the appropriate locale_en.json file and only the ‘en’ ones.

I think this also means that only ‘en’ locale should be maintained in the source code. The other locales being maintained in Transifex, we could have some conflicts between the files in GitHub and the ones in Transifex.

@angshuonline @darius Do you agree that we should remove the ‘locale_es’, ‘fr’ and ‘pt_BR’ JSON files from the GitHub repo? (especially knowing that in fact Bahmni does not yet handle Internationalization at all but only Localization -and not fully)


I think it is necessary to define and document how implementations can localize Bahmni, ie use their own locale files (likely already translated/maintained in Transifex), without having to maintain a fork of Bahmni Apps to hold the files.

Transifex does not let us maintain versions of the locale files (@binduak do you confirm this?) so it could be risky to pull the files from Transifex each time one starts a new server. That’s why each implementation still has to save the translation files on a repo somewhere (and occasionally pull/sync from Transifex to get updates).

So we could as well recommend to use the Bahmni Config repository! (since implementations will always fork it anyway)

@angshuonline informed me that we can have as many locale files as we want in Bahmni Config as soon as they are suffixed by ‘xx_json’. For instance for ‘fr’ locale, what about having those 2 files:

tree ~/repos/bahmni-config/openmrs/
├── i18n
    │   ├── registration
    │   │   ├── config_locale_fr.json
    │   │   ├── bahmniapps_locale_fr.json
2 Likes