Twine从Harlowe切换到SugarCube后部分passage链接失效求助
从Harlowe切换到SugarCube后链接失效的批量解决方案
一、先确认段落名的匹配问题
SugarCube对段落名的大小写、空格、特殊字符是严格匹配的,而Harlowe会自动兼容部分差异。比如你遇到的investigation 2报错,先做这两步:
- 打开Twine编辑器的段落列表,确认是否存在完全一致的
investigation 2段落(注意首字母大小写、空格位置,别把investigation_2或Investigation 2搞混) - 如果段落名确实存在,检查链接里的段落名是否有多余空格、拼写错误。
二、批量修复链接语法(无需手动逐章改)
Harlowe和SugarCube的链接语法有差异,用批量替换可以快速解决:
- 导出项目为JSON:在Twine顶部菜单点「项目」→「导出」→「导出为JSON文件」,保存到本地。
- 批量替换语法:用VS Code、Notepad++这类支持批量替换的文本编辑器打开JSON文件,针对不同情况替换:
- 把Harlowe的
[[显示文本->段落名]]或[[段落名<-显示文本]],统一替换为SugarCube兼容的[[显示文本|段落名]] - 把Harlowe的宏链接
(link: "文本")[(go-to: "段落名")],替换为SugarCube的<<link "文本">><<goto "段落名">><</link>>
- 把Harlowe的
- 导入修复后的JSON:回到Twine,点「项目」→「导入」→ 选择修改后的JSON文件,覆盖原项目即可。
三、处理特殊字符转义问题
如果段落名包含引号、括号这类特殊字符,Harlowe会自动处理,但SugarCube需要手动转义:
- 比如段落名是
investigation "2",链接里要写成[[文本|investigation \"2\"]](给双引号加反斜杠转义) - 可以用文本编辑器的查找功能定位这类特殊字符,批量添加转义符。
四、用Twine内置查找替换修正段落名错误
如果是链接里的段落名和实际段落名大小写/拼写不一致,直接用Twine的查找替换:
- 按
Ctrl+F打开查找框,输入错误的段落名(比如investigation 2),替换为正确的名称(比如Investigation 2),勾选「匹配大小写」后批量替换。
内容的提问来源于stack exchange,提问作者amber
相关产品推荐
相关产品推荐

