satan53x / sextractor Goto Github PK
View Code? Open in Web Editor NEW从GalGame脚本提取和导入文本(大部分需要明文)
License: GNU General Public License v3.0
从GalGame脚本提取和导入文本(大部分需要明文)
License: GNU General Public License v3.0
{'file': 'json', 'workpath': 'F:/BaiduNetdiskDownload/MV20 りおんのご奉仕♡温泉/www/data', 'engineName': 'RPGMV', 'outputFormat': 0, 'outputPartMode': 0, 'nameList': '', 'regDic': '00_skip=^<.+?>$\n01_skip=^<code\n02_skip=^<(?=bgm|bgs|se|battleb)\n20_search=^<.+?>([\\S\\s]+)$\nextractKey=all\npostSkip=^[ -~]|_\n', 'outputFormatExtra': -1, 'encode': 'UTF-8', 'print': [False, True, True, True, True], 'splitParaSep': '\\r\\n', 'maxCountPerLine': 512, 'cutoff': False, 'cutoffCopy': True, 'noInput': False, 'splitAuto': False, 'ignoreSameLineCount': False, 'ignoreNotMaxCount': False, 'fixedMaxPerLine': False, 'binEncodeValid': False, 'pureText': False, 'tunnelJis': False, 'subsJis': False, 'transReplace': False, 'preReplace': False, 'skipIgnoreCtrl': False, 'skipIgnoreUnfinish': False, 'ignoreEmptyFile': True}
---------------------------提取或导入时发生错误---------------------------
Traceback (most recent call last):
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\main\thread.py", line 18, in run
self.window.extractFileThread()
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\main\mainWindow.py", line 201, in extractFileThread
mainExtractJson(args)
File "./src\main_extract_json.py", line 54, in mainExtractJson
mainExtract(args, parse)
File "./src\main_extract.py", line 627, in mainExtract
if initArgs(args) != 0: return
File "./src\main_extract.py", line 555, in initArgs
ret = chooseEngine(args)
File "./src\main_extract.py", line 462, in chooseEngine
module = import_module('extract_' + engineName)
File "C:\Users\li\.conda\envs\python38\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 783, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "./src\extract_RPGMV.py", line 3, in <module>
from extract_TXT import ParseVar, dealLastCtrl, searchLine, initParseVar
File "./src\extract_TXT.py", line 31, in <module>
def GetPos(var:ParseVar, searchData:str, r:re.Match[str], i):
TypeError: 'type' object is not subscriptable
--------------------------------------------------------------------------
异常中断文件名:
运行时间:0.01 秒
挑的MV游戏目录下的www/data文件夹,使用预配的MV规则,结果报错TypeError: 'type' object is not subscriptable
Cyberworks / CSystem
https://vndb.org/v32026
您好,铃铛社这个游戏我提出不到文本 ,请问是什么问题,
挺想学的 看了很多 但是一个都没懂 QQ1480959017
我用SExtractor测试提取了多个RPGMV引擎的游戏,总结出了几个问题
1、当data目录下存在TrpParticles.json和ContainerProperties.json这两个文件之一时提取文本会导致程序崩溃
不知道这两个文件的作用,不过里面没有文本
报错信息
值查找失败, 请检查Json格式 -1
Traceback (most recent call last):
(省略)
events = content['events']
KeyError: 'events'
顺带一提,在出现报错时能不能不关闭主窗口,因为自己编辑的正则不会及时保存,有时候因为上述问题或者编码选择错误导致丢失自己编辑的正则表达式
2、选择name,message导出格式,提取不出人名
extractName=^MapInfos|^(?!Map)
的含义是从Map文件以外的文件里提取出人名吗?实在是不会用这个功能
在正则预设里看到了Valkyria_ODN
,问一下这个引擎的游戏有封包或者免封包的方法吗?
在网上没找到相关信息
Cyberworks引擎,导出为txt文档 { 文本 }格式,放上对应文本格式勾选填充为原文长度可以替换。
但用其他格式放上对应的译文文件写入都失败,包括json列表 [ { name : 名字, message : 带换行对话 } ]格式……都提示”译文为空,不替换“……
这应该怎么设置好……?
請問有支援文本提取嗎?若有要怎麼用?
如题,原来安装依赖依靠bat批处理文件,但我观察到大部分项目将依赖储存在requirements.txt
文件,我认为可以将安装依赖的方式改为更常见的为从requirements.txt
安装。
作此更改,requirements.txt
的内容(如果不能确定以后版本的依赖是否适用于该项目的代码,可以限定依赖的版本,格式示例:pyqt5==5.15.10
):
pyqt5
colorama
pandas
安装依赖.bat
的内容将被更改为:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements.txt
NekoSDK导出后有很多\r\n,导回时需要放回去吗?如果要放回去,是不是还要每个\r\n之前的数据比较长度?
2023年10月31日copy下来的版本能够正常写入译文,但是封包的.arc文件和.ari文件放回游戏目录后,在游戏文本中出现人名时就会卡死退出。
2024年1月15日copy下来的版本在写入译文时会直接报译文为空,不替换
且这种未经过替换就直接重新封包的arc和ari放回游戏目录也会出现上述游戏卡死问题。
这里附上我操作的游戏原文件:
tblstr.zip
游戏名:肉牝R30 肉欲に堕ちた牝たち
新一点的Kaguya引擎似乎只有arc文件,已经没有ari了,目前工具无法处理这类arc;例如:
tblstr(2).zip
游戏名:ペンペンペナルティ 箱入り娘たちをHにオシオキ
一个裸足少女的游戏,用arc_conv解包,解密后用SExtractor和VNT都提了一遍,SExtractor好像大多数json里跟VNT比起来少提了一句或者有一句提取不完整,不过用VNT提的时候有些文件没法提取,可能是这个原因,哪怕没改文本用VNT写入用arc_conv封包后游戏也会闪退
SExtractor写入则没有这个问题
Seen.zip
导入时分隔符填的\r\n,新覆盖的transDic.output.json
也表明有翻译:
"「他に、と言われても、今はただ驚いてるんだ」": "「就算你说其他的,我现在也只是吃惊而已」",
"「何かあるだろう、再会を喜ぶとか、感動するとか、いままでの事とか」": "「肯定有什么吧,像是为了再次相见而高兴,或者感动,或者是过去、\r\n的事情」",
但写到原脚本中,没有写入\r\n,如图所示:
怎么回事?其它的\r\n都有注入好好的,这个就不行了
是因为原文本没有\r\n,所以译文就没有\r\n了?
HSP引擎制作的游戏不支持自动换行,\r\n前必须有中文符号,我就填
、
,写了python脚本根据字数上限插入\r\n和中文标点,似乎原文有\r\n,译文能正常换行,原文没\r\n,译文就不能换行?
具体文件:
scenario.zip
我提取的文本是BIN格式,我自己判斷每句文本都是[\x04-\x50]\x09開頭
所以嘗試寫了以下正則
00_skip=^\x81\x40\x00\x02\x0a
01_skip=^\x81\x40\x00
04_search=^(?P[\x40-\xFE])\x2f\x63\x00
10_search=^(?P[\x40-\xFE])\x00\x02\x0a
11_search=^(?P[\x40-\xFE]*)\x00$
separate=[\x04-\x50]\x09
文本算是有提取出,所以我判斷"separate=[\x04-\x50]\x09"應該有生效
並進行了翻譯,但在進行替換時,分割處被替換成了5B042D505D09([\x04-\x50]\x09)
這算是正常的嗎? 分割判斷是否不能這樣寫?
另外也想請教想要知道正則功能有哪些參數可以設定可以參考什麼資料或教學嗎?
像是separate或是ignoreDecodeError PostSkip這些,沒找到相關的文檔
Cyberworks / CSystem
https://vndb.org/v32026
大佬你好。这个游戏Arc04解包出来的文本我都汉化完了。不打强化补丁时,全部显示正常。但打了强化补丁后,很多原来显示中文的地方都变回了日文,一段剧情中文。一段剧情日文这样。强化补丁多了两个文件:tumamituadd01.app和tumamituadd01.dat。请问,这种情况有解决办法吗?
我在尝试HOOK Valkyria
引擎的一个游戏时候发现字体无法通过font_manager
- resource_files
替换(配置如下所示)。
字体直接安装到系统则能够实现JIS汉字转简中
。由于游戏不可能默认读取文泉驿,所以我认为spoof_creation
部分应该是正常工作的。
{
"injector": {
"enable": true,
"print_loaded_modules": false
},
"allocate_console": true,
"font_manager": {
"enable": true,
"resource_files": [
"./fonts/WenQuanYi_CNJP.ttf"
],
"spoof_enumeration": {
"enable": false,
"filter_pitch_and_family": 0,
"filter_charset": 0,
"spoof_charset": 128
},
"spoof_creation": {
"enable": true,
"override_face": "WenQuanYi Micro Hei",
"override_charset": 128
}
},
"locale_emulator": {
"enable": true,
"codepage": 932,
"locale": 1041,
"charset": 128,
"timezone": "Tokyo Standard Time",
"wait_for_exit": false
}
}
请问能提供一些建议吗,以下是启动时的console:
[injector] ======================================================
[injector] Injecting into module VAL-0042.exe at address 00F80000
[injector] Loading original library from C:\Windows\system32\winmm.dll
[font_manager] Imported 2 font(s) from ./fonts/WenQuanYi_CNJP.ttf
[font_manager] Unable to hook import CreateFontA because it does not exist
[font_manager] Unable to hook import CreateFontW because it does not exist
[font_manager] Hooking import CreateFontIndirectA in VAL-0042.exe at 0103706C --> 57F768C0
[font_manager] Unable to hook import CreateFontIndirectW because it does not exist
[font_manager] Unable to hook import CreateFontIndirectExA because it does not exist
[font_manager] Unable to hook import CreateFontIndirectExW because it does not exist
[locale_emulator] Codepage 932 matches expectation
[injector] Initialization complete
[injector] ======================================================
游戏的exe文件,需要的话可以传游戏本体:
链接:https://pan.quark.cn/s/88a5e60ade76
提取码:NRmt
解压密码:test
如果文本行混杂的代码过多,而且没有明显固定位置的话
需要二次甚至更多次提取才能完整过滤出代码。
比如在一行中出现多个换行符和<>标签,unfinish的命名分组对于固定位置的代码能够很好的处理,但是如果位置和数目随机的话就很麻烦了。应该只能写多个search分别考虑到所有情况。
所以希望新设立一个命名分组和一个对应的skip,这个skip用于跳过行内的代码部分。例如:
<a>文本1<b>\n文本2<c><d>
先用search将这行归入那个新的命名分组,然后对这个分组用\\n|<.+?>
跳过代码部分,最后导出的文本就是完全不含代码的。
不知道这样的想法容不容易实现
- 字典json不会重复Key值,如果转换前同时存在【AAA】和AAA,输出会是同一个AAA。所以行数减少是正常情况。
注入后,有些翻译没有注入
原文件的某行: "「…んう…あ、ぁん……ダメ、んうぅ…コレ、く、癖になっちゃう…\r\nふあぁん…」": "",
ctrl目录的transDic.json的某行: "…んう…あ、ぁん……ダメ、んうぅ…コレ、く、癖になっちゃう…\r\nふあぁん…": "嗯呜…啊,啊啊……不行,嗯呜呜…这个,成了习惯了…\r\n呼啊啊…",
工具导入后的新增transDic.output.json文件的某行 "…んう…あ、ぁん……ダメ、んうぅ…コレ、く、癖になっちゃう…\r\nふあぁん…": "嗯呜…啊,啊啊……不行,嗯呜呜…这个,成了习惯了…\r\n呼啊啊…",
在new目录下的文件中,文件中的某行变成了: "「…んう…あ、ぁん……ダメ、んうぅ…コレ、く、癖になっちゃう…\r\nふあぁん…」": "「…んう…あ、ぁん……ダメ、んうぅ…コレ、く、癖になっちゃう…\r\nふあぁん…」",
这个为什么没有导入翻译,反而注入的是原文?
需要做什么才能使翻译项目注入到对应的原文呢
Originally posted by @allrobot in #45 (comment)
Traceback (most recent call last):
File "D:\汉化工具\SExtractor-main\main\thread.py", line 18, in run
self.window.extractFileThread()
File "D:\汉化工具\SExtractor-main\main\mainWindow.py", line 198, in extractFileThread
mainExtractBin(args)
File "D:\汉化工具\SExtractor-main./src\main_extract_bin.py", line 82, in mainExtractBin
mainExtract(args, parse, initDone)
File "D:\汉化工具\SExtractor-main./src\main_extract.py", line 641, in mainExtract
parseImp()
File "D:\汉化工具\SExtractor-main./src\main_extract_bin.py", line 61, in parse
var.parseImp(var.content, var.listCtrl, dealOnce)
File "D:\汉化工具\SExtractor-main./src\extract_SystemC.py", line 13, in parseImp
re.compile(rb'^[A-Za-z/*]', rb'^$')
File "C:\Users\Learner G\anaconda3\Lib\re_init_.py", line 227, in compile
return compile(pattern, flags)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Learner G\anaconda3\Lib\re_init.py", line 287, in _compile
if flags & T:
~~~~~~^~~
TypeError: unsupported operand type(s) for &: 'bytes' and 'RegexFlag'
我面对的一个脚本:提取时出现大量提取时原文为空
,但可以正确提取出文本。
翻译完成后的文本无法正确写回,提示译文为空,不替换
。
脚本格式类似如下
#MESSAGE
>-1
name1 or EMPTY_LINE
>-1
message1
#OTHER_CONTROL_COMMAND or NONE
#MESSAGE
...
考虑处理多行文本所以选择了BIN引擎,并勾选BIN启用纯文本正则模式
。
我的正则表达式:
10_search=>-1\r\n(?P<name>.*)\r\n>-1\r\n(?P<msg>[\S\s]+?)(?:\r\n#|$)
separate=\r\n#MESSAGE\r\n
您要是方便能否帮忙看下?
脚本文件
链接:https://pan.quark.cn/s/4c065975b752
提取码:upiF
解压码:test
我遇到了类似这样的文本,使用两行空行换段而不是特定的格式控制符。
AAAAAA
BBBBBB
DDDDDD
【NAMEa】
「EEEE
EEEE
EEEE」
【NAMEb】
「FFFFF」
GGGGGGG
期望的输出是
[
{
"message": "AAAAAA\r\nBBBBBB"
},
{
"message": "DDDDDD"
},
{
"name": "NAMEa",
"message": "「EEEE\r\nEEEE\r\nEEEE」"
},
{
"name": "NAMEb",
"message": "「FFFFF」"
},
{
"message": "GGGGGGG"
}
]
选用的引擎是TXT,正则表达式是
00_skip=^[;#/]
02_search=^【(?P<name>.+)】$
11_search=^(?P<unfinish>.+)$
得到的输出是
[
{
"message": "AAAAAA\r\nBBBBBB\r\nDDDDDD"
},
{
"name": "NAMEa",
"message": "「EEEE\r\n EEEE\r\n EEEE」"
},
{
"name": "NAMEb",
"message": "「FFFFF」\r\nGGGGGGG"
}
]
我尝试了在表达式中使用\n来实现需求,但不起作用。
请问我该如何修改表达式来实现期望的输出?
satan53x大 您好~
きみはぐ
引擎是QLIE
請問有辦法支援這遊戲嗎?
或者有其他支持中文顯示的方法?
謝謝!
我这里的一个游戏使用SJIS
编码的脚本。将提取的UTF-8
JSON文件翻译成中文后,将将其应用回脚本中。
我在下面选中的TXT编码
是cp932
,程序报错:
UnicodeEncodeError: 'cp932' codec can't encode character '\u55ef' in position 10: illegal multibyte sequence
我希望使用VNTextProxy
对程序hook以实现中文显示,由于上面的报错,我尝试将原始脚本手动更改为UTF-8
编码,并在下面也选中UTF-8
编码,并勾选JIS
配置中的生成VNT的JIS隧道
选项。翻译正确应用到了脚本,但程序生成的sjis_ext.bin
文件大小为0。
The tool stops at 01_共通07.ast
script.zip
請問正則提取有辦法排除重複句子嗎?
文本如附件
24.a01シーン1.ss.txt
好像是按标点和行数来的,「」 遇到这种符号在头尾,中间没有标点的可能会单独一个「分成一行,能不能设置成按原文行数尽量均分字符
satan大 您好!
請問能否增加AI6WIN引擎的提取?
謝謝!
範例文本如下
stage07_01.ZIP
C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具>C:\Users\li\.conda\envs\python311\python.exe run.py
qt.qpa.fonts: Unable to enumerate family ' "Kingnamtype Rounded Sinoheadline" '
Traceback (most recent call last):
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\main\mainWindow.py", line 181, in selectReg
text = key + '=' + value + '\n'
~~~~~~~~~~^~~~~~~
TypeError: can only concatenate str (not "list") to str
请按任意键继续. . .
reg.ini添加自定义的regex,尝试让界面添加选择匹配规则
的regex,结果报错can only concatenate str (not "list") to str
添加选择匹配规则
需要注意哪些事项?
100_search=「(.*?)」
101_search=『(.*?)』
102_search=【(.*?)】
103_search=(.*?)$
JSON引擎
原来的json共1614行,过滤后只剩1500多行,提取的每行缺失\r\n
提取后:
transDic.output.json
换TXT引擎提取
000_skip=^[\{\}]
100_search=(?<= "「)(.*?)(?=」":)
101_search=(?<= "『)(.*?)(?=』":)
102_search=(?<= "【)(.*?)(?=】":)
103_search=(?<= ")(.*?)(?=":)
提取后只剩1604行,其中的\r\n变成\\r\\n
TXT提取后:
transDic.output.json
应该是regex写错了,不太想看源代码如何定义,直接问比较省事
JSON和TXT的正则表达式应该怎么写能过滤「」『』【】?
CSV文件
00000001.csv
CSV导出为JSON,CSV引擎,编码UTF-8-SIG,分隔符⚔,正则表达式:
22_search=^([\s\S]+)$
extraData=^Original text$
writeOffset=4
sample=<不要启用纯文本模式>
JSON导入到CSV,正则表达式:
22_search=^([\s\S]+)$
extraData=^Original text$
writeOffset=5
sample=<不要启用纯文本模式>
报错:
---------------------------------
{'file': 'txt', 'workpath': 'F:\\BaiduNetdiskDownload\\[Nighthawk] Complete series ストッピング 13 [4G]\\ストッピング!!! 陸上競技編\\stopping_extract\\翻译工程', 'engineName': 'CSV', 'outputFormat': 3, 'outputPartMode': 0, 'nameList': '', 'regDic': '22_search=^([\\s\\S]+)$\nextraData=^Original text$\nwriteOffset=4\nsample=<不要启用纯文本模式>\n', 'outputFormatExtra': -1, 'encode': 'UTF-8-SIG', 'print': [False, True, True, True, True], 'splitParaSep': '⚔', 'maxCountPerLine': 365, 'cutoff': False, 'cutoffCopy': True, 'noInput': False, 'splitAuto': False, 'ignoreSameLineCount': False, 'ignoreNotMaxCount': True, 'fixedMaxPerLine': True, 'binEncodeValid': False, 'pureText': False, 'tunnelJis': False, 'subsJis': False, 'transReplace': True, 'preReplace': False, 'skipIgnoreCtrl': False, 'skipIgnoreUnfinish': False, 'ignoreEmptyFile': True}
正则规则: 22_search ^([\s\S]+)$
正则规则: extraData ^Original text$
正则规则: writeOffset 4
读入Json: 176 transDic.json
---------------------------提取或导入时发生错误---------------------------
Traceback (most recent call last):
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\main\thread.py", line 18, in run
self.window.extractFileThread()
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\main\mainWindow.py", line 197, in extractFileThread
mainExtractTxt(args)
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\./src\main_extract_txt.py", line 70, in mainExtractTxt
mainExtract(args, parse)
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\./src\main_extract.py", line 644, in mainExtract
parseImp()
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\./src\main_extract_txt.py", line 57, in parse
write() #写入
^^^^^^^
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\./src\main_extract_txt.py", line 23, in write
replace()
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\./src\main_extract.py", line 406, in replace
ret = var.replaceOnceImp(var.content, [ctrl], [trans])
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Tools\H_RPG_TOOLS\其它解包工具\SExtractor的GalGame脚本提取和导入文本工具\./src\extract_CSV.py", line 81, in replaceOnceImp
strOld = content.iat[contentIndex, colIndex + writeOffset]
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\li\.conda\envs\python311\Lib\site-packages\pandas\core\indexing.py", line 2527, in __getitem__
return self.obj._get_value(*key, takeable=self._takeable)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\li\.conda\envs\python311\Lib\site-packages\pandas\core\frame.py", line 4199, in _get_value
series = self._ixs(col, axis=1)
^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\li\.conda\envs\python311\Lib\site-packages\pandas\core\frame.py", line 3996, in _ixs
label = self.columns[i]
~~~~~~~~~~~~^^^
File "C:\Users\li\.conda\envs\python311\Lib\site-packages\pandas\core\indexes\base.py", line 5389, in __getitem__
return getitem(key)
^^^^^^^^^^^^
IndexError: index 7 is out of bounds for axis 0 with size 5
--------------------------------------------------------------------------
异常中断文件名: 00000001.csv
运行时间:0.039 秒
怎么把JSON的key值正确导入到CSV的Translated text这个第五列?我把writeOffset改5或4都是报错的,删掉分隔符后是不报错了,但4或5翻译没有导入到CSV
我查了下,这个引擎是按系统编码读取的,所以只要可以把Shift-JIS编码的文本改成GBK或者Unicode就行,我也尝试了使用VNTextProxy的sjs隧道功能,但是对这个游戏不管用,游戏名叫なつこい!
解包得到的脚本虽然是明文,但直接提取不会包含对话框的角色名(只有该文件第一次出现的角色名才会提取)。
比如:
巫小耶
「……ち、茅南……はぁ、はぁ……茅南……っ……
ダメ……戦って……私はいいから、た、戦って……」
半ば意識を失ったままの巫小耶の、かすれた声が聞こえて
「く、くぅっ……本当……ですか?
本当に、巫小耶ちゃんには何もしないと……約束して
くれますか?」
「ああ、約束するぜ。
お前がおとなしくなるんなら、倒れてる奴なんか
襲っても意味ねえだろ?」
角色名巫小耶只出现了一次。
游戏是新妻こよみ
(官方最新的修正补丁的txt貌似去除了二次加密)
无论是选中全部子txt文件,还是放到一个文件夹拖到exe/bat都没有用,是不是这个封不了还是我的用法不对
用的VNT提取和导入的,因为我发现SE在第一处就少了一句
顺便贴一下最新的txtSeen.txt
使用表格翻译工具 https://github.com/NEKOparapa/AiNiee 或 https://github.com/cx2333-gt/GalTransl 每次并行发送十几个翻译请求,由于xlsx存在断行的问题,翻译容易引发误翻的问题
「…んう…あ、ぁん……ダメ、んうぅ…コレ、く、癖になっちゃう…
ふあぁん…」
断行翻译成这样:
……嗯…啊,啊呜……不行,嗯……这个,可恶,会上瘾的…
粉丝…
实际上准确翻译是
「嗯呐...啊,啊呜......不行,嗯呐呜...这个,会上瘾的...
呼啊呜...」
虽然能用python写个脚本把一堆明文脚本过滤一遍,然后把「」『』【】这些括号其中的\n去掉,然后用工具提取就可以,翻完了写入到脚本中,根据原文脚本的原文第xx行的日语字数上限,给译文脚本的第xx行的译文长度进行断行(和原文脚本的line行号一致,若译文长度没超出原文第xx行的日语字数上限,则不断行)
但这样稍微有些不便,设置能否加入一个勾选选项,unfinish未结束对话合并为一行,使用两个AI翻译工具就方便多了,不会引发误翻的问题
satan大 您好
目前找不到好用的工具
請問舊版本有辦法支持導出嗎?
謝謝!
I tried to extract the game scenario using default setting and the default regex, Cyberworks JIS
10_search=^(?P【.+?】)
15_search=^(?P.+?)[\xFE]{0,1}$
it will throw error "UnicodeDecodeError: 'cp932' codec can't decode byte 0x84 in position 1935: illegal multibyte sequence
decoding with 'cp932' codec failed"
Then, I tried to change "?" with "?"
It went to the end, but the output only "{}" in every output file
Did I use wrong setting somewhere?
用pylivemaker导入csv,但是并没有导入
pmrowla/pylivemaker#134 (comment)
询问作者后,说是CSV格式有问题,应该用""
双引号表示单元格的内容,虽然excel能正常打开,但有些第三方库识别不了不带"
双引号的CSV格式,为了避免麻烦,建议导出为csv格式文件应添加双引号"
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.