繁体转简体上线:导进来的港台资料,编译出来直接是简体
港台的书、论文、网页导进来是繁体,读卡片时总要多绕一层。现在编译前自动转简体,连用词一起转(軟體→软件、螢幕→屏幕)。素材原文保持不动,随时回看。命令行也多了一条免费的本地命令,不联网、不花额度。
有位用户提了个很具体的请求:「导入的繁体素材,编译时能自动转简体吗,看卡片更轻松。」
这个需求听起来小,但对常读港台资料的人,摩擦是每天都在的。素材是繁体,编译出来的卡片也是繁体,复习时眼睛得多走一道。
现在两头都做了:网页端编译时自动转,命令行也多了一条可以单独用的本地命令。
网页端:转在 AI 读到之前
编译前的确认框里多了一个勾选项,默认就是勾上的:
繁体转简体 繁体素材编译出的卡片会是简体,连用词一起转(軟體→软件、螢幕→屏幕)。素材原文保持不动,随时能回看。
关键在转换发生的时机:材料交给 AI 之前就转好了。所以出来的卡片、摘要、编译正文全是简体。不是事后再翻译一道,是 AI 从头读到的就是简体。
素材原文一个字都不动。转换只作用于送去编译的那一份,回素材详情页看到的仍然是原来的繁体全文。不想转就把勾去掉。
命令行:一条免费的本地命令
不编译、只想把手上一份繁体 Markdown 转过来,用这条:
42md tools t2s 筆記.md
已转简体: 筆記.md → 筆記_t2s.md
默认另存副本,原文件留着。想直接改原文件加 --fix。
这条命令免费、纯本地、不联网,也不消耗 AI 生成额度。繁简转换靠的是字表和词表,本来就不需要模型。
两档:连用词一起转,还是只转字形
同一段文字,两档出来的结果不一样:
| 原文 | 默认(terms) | --variant glyph |
|---|---|---|
| 記憶體 | 内存 | 记忆体 |
| 作業系統 | 操作系统 | 作业系统 |
| 軟體 | 软件 | 软体 |
| 隨身碟 | U盘 | 随身碟 |
| 滑鼠 | 鼠标 | 滑鼠 |
默认是 terms:字形和用词一起转,读起来跟大陆材料一样顺。如果你要的是保留原作者的用词习惯、只把繁体字换成简体字(比如做文献引用、或者原文用词本身就是讨论对象),加 --variant glyph。
不该动的地方,一个不碰
转换最容易出事的地方是「转过头」:把代码、链接、路径也一起转了,文档就坏了。所以这几类内容原样保留。
代码块和行内代码:一段 Rust 代码里写着注释 // 這段程式碼不該被改動:let 螢幕 = "軟體";,转换后一字未改。正文里的「軟體」全变成了「软件」,代码块里的那个还在原地。行内代码同理。
链接 URL:正文里 [參考資料](https://example.com/軟體/資料) 的显示文字会转成简体,括号里的网址保持原样。转了就打不开了。
文首的 frontmatter:里面常带 source_file 之类的路径引用,转一下就断链,所以整块跳过。
HTML 标签、数学公式同样在保护范围内。
日文、韩文材料会自动跳过
繁简字表只覆盖中文。一份日文材料硬转,会得到一堆半中半日的混合字,比不转还糟。所以遇到日韩材料,命令会直接跳过:
42md tools t2s 機械学習ノート.md
无需转换: 機械学習ノート.md
判断用的是假名的分布特征,不是简单看有没有假名。中文文章里偶尔引一个日文片名(比如《すずめの戸締まり》),不会因此被当成日文整篇拒转。
一件需要留意的事
默认的 terms 档用的是台湾用词对照表,它转的是用词,不只是字形。有一批词在简繁两边字形完全相同:晶片、光碟、滑鼠、硬碟、雷射。这些词哪怕出现在一份本来就是简体的文档里,走 terms 档也会被改成大陆用词,晶片变芯片、光碟变光盘。
这是它的设计意图,你要的本来就是「读起来像大陆材料」。但值得知道。如果材料已经是简体、只想过一道保险,用 --variant glyph,那一档对简体文本完全不变。
现在就能用
网页端已经上线,编译时直接可见。命令行侧:
42md upgrade
升到 v1.0.28 及以上即可。
繁简字表是随命令行程序一起打包的,整个功能没有引入任何联网依赖。