abouttreesummaryrefslogcommitdiff
path: root/sync_translations.py
diff options
context:
space:
mode:
authorJules Aguillon2024-03-04 00:32:47 +0100
committerJules Aguillon2024-03-04 00:57:23 +0100
commita9f9bbec19369c2e502789dfec7e368172a9a9e3 (patch)
tree56719bd06de8994e2b2f7c45315a02edd269ff15 /sync_translations.py
parent35d1ebeab5a6c8fb5a99e63a08e0436b4fe0ebc8 (diff)
downloadunexpected-keyboard-a9f9bbec19369c2e502789dfec7e368172a9a9e3.tar.gz
unexpected-keyboard-a9f9bbec19369c2e502789dfec7e368172a9a9e3.zip
Revert renaming metadata locale directories
Metadata directories were renamed while adding store descriptions into strings files for simplicity. This interferes with releases so is released. An hardcoded lookup table is used instead.
Diffstat (limited to 'sync_translations.py')
-rw-r--r--sync_translations.py31
1 files changed, 27 insertions, 4 deletions
diff --git a/sync_translations.py b/sync_translations.py
index ec696c9..58a356c 100644
--- a/sync_translations.py
+++ b/sync_translations.py
@@ -6,6 +6,27 @@ import glob, os
# - Remove obsolete strings
# - Sort in the same order as the baseline
# The baseline is 'values/strings.xml', which is english.
+# Sync store title and descriptions to the 'metadata/' directory.
+
+VALUE_DIR_TO_METADATA = {
+ "cs": "cs-CZ",
+ "de": "de-DE",
+ "en": "en-US",
+ "es": "es-ES",
+ "fa": "fa-IR",
+ "fr": "fr-FR",
+ "it": "it-IT",
+ "ko": "ko-KR",
+ "lv": "lv",
+ "pl": "pl-PL",
+ "pt": "pt-BR",
+ "ro": "ro",
+ "ru": "ru-RU",
+ "tr": "tr-TR",
+ "uk": "uk",
+ "vi": "vi",
+ "zh-rCN": "zh-CN",
+ }
# Dict of strings. Key is the pair string name and product field (often None).
def parse_strings_file(file):
@@ -38,8 +59,11 @@ def sync(baseline, strings):
(key, base_string, True)
for key, base_string in baseline.items() ]
-def sync_metadata(locale, strings):
- meta_dir = "metadata/android/" + locale
+def sync_metadata(value_dir, strings):
+ locale = os.path.basename(value_dir).removeprefix("values-")
+ if not locale in VALUE_DIR_TO_METADATA:
+ raise Exception("Locale '%s' not known, please add it into sync_translations.py" % locale)
+ meta_dir = "metadata/android/" + VALUE_DIR_TO_METADATA[locale]
def sync_meta_file(fname, string_name):
if string_name in strings:
string = strings[string_name]
@@ -62,8 +86,7 @@ for value_dir in glob.glob("res/values-*"):
synced_strings = sync(baseline, local_strings)
with open(strings_file, "w", encoding="utf-8") as out:
write_updated_strings(out, synced_strings)
- locale = os.path.basename(value_dir).removeprefix("values-")
- sync_metadata(locale, local_strings)
+ sync_metadata(value_dir, local_strings)
print_status(strings_file, synced_strings)
sync_metadata("en", baseline)