From 29a86f7320e7f714f77e9f5458a3944fed6ffe1a Mon Sep 17 00:00:00 2001 From: dymik739 Date: Fri, 7 Apr 2023 00:19:39 +0300 Subject: [PATCH] transliteration-decoder: add new module --- modules/transliteration-decoder/index.py | 18 ++++++++++ modules/transliteration-decoder/meta.json | 6 ++++ .../translate_models.json | 35 +++++++++++++++++++ 3 files changed, 59 insertions(+) create mode 100644 modules/transliteration-decoder/index.py create mode 100644 modules/transliteration-decoder/meta.json create mode 100644 modules/transliteration-decoder/translate_models.json diff --git a/modules/transliteration-decoder/index.py b/modules/transliteration-decoder/index.py new file mode 100644 index 0000000..b35f0d1 --- /dev/null +++ b/modules/transliteration-decoder/index.py @@ -0,0 +1,18 @@ +if self.MESSAGE['text'].split()[0] == "!decode" and len(self.MESSAGE['text'].split(" ", 2)) == 3: + try: + models = json.loads(readfile(self.path + "translate_models.json")) + chosen_model = self.MESSAGE['text'].split(" ", 2)[1] + + t = self.MESSAGE['text'].split(" ", 2)[2] + + translated_t = t + if chosen_model not in models: + self.RESPONCE = f"Такого варіанту транслітерації не існує. Доступні варіанти: {', '.join(list(models.keys()))}" + else: + for i in models[chosen_model]: + translated_t = translated_t.replace(i[0], i[1]) + translated_t = translated_t.replace(i[0].upper(), i[1].upper()) + + self.RESPONCE = f"Результат: {translated_t}" + except Exception as e: + print(f"[translit-decoder] Got exception: {e}") diff --git a/modules/transliteration-decoder/meta.json b/modules/transliteration-decoder/meta.json new file mode 100644 index 0000000..4bcbdeb --- /dev/null +++ b/modules/transliteration-decoder/meta.json @@ -0,0 +1,6 @@ +{ + "version": 1, + "index_file": "index.py", + "start_on_boot": true, + "alias": "translit-decoder" +} diff --git a/modules/transliteration-decoder/translate_models.json b/modules/transliteration-decoder/translate_models.json new file mode 100644 index 0000000..bb2ca30 --- /dev/null +++ b/modules/transliteration-decoder/translate_models.json @@ -0,0 +1,35 @@ +{ + "cz-ua": [ + ["šč", "щ"], + ["ja", "я"], + ["ju", "ю"], + ["ji", "ї"], + ["je", "є"], + ["f", "ф"], + ["b", "б"], + ["ž", "ж"], + ["q", "к"], + ["š", "ш"], + ["n", "н"], + ["p", "п"], + ["r", "р"], + ["s", "с"], + ["t", "т"], + ["h", "х"], + ["č", "ч"], + ["'", "ь"], + ["y", "и"], + ["z", "з"], + ["l", "л"], + ["k", "к"], + ["d", "д"], + ["u", "у"], + ["m", "м"], + ["v", "в"], + ["j", "й"], + ["s", "с"], + ["a", "а"], + ["i", "і"], + ["g", "г"] + ] +}