mirror of
https://github.com/HIllya51/LunaTranslator.git
synced 2024-12-27 15:44:12 +08:00
.
This commit is contained in:
parent
f01c6ef543
commit
92f4caa7ae
@ -1,7 +1,7 @@
|
||||
|
||||
set(VERSION_MAJOR 6)
|
||||
set(VERSION_MINOR 5)
|
||||
set(VERSION_PATCH 7)
|
||||
set(VERSION_PATCH 8)
|
||||
set(VERSION_REVISION 0)
|
||||
set(LUNA_VERSION "{${VERSION_MAJOR},${VERSION_MINOR},${VERSION_PATCH},${VERSION_REVISION}}")
|
||||
add_library(VERSION_DEF INTERFACE)
|
||||
|
@ -386,18 +386,23 @@ class MAINUI:
|
||||
text_solved, optimization_params = self.solvebeforetrans(text)
|
||||
|
||||
maybehaspremt = {}
|
||||
skip_other_on_success = False
|
||||
fix_rank = globalconfig["fix_translate_rank_rank"].copy()
|
||||
|
||||
if "premt" in self.translators:
|
||||
if "rengong" in self.translators:
|
||||
contentraw = self.analyzecontent(text_solved, optimization_params)
|
||||
try:
|
||||
contentraw = text_solved
|
||||
for _ in optimization_params:
|
||||
if isinstance(_, dict):
|
||||
_gpt_dict = _.get("gpt_dict", None)
|
||||
if _gpt_dict is None:
|
||||
continue
|
||||
contentraw = _.get("gpt_dict_origin")
|
||||
res = self.translators["rengong"].translate(contentraw)
|
||||
except:
|
||||
print_exc()
|
||||
res = None
|
||||
maybehaspremt["rengong"] = res
|
||||
skip_other_on_success = (
|
||||
res and self.translators["rengong"].config["skip_other_on_success"]
|
||||
)
|
||||
|
||||
if (not skip_other_on_success) and ("premt" in self.translators):
|
||||
contentraw = self.analyzecontent(text_solved, optimization_params)
|
||||
try:
|
||||
maybehaspremt = self.translators["premt"].translate(contentraw)
|
||||
except:
|
||||
print_exc()
|
||||
@ -406,11 +411,13 @@ class MAINUI:
|
||||
fix_rank = fix_rank[:idx] + other + fix_rank[idx + 1 :]
|
||||
|
||||
real_fix_rank = []
|
||||
|
||||
for engine in fix_rank:
|
||||
if (engine not in self.translators) and (engine not in maybehaspremt):
|
||||
continue
|
||||
real_fix_rank.append(engine)
|
||||
if skip_other_on_success:
|
||||
real_fix_rank.append("rengong")
|
||||
else:
|
||||
for engine in fix_rank:
|
||||
if (engine not in self.translators) and (engine not in maybehaspremt):
|
||||
continue
|
||||
real_fix_rank.append(engine)
|
||||
|
||||
if len(real_fix_rank) == 0:
|
||||
return _showrawfunction()
|
||||
@ -448,6 +455,15 @@ class MAINUI:
|
||||
)
|
||||
return True
|
||||
|
||||
def analyzecontent(self, text_solved, optimization_params):
|
||||
for _ in optimization_params:
|
||||
if isinstance(_, dict):
|
||||
_gpt_dict = _.get("gpt_dict", None)
|
||||
if _gpt_dict is None:
|
||||
continue
|
||||
return _.get("gpt_dict_origin")
|
||||
return text_solved
|
||||
|
||||
def _delaypreparefixrank(self, _showrawfunction, real_fix_rank):
|
||||
_showrawfunction()
|
||||
for engine in real_fix_rank:
|
||||
|
@ -188,8 +188,8 @@ class basetrans(commonbase):
|
||||
@property
|
||||
def transtype(self):
|
||||
# free/dev/api/offline/pre
|
||||
# dev/offline/pre 无视请求间隔
|
||||
# pre不使用翻译缓存
|
||||
# dev/offline 无视请求间隔
|
||||
# pre全都有额外的处理,不走该pipeline,不使用翻译缓存
|
||||
# offline不被新的请求打断
|
||||
return globalconfig["fanyi"][self.typename].get("type", "free")
|
||||
|
||||
@ -238,8 +238,6 @@ class basetrans(commonbase):
|
||||
# 除了预翻译不使用翻译缓存,以及手动触发gpt翻译外,其他不管什么翻译都缓存下来。
|
||||
if self.is_gpt_like and not is_auto_run:
|
||||
return None
|
||||
if self.transtype == "pre":
|
||||
return None
|
||||
res = self.shorttermcacheget(content)
|
||||
if res:
|
||||
return res
|
||||
@ -359,8 +357,6 @@ class basetrans(commonbase):
|
||||
|
||||
# 保存缓存
|
||||
# 不管是否使用翻译缓存,都存下来
|
||||
if self.transtype == "pre":
|
||||
return
|
||||
self.shorttermcacheset(cache_use, res)
|
||||
self.longtermcacheset(cache_use, res)
|
||||
|
||||
@ -374,6 +370,7 @@ class basetrans(commonbase):
|
||||
continue
|
||||
gpt_dict = _gpt_dict
|
||||
contentraw = _.get("gpt_dict_origin")
|
||||
break
|
||||
|
||||
return {
|
||||
"text": contentsolved,
|
||||
@ -409,7 +406,7 @@ class basetrans(commonbase):
|
||||
|
||||
self.maybeneedreinit()
|
||||
|
||||
if self.using_gpt_dict or self.transtype == "pre":
|
||||
if self.using_gpt_dict:
|
||||
contentsolved = self.__parse_gpt_dict(
|
||||
contentsolved, optimization_params
|
||||
)
|
||||
|
@ -113,8 +113,7 @@ class TS(basetrans):
|
||||
collect.append(line)
|
||||
return "\n".join(collect)
|
||||
|
||||
def translate(self, content: dict):
|
||||
content = content["contentraw"]
|
||||
def translate(self, content):
|
||||
self.checkfilechanged(
|
||||
self.unsafegetcurrentgameconfig(), tuple(self.config["jsonfile"])
|
||||
)
|
||||
|
@ -816,7 +816,8 @@
|
||||
},
|
||||
"rengong": {
|
||||
"args": {
|
||||
"jsonfile": []
|
||||
"jsonfile": [],
|
||||
"skip_other_on_success": false
|
||||
},
|
||||
"argstype": {
|
||||
"jsonfile": {
|
||||
@ -825,6 +826,10 @@
|
||||
"dir": false,
|
||||
"filter": "*.json",
|
||||
"multi": true
|
||||
},
|
||||
"skip_other_on_success": {
|
||||
"type": "switch",
|
||||
"name": "成功时跳过其他翻译"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "win32 سلسلة هوك",
|
||||
"额外的钩子": "خطاف إضافية",
|
||||
"自动前进": "التلقائي إلى الأمام",
|
||||
"在新窗口中查词": "البحث عن الكلمات في نافذة جديدة"
|
||||
"在新窗口中查词": "البحث عن الكلمات في نافذة جديدة",
|
||||
"成功时跳过其他翻译": "تخطي ترجمة أخرى عند النجاح"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32字串函數鉤子",
|
||||
"额外的钩子": "額外的鉤子",
|
||||
"自动前进": "自動前進",
|
||||
"在新窗口中查词": "在新窗口中查詞"
|
||||
"在新窗口中查词": "在新窗口中查詞",
|
||||
"成功时跳过其他翻译": "成功時跳過其他翻譯"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 řetězcový funkční hák",
|
||||
"额外的钩子": "Extra háčky",
|
||||
"自动前进": "Automaticky dopředu",
|
||||
"在新窗口中查词": "Vyhledávání slov v novém okně"
|
||||
"在新窗口中查词": "Vyhledávání slov v novém okně",
|
||||
"成功时跳过其他翻译": "Přeskočit další překlady po úspěchu"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 String Function Hook",
|
||||
"额外的钩子": "Zusätzliche Haken",
|
||||
"自动前进": "Automatisch vorwärts",
|
||||
"在新窗口中查词": "Suche nach Wörtern in einem neuen Fenster"
|
||||
"在新窗口中查词": "Suche nach Wörtern in einem neuen Fenster",
|
||||
"成功时跳过其他翻译": "Andere Übersetzungen überspringen, wenn erfolgreich"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 string function hook",
|
||||
"额外的钩子": "Extra hooks",
|
||||
"自动前进": "Automatic Forward",
|
||||
"在新窗口中查词": "Search for words in a new window"
|
||||
"在新窗口中查词": "Search for words in a new window",
|
||||
"成功时跳过其他翻译": "Skip other translations when successful"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Gancho de función de cadena Win32",
|
||||
"额外的钩子": "Ganchos adicionales",
|
||||
"自动前进": "Avance automático",
|
||||
"在新窗口中查词": "Buscar palabras en una nueva ventana"
|
||||
"在新窗口中查词": "Buscar palabras en una nueva ventana",
|
||||
"成功时跳过其他翻译": "Saltar otras traducciones cuando tenga éxito"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Crochet de fonction de chaîne Win32",
|
||||
"额外的钩子": "Crochets supplémentaires",
|
||||
"自动前进": "Avance automatique",
|
||||
"在新窗口中查词": "Rechercher des mots dans une nouvelle fenêtre"
|
||||
"在新窗口中查词": "Rechercher des mots dans une nouvelle fenêtre",
|
||||
"成功时跳过其他翻译": "Sauter les autres traductions en cas de succès"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Aggancio della funzione stringa Win32",
|
||||
"额外的钩子": "Ganci supplementari",
|
||||
"自动前进": "Avanti automatico",
|
||||
"在新窗口中查词": "Cerca parole in una nuova finestra"
|
||||
"在新窗口中查词": "Cerca parole in una nuova finestra",
|
||||
"成功时跳过其他翻译": "Salta altre traduzioni quando hai successo"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win 32文字列関数フック",
|
||||
"额外的钩子": "エクストラフック",
|
||||
"自动前进": "自動前進",
|
||||
"在新窗口中查词": "新しいウィンドウで単語を調べる"
|
||||
"在新窗口中查词": "新しいウィンドウで単語を調べる",
|
||||
"成功时跳过其他翻译": "成功時に他の翻訳をスキップ"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 문자열 함수 후크",
|
||||
"额外的钩子": "추가 갈고리",
|
||||
"自动前进": "자동 전진",
|
||||
"在新窗口中查词": "새 창에서 단어 찾기"
|
||||
"在新窗口中查词": "새 창에서 단어 찾기",
|
||||
"成功时跳过其他翻译": "성공 시 다른 번역 건너뛰기"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 tekenfunctiehook",
|
||||
"额外的钩子": "Extra haken",
|
||||
"自动前进": "Automatisch voorwaarts",
|
||||
"在新窗口中查词": "Zoeken naar woorden in een nieuw venster"
|
||||
"在新窗口中查词": "Zoeken naar woorden in een nieuw venster",
|
||||
"成功时跳过其他翻译": "Andere vertalingen overslaan wanneer succesvol"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Hook funkcji ciągów Win32",
|
||||
"额外的钩子": "Dodatkowe haki",
|
||||
"自动前进": "Automatyczne naprzód",
|
||||
"在新窗口中查词": "Wyszukiwanie słów w nowym oknie"
|
||||
"在新窗口中查词": "Wyszukiwanie słów w nowym oknie",
|
||||
"成功时跳过其他翻译": "Pomiń inne tłumaczenia po powodzeniu"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Gancho de função de cadeia Win32",
|
||||
"额外的钩子": "Ganchos extra",
|
||||
"自动前进": "Avançar Automático",
|
||||
"在新窗口中查词": "Procurar palavras numa nova janela"
|
||||
"在新窗口中查词": "Procurar palavras numa nova janela",
|
||||
"成功时跳过其他翻译": "Ignorar outras traduções quando bem sucedidas"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 Строчный крюк",
|
||||
"额外的钩子": "Дополнительный крюк",
|
||||
"自动前进": "Автоматическое продвижение вперед",
|
||||
"在新窗口中查词": "Проверка слов в новом окне"
|
||||
"在新窗口中查词": "Проверка слов в новом окне",
|
||||
"成功时跳过其他翻译": "Скачать другие переводы при успехе"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 strängfunktionskrok",
|
||||
"额外的钩子": "Extra krokar",
|
||||
"自动前进": "Automatisk framåt",
|
||||
"在新窗口中查词": "Sök efter ord i ett nytt fönster"
|
||||
"在新窗口中查词": "Sök efter ord i ett nytt fönster",
|
||||
"成功时跳过其他翻译": "Hoppa över andra översättningar när de lyckas"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 ฟังก์ชั่นสตริงตะขอ",
|
||||
"额外的钩子": "ตะขอเพิ่มเติม",
|
||||
"自动前进": "เดินหน้าอัตโนมัติ",
|
||||
"在新窗口中查词": "ค้นหาคำในหน้าต่างใหม่"
|
||||
"在新窗口中查词": "ค้นหาคำในหน้าต่างใหม่",
|
||||
"成功时跳过其他翻译": "ข้ามการแปลอื่นเมื่อสำเร็จ"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 string fonksiyonu",
|
||||
"额外的钩子": "Ekstra hücreler",
|
||||
"自动前进": "Otomatik İleri",
|
||||
"在新窗口中查词": "Yeni pencerede kelimeler arayın"
|
||||
"在新窗口中查词": "Yeni pencerede kelimeler arayın",
|
||||
"成功时跳过其他翻译": "Başarılı olduğunda diğer çevirileri atla"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Хук функції рядка Win32",
|
||||
"额外的钩子": "Додаткові хаки",
|
||||
"自动前进": "Автоматично вперед",
|
||||
"在新窗口中查词": "Пошук слів у новому вікні"
|
||||
"在新窗口中查词": "Пошук слів у новому вікні",
|
||||
"成功时跳过其他翻译": "Пропустити інші переклади, якщо вони успішні"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "Win32 Chuỗi chức năng Hook",
|
||||
"额外的钩子": "Thêm móc",
|
||||
"自动前进": "Tự động chuyển tiếp",
|
||||
"在新窗口中查词": "Tra từ trong cửa sổ mới"
|
||||
"在新窗口中查词": "Tra từ trong cửa sổ mới",
|
||||
"成功时跳过其他翻译": "Bỏ qua các bản dịch khác khi thành công"
|
||||
}
|
@ -792,5 +792,6 @@
|
||||
"Win32字符串函数钩子": "",
|
||||
"额外的钩子": "",
|
||||
"自动前进": "",
|
||||
"在新窗口中查词": ""
|
||||
"在新窗口中查词": "",
|
||||
"成功时跳过其他翻译": ""
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user