7.3
深览指数
科技少数派·CG艺术实验室··AI 生成
自动给文章术语加百科链接,这个方案一分钟搞定
本文介绍作者为技术博客实现自动术语链接的方案,解决了读者因陌生概念需频繁切换搜索而打断阅读节奏的问题。核心思路是在 Astro 构建阶段,通过 remark 和 rehype 两个插件,在 Markdown 文件编译为 HTML 时,自动将术语表中首次出现的词替换为维基百科或官方文档的链接。文章详细拆解了匹配规则(长词优先、一词一次)、节点跳过逻辑、URL 决策链等关键细节,并附带了审计脚本和术语总览页等辅助工具。适合技术博客作者、内容创作者,或对静态站点构建有中度兴趣的读者。原文 ↗
核心观点
- ▍为文章中的术语自动添加链接,可以显著降低读者因陌生概念而中断阅读的频率,从而提升阅读体验,且这一过程不应依赖读者主动操作。
- 01作者在 Astro 构建阶段,利用 remark-glossary 和 rehype-glossary 两个插件,在 Markdown 文件编译为 HTML 时自动完成术语链接嵌入,而非在浏览器端运行时执行。
- 02匹配规则采用「长词优先」策略,避免短词(如「Script」)截胡长词(如「AppleScript」);同时,同一术语在全文中仅链接第一次出现的位置。
- 03系统会跳过 `<code>`、`<pre>`、`<a>`、`<h1>`-`<h6>` 等节点,避免在代码、标题或已有链接中重复添加。
- 04作者维护了一个 60 多条术语的术语表,覆盖技术、AI、自托管工具、知识管理、艺术设计等五个类别,其中约 15% 的术语配置了自定义 URL(指向官网或权威文档),其余自动指向对应语言的维基百科。
- 05作者开发了审计脚本 `audit-glossary.ts`,用于扫描文章正文,发现未收录的高频候选词,辅助维护术语表。
反方 / 局限
- — 术语表需要持续手动维护,新领域的新名词无法自动收录,这是目前最大的维护成本。
- — 多义词(如「Node」在不同语境下含义不同)无法自动处理,目前只能手动嵌入链接。
- — 不支持同义词推断(如「GitHub」和「GH」是两个独立条目,不会自动关联)。
20 分钟 · 3 卡片 · 7 资料
读原文 →