From a3b7509a74a05febca715857fd2e910e040a8cef Mon Sep 17 00:00:00 2001 From: Laurent Peuch Date: Sun, 31 Mar 2024 06:44:12 +0200 Subject: [PATCH] feat(translate_apps): use json.dumps the same way than weblate to avoid duplications --- .../translate_apps/push_or_update_apps_on_repository.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/tools/translate_apps/push_or_update_apps_on_repository.py b/tools/translate_apps/push_or_update_apps_on_repository.py index b6b551bf..6a64ef3e 100644 --- a/tools/translate_apps/push_or_update_apps_on_repository.py +++ b/tools/translate_apps/push_or_update_apps_on_repository.py @@ -84,12 +84,12 @@ def extract_strings_to_translate_from_apps(apps, translations_repository): for language, translated_strings in translations.items(): translations_repository.write_file( translations_path / f"{language}.json", - json.dumps(translated_strings, indent=4, sort_keys=True), + json.dumps(translated_strings, indent=4, sort_keys=True, ensure_ascii=False) + "\n", ) else: translations_repository.write_file( translations_path / "en.json", - json.dumps(translations["en"], indent=4, sort_keys=True), + json.dumps(translations["en"], indent=4, sort_keys=True, ensure_ascii=False) + "\n", ) # add strings that aren't already present but don't overwrite existing ones @@ -101,8 +101,9 @@ def extract_strings_to_translate_from_apps(apps, translations_repository): if not (translations_path / f"{language}.json").exists(): translations_repository.write_file( translations_path / f"{language}.json", - json.dumps(translated_strings, indent=4, sort_keys=True), + json.dumps(translated_strings, indent=4, sort_keys=True, ensure_ascii=False) + "\n", ) + else: # if it exists, only add keys that aren't already present language_file = json.load((translations_path / f"{language}.json").open()) for key, translated_string in translated_strings.items(): @@ -111,7 +112,7 @@ def extract_strings_to_translate_from_apps(apps, translations_repository): translations_repository.write_file( translations_path / f"{language}.json", - json.dumps(language_file, indent=4, sort_keys=True), + json.dumps(language_file, indent=4, sort_keys=True, ensure_ascii=False) + "\n", ) # if something has been modified