diff options
Diffstat (limited to 'client-web/scripts/translate_argos.py')
-rw-r--r-- | client-web/scripts/translate_argos.py | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/client-web/scripts/translate_argos.py b/client-web/scripts/translate_argos.py deleted file mode 100644 index 2f45446..0000000 --- a/client-web/scripts/translate_argos.py +++ /dev/null @@ -1,31 +0,0 @@ -import json -import sys -from argostranslate import translate - -for line in sys.stdin: - task = json.loads(line) - srclang = task["source"] - dstlang = task["target"] - - installed_languages = { lang.code: lang for lang in translate.load_installed_languages() } - if srclang not in installed_languages: - raise Exception(f"need language {srclang}") - if dstlang not in installed_languages: - raise Exception(f"need language {dstlang}") - srclang = installed_languages[srclang] - dstlang = installed_languages[dstlang] - translator = srclang.get_translation(dstlang) - if translator is None: - raise Exception("no translator available") - - - def tr(key, ob): - if ob == None: return None - if isinstance(ob, list): return [ tr(None,e) for e in ob ] - if isinstance(ob, dict): return { k: tr(k,v) for k, v in ob.items() } - if isinstance(ob, str): - print(f"{srclang.code}->{dstlang.code} {key}", file=sys.stderr) - return translator.translate(ob) - - print(json.dumps(tr("root", task["strings"]))) - |