From f83cfa79c8790c3ade20b3aa66b87bc9e228027c Mon Sep 17 00:00:00 2001 From: misygauziya Date: Thu, 27 Jul 2023 03:57:35 +0900 Subject: [PATCH] =?UTF-8?q?[bugfix]=20Deepl(auth)=E3=81=A7EN=E2=86=92JP?= =?UTF-8?q?=E3=81=AE=E7=BF=BB=E8=A8=B3=E3=81=8C=E3=81=86=E3=81=BE=E3=81=8F?= =?UTF-8?q?=E3=81=84=E3=81=8B=E3=81=AA=E3=81=84=E5=95=8F=E9=A1=8C=E3=82=92?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3(#29)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- VRCT.py | 16 ++++++------- languages.py | 61 +++++++++++++++++++++++++++++++++++++++++++----- translation.py | 4 ++-- window_config.py | 48 ++++++++++++++++++------------------- 4 files changed, 89 insertions(+), 40 deletions(-) diff --git a/VRCT.py b/VRCT.py index 1ed48de2..d4352373 100644 --- a/VRCT.py +++ b/VRCT.py @@ -44,10 +44,10 @@ class App(CTk): self.UI_LANGUAGE = "en" ## Translation self.CHOICE_TRANSLATOR = translators[0] - self.INPUT_SOURCE_LANG = list(translation_lang[self.CHOICE_TRANSLATOR].keys())[0] - self.INPUT_TARGET_LANG = list(translation_lang[self.CHOICE_TRANSLATOR].keys())[1] - self.OUTPUT_SOURCE_LANG = list(translation_lang[self.CHOICE_TRANSLATOR].keys())[1] - self.OUTPUT_TARGET_LANG = list(translation_lang[self.CHOICE_TRANSLATOR].keys())[0] + self.INPUT_SOURCE_LANG = list(translation_lang[self.CHOICE_TRANSLATOR]["source"].keys())[0] + self.INPUT_TARGET_LANG = list(translation_lang[self.CHOICE_TRANSLATOR]["target"].keys())[1] + self.OUTPUT_SOURCE_LANG = list(translation_lang[self.CHOICE_TRANSLATOR]["source"].keys())[1] + self.OUTPUT_TARGET_LANG = list(translation_lang[self.CHOICE_TRANSLATOR]["target"].keys())[0] ## Transcription Send self.CHOICE_MIC_HOST = get_default_input_device()["host"]["name"] self.CHOICE_MIC_DEVICE = get_default_input_device()["device"]["name"] @@ -127,16 +127,16 @@ class App(CTk): if config["CHOICE_TRANSLATOR"] in list(self.translator.translator_status.keys()): self.CHOICE_TRANSLATOR = config["CHOICE_TRANSLATOR"] if "INPUT_SOURCE_LANG" in config.keys(): - if config["INPUT_SOURCE_LANG"] in list(translation_lang[self.CHOICE_TRANSLATOR].keys()): + if config["INPUT_SOURCE_LANG"] in list(translation_lang[self.CHOICE_TRANSLATOR]["source"].keys()): self.INPUT_SOURCE_LANG = config["INPUT_SOURCE_LANG"] if "INPUT_TARGET_LANG" in config.keys(): - if config["INPUT_SOURCE_LANG"] in list(translation_lang[self.CHOICE_TRANSLATOR].keys()): + if config["INPUT_TARGET_LANG"] in list(translation_lang[self.CHOICE_TRANSLATOR]["target"].keys()): self.INPUT_TARGET_LANG = config["INPUT_TARGET_LANG"] if "OUTPUT_SOURCE_LANG" in config.keys(): - if config["INPUT_SOURCE_LANG"] in list(translation_lang[self.CHOICE_TRANSLATOR].keys()): + if config["OUTPUT_SOURCE_LANG"] in list(translation_lang[self.CHOICE_TRANSLATOR]["source"].keys()): self.OUTPUT_SOURCE_LANG = config["OUTPUT_SOURCE_LANG"] if "OUTPUT_TARGET_LANG" in config.keys(): - if config["INPUT_SOURCE_LANG"] in list(translation_lang[self.CHOICE_TRANSLATOR].keys()): + if config["OUTPUT_TARGET_LANG"] in list(translation_lang[self.CHOICE_TRANSLATOR]["target"].keys()): self.OUTPUT_TARGET_LANG = config["OUTPUT_TARGET_LANG"] # Transcription diff --git a/languages.py b/languages.py index 0daa3d3a..3862f4ff 100644 --- a/languages.py +++ b/languages.py @@ -1,5 +1,5 @@ transcription_lang = { - "Japanese Japan":"ja-JP", + "Japanese (Japan)":"ja-JP", "English (United States)":"en-US", "English (United Kingdom)":"en-GB", "Afrikaans (South Africa)":"af-ZA", @@ -92,7 +92,7 @@ transcription_lang = { translators = ["DeepL(web)", "DeepL(auth)", "Google(web)", "Bing(web)"] translation_lang = {} -translation_lang["DeepL(web)"] = { +dict_deepl_web_languages = { "Japanese":"JA", "English":"EN", "Korean":"KO", @@ -123,7 +123,43 @@ translation_lang["DeepL(web)"] = { "Turkish":"TR", "Norwegian":"NB", } -translation_lang["DeepL(auth)"] = { +translation_lang["DeepL(web)"] = { + "source":dict_deepl_web_languages, + "target":dict_deepl_web_languages, +} + +dict_deepl_auth_source_languages = { + "Japanese":"ja", + "English":"en", + "Bulgarian":"bg", + "Czech":"cs", + "Danish":"da", + "German":"de", + "Greek":"el", + "Spanish":"es", + "Estonian":"et", + "Finnish":"fi", + "French":"fr", + "Hungarian":"hu", + "Indonesian":"id", + "Italian":"it", + "Korean":"ko", + "Lithuanian":"lt", + "Latvian":"lv", + "Norwegian":"nb", + "Dutch":"nl", + "Polish":"pl", + "Portuguese":"pt", + "Romanian":"ro", + "Russian":"ru", + "Slovak":"sk", + "Slovenian":"sl", + "Swedish":"sv", + "Turkish":"tr", + "Ukrainian":"uk", + "Chinese":"zh" +} +dict_deepl_auth_target_languages = { "Japanese":"ja", "English American":"en-US", "English British":"en-GB", @@ -146,7 +182,6 @@ translation_lang["DeepL(auth)"] = { "Norwegian":"nb", "Dutch":"nl", "Polish":"pl", - "Portuguese":"pt", "Portuguese Brazilian":"pt-BR", "Portuguese European":"pt-PT", "Romanian":"ro", @@ -158,7 +193,12 @@ translation_lang["DeepL(auth)"] = { "Ukrainian":"uk", "Chinese":"zh" } -translation_lang["Google(web)"] = { +translation_lang["DeepL(auth)"] = { + "source": dict_deepl_auth_source_languages, + "target": dict_deepl_auth_target_languages, +} + +dict_google_web_languages = { "Japanese":"ja", "English":"en", "Chinese":"zh", @@ -222,7 +262,12 @@ translation_lang["Google(web)"] = { "Basque":"eu", "Irish":"ga" } -translation_lang["Bing(web)"] = { +translation_lang["Google(web)"] = { + "source":dict_google_web_languages, + "target":dict_google_web_languages, +} + +dict_bing_web_languages = { "Japanese":"ja", "English":"en", "Chinese":"zh", @@ -284,6 +329,10 @@ translation_lang["Bing(web)"] = { "Punjabi":"pa", "Irish":"ga" } +translation_lang["Bing(web)"] = { + "source":dict_bing_web_languages, + "target":dict_bing_web_languages, +} selectable_languages = { "en": "English", diff --git a/translation.py b/translation.py index 8eacf8a6..e251c8a9 100644 --- a/translation.py +++ b/translation.py @@ -35,8 +35,8 @@ class Translator(): def translate(self, translator_name, source_language, target_language, message): result = "" try: - source_language=translation_lang[translator_name][source_language] - target_language=translation_lang[translator_name][target_language] + source_language=translation_lang[translator_name]["source"][source_language] + target_language=translation_lang[translator_name]["target"][target_language] if translator_name == "DeepL(web)": result = deepl_web_Translator( source_language=source_language, diff --git a/window_config.py b/window_config.py index 7c8b2173..8e3a117e 100644 --- a/window_config.py +++ b/window_config.py @@ -212,33 +212,33 @@ class ToplevelWindowConfig(CTkToplevel): print_textbox(self.parent.textbox_message_system_log, "Auth Key or language setting is incorrect", "ERROR") else: self.optionmenu_translation_input_source_language.configure( - values=list(translation_lang[choice].keys()), - variable=StringVar(value=list(translation_lang[choice].keys())[0])) + values=list(translation_lang[choice]["source"].keys()), + variable=StringVar(value=list(translation_lang[choice]["source"].keys())[0])) self.optionmenu_translation_input_target_language.configure( - values=list(translation_lang[choice].keys()), - variable=StringVar(value=list(translation_lang[choice].keys())[1])) + values=list(translation_lang[choice]["target"].keys()), + variable=StringVar(value=list(translation_lang[choice]["target"].keys())[1])) self.optionmenu_translation_output_source_language.configure( - values=list(translation_lang[choice].keys()), - variable=StringVar(value=list(translation_lang[choice].keys())[1])) + values=list(translation_lang[choice]["source"].keys()), + variable=StringVar(value=list(translation_lang[choice]["source"].keys())[1])) self.optionmenu_translation_output_target_language.configure( - values=list(translation_lang[choice].keys()), - variable=StringVar(value=list(translation_lang[choice].keys())[0])) + values=list(translation_lang[choice]["target"].keys()), + variable=StringVar(value=list(translation_lang[choice]["target"].keys())[0])) if SCROLLABLE_DROPDOWN: self.scrollableDropdown_translation_input_source_language.configure( - values=list(translation_lang[choice].keys())) + values=list(translation_lang[choice]["source"].keys())) self.scrollableDropdown_translation_input_target_language.configure( - values=list(translation_lang[choice].keys())) + values=list(translation_lang[choice]["target"].keys())) self.scrollableDropdown_translation_output_source_language.configure( - values=list(translation_lang[choice].keys())) + values=list(translation_lang[choice]["source"].keys())) self.scrollableDropdown_translation_output_target_language.configure( - values=list(translation_lang[choice].keys())) + values=list(translation_lang[choice]["target"].keys())) self.parent.CHOICE_TRANSLATOR = choice - self.parent.INPUT_SOURCE_LANG = list(translation_lang[choice].keys())[0] - self.parent.INPUT_TARGET_LANG = list(translation_lang[choice].keys())[1] - self.parent.OUTPUT_SOURCE_LANG = list(translation_lang[choice].keys())[1] - self.parent.OUTPUT_TARGET_LANG = list(translation_lang[choice].keys())[0] + self.parent.INPUT_SOURCE_LANG = list(translation_lang[choice]["source"].keys())[0] + self.parent.INPUT_TARGET_LANG = list(translation_lang[choice]["target"].keys())[1] + self.parent.OUTPUT_SOURCE_LANG = list(translation_lang[choice]["source"].keys())[1] + self.parent.OUTPUT_TARGET_LANG = list(translation_lang[choice]["target"].keys())[0] save_json(self.parent.PATH_CONFIG, "CHOICE_TRANSLATOR", self.parent.CHOICE_TRANSLATOR) save_json(self.parent.PATH_CONFIG, "INPUT_SOURCE_LANG", self.parent.INPUT_SOURCE_LANG) save_json(self.parent.PATH_CONFIG, "INPUT_TARGET_LANG", self.parent.INPUT_TARGET_LANG) @@ -757,7 +757,7 @@ class ToplevelWindowConfig(CTkToplevel): self.optionmenu_translation_input_source_language = CTkOptionMenu( self.tabview_config.tab(config_tab_title_translation), command=self.optionmenu_translation_input_source_language_callback, - values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()), + values=list(translation_lang[self.parent.CHOICE_TRANSLATOR]["source"].keys()), variable=StringVar(value=self.parent.INPUT_SOURCE_LANG), font=CTkFont(family=self.parent.FONT_FAMILY), dropdown_font=CTkFont(family=self.parent.FONT_FAMILY), @@ -768,7 +768,7 @@ class ToplevelWindowConfig(CTkToplevel): if SCROLLABLE_DROPDOWN: self.scrollableDropdown_translation_input_source_language = CTkScrollableDropdown( self.optionmenu_translation_input_source_language, - values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()), + values=list(translation_lang[self.parent.CHOICE_TRANSLATOR]["source"].keys()), justify="left", button_color="transparent", command=self.optionmenu_translation_input_source_language_callback, @@ -792,7 +792,7 @@ class ToplevelWindowConfig(CTkToplevel): self.optionmenu_translation_input_target_language = CTkOptionMenu( self.tabview_config.tab(config_tab_title_translation), command=self.optionmenu_translation_input_target_language_callback, - values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()), + values=list(translation_lang[self.parent.CHOICE_TRANSLATOR]["target"].keys()), variable=StringVar(value=self.parent.INPUT_TARGET_LANG), font=CTkFont(family=self.parent.FONT_FAMILY), dropdown_font=CTkFont(family=self.parent.FONT_FAMILY), @@ -803,7 +803,7 @@ class ToplevelWindowConfig(CTkToplevel): if SCROLLABLE_DROPDOWN: self.scrollableDropdown_translation_input_target_language = CTkScrollableDropdown( self.optionmenu_translation_input_target_language, - values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()), + values=list(translation_lang[self.parent.CHOICE_TRANSLATOR]["target"].keys()), justify="left", button_color="transparent", command=self.optionmenu_translation_input_target_language_callback, @@ -828,7 +828,7 @@ class ToplevelWindowConfig(CTkToplevel): self.optionmenu_translation_output_source_language = CTkOptionMenu( self.tabview_config.tab(config_tab_title_translation), command=self.optionmenu_translation_output_source_language_callback, - values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()), + values=list(translation_lang[self.parent.CHOICE_TRANSLATOR]["source"].keys()), variable=StringVar(value=self.parent.OUTPUT_SOURCE_LANG), font=CTkFont(family=self.parent.FONT_FAMILY), dropdown_font=CTkFont(family=self.parent.FONT_FAMILY), @@ -839,7 +839,7 @@ class ToplevelWindowConfig(CTkToplevel): if SCROLLABLE_DROPDOWN: self.scrollableDropdown_translation_output_source_language = CTkScrollableDropdown( self.optionmenu_translation_output_source_language, - values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()), + values=list(translation_lang[self.parent.CHOICE_TRANSLATOR]["source"].keys()), justify="left", button_color="transparent", command=self.optionmenu_translation_output_source_language_callback, @@ -863,7 +863,7 @@ class ToplevelWindowConfig(CTkToplevel): self.optionmenu_translation_output_target_language = CTkOptionMenu( self.tabview_config.tab(config_tab_title_translation), command=self.optionmenu_translation_output_target_language_callback, - values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()), + values=list(translation_lang[self.parent.CHOICE_TRANSLATOR]["target"].keys()), variable=StringVar(value=self.parent.OUTPUT_TARGET_LANG), font=CTkFont(family=self.parent.FONT_FAMILY), dropdown_font=CTkFont(family=self.parent.FONT_FAMILY), @@ -874,7 +874,7 @@ class ToplevelWindowConfig(CTkToplevel): if SCROLLABLE_DROPDOWN: self.scrollableDropdown_translation_output_target_language = CTkScrollableDropdown( self.optionmenu_translation_output_target_language, - values=list(translation_lang[self.parent.CHOICE_TRANSLATOR].keys()), + values=list(translation_lang[self.parent.CHOICE_TRANSLATOR]["target"].keys()), justify="left", button_color="transparent", command=self.optionmenu_translation_output_target_language_callback,