具体表现是,粘贴到对话窗口中后,不需要按回车,就可以让 Codex 卡死,如果在已有对话窗口中尝试,退出 Codex 再打开,点击该对话窗口依旧卡死。如果在新对话窗口中尝试,退出 Codex 再打开,该对话窗口因为没有建立,所以不会造成其它问题。
示例代码如下,也是我第一次触发卡死的代码:
/Volumes/Seagate/影视/Ave\ Mujica/\[DBD-Raws\]\[BanG\ Dream\!\ Ave\ Mujica\]\[01\]\[1080P\]\[BDRip\]\[HEVC-10bit\]\[FLAC\].scjp.ass
/Volumes/Seagate/影视/It\'s\ MyGO\!\!\!\!\!/\[DBD-Raws\]\[BanG\ Dream\!\ It\'s\ MyGO\!\!\!\!\!\]\[01\]\[1080P\]\[BDRip\]\[HEVC-10bit\]\[FLAC\].scjp.ass
Codex 的解释是:
Codex 粘贴短文本时会同步跑富文本/Markdown parser ,里面有几条形如“匹配 [label](href)”的正则。你的文本没有真正的 Markdown 链接,但这种被转义的括号会让正则反复尝试失败路径,尤其两行一起粘贴时会跨换行扫描,直接把 renderer/input 主线程卡死。
亲测可以触发卡死的较为简洁的代码是:
/\[DBD-Raws\]\[BanG\ Dream\!\ Ave\ Mujica\]\[01\]\[1080P\]\[BDRip\]\[HEVC-10bit\]\[FLAC\]
/\[DBD-Raws\]\[BanG\ Dream\!\ It\'s\ MyGO\!\!\!\!\!\]\[01\]\[1080P\]\[BDRip\]\[HEVC-10bit\]\[FLAC\]

