NEKOparapa / AiNiee

一款专注于Ai翻译的工具,可以用来一键自动翻译RPG SLG游戏,Epub TXT小说,Srt Lrc字幕等等。
GNU General Public License v3.0
1.09k stars 60 forks source link

v2.18 整合了战斗日志提取功能,变更为特殊文本提取,支持自定义特殊文本格式及其提取规则 #191

Closed stevetrs closed 1 month ago

stevetrs commented 1 month ago

ui上变动可能挺大的,理想情况应该是单独摘出来一页用来设置sptext,但是如果你嫌麻烦的话就让用户自己去config文件设置吧 v2.18: 1.鉴于特殊文本格式众多,靠我一个人补全显然不可能。所以把战斗日志功能整合了一下,现在叫他特殊文本提取应该更合适 简而言之,现在可以自定义特殊文本和对应的提取规则了

为此新增config配置项:sptext,设置的格式为 ‘特殊文本对应的code’:{‘特殊文本中一定有的文本,如果不限定文本,就用”空“字代替’:'提取对应的正则表达式,用中文句号替换英文单引号'} (用自定义表达式提取后还会再筛选一遍仅含中日字符的文本)

该功能适用于某一种code,只有某一类特定文本可以翻译的情况,比如说code355,我们想翻译的文本可能长这样: "BattleManager._logWindow.push('addText', 'ネトネトした手で敏感な胸を執拗に揉みしだかれてしまった…!');" 上面这种文本我们只希望翻译日文部分 那么就可以在sptext内添加 '355':{'addText':'[^a-zA-z0-9(),。]+'} 来提取code=355,并且文本内存在addText这一字段的文本,后面的正则表达式表示的是提取所有连续的非英文字母数字以及"(",")",",","'"的文本

为什么要设置“存在addText”这个判断条件,是因为code355的文本可能不止这一种,还有可能存在其他完全不能翻译的文本,加这个判断条件就是为了防止提取到这些文本。

在sptext中的code,即使在readcode中也会被readcode无视,但是如果在sumcode和blackcode中,sptext的设置会不生效。

NEKOparapa commented 1 month ago

你要不要重新在某个论坛写帖子,或者新开一个md文件,把之前的教程内容,和你这些主要的功能设置讲解一下。之前有新人向我反馈,想看关于这个工具的教程,但是御爱挂了。