TypeDoc 0.26 版本新特性解析:文档扩展与国际化支持
TypeDoc 作为 TypeScript 项目的文档生成工具,在其最新的 0.26 版本中带来了两项重大功能更新:外部 Markdown 页面支持和国际化本地化能力。这些改进显著提升了文档编写的灵活性和可用性,让开发者能够创建更加丰富和完善的项目文档。
外部 Markdown 页面支持
长期以来,开发者一直期待 TypeDoc 能够支持除项目 README 之外的其他 Markdown 文档。0.26 版本终于实现了这一功能,解决了项目文档扩展性的关键需求。
项目级文档
通过新增的 --projectDocuments 选项,开发者可以添加项目级别的文档。这些文档将作为根反射对象的子项显示,非常适合添加项目使用指南、教程等顶层文档内容。
反射级文档
开发者现在可以在声明中使用 @document 标签来关联特定的 Markdown 文档。这些文档会作为对应声明的子项显示,适用于提供与特定 API 相关的详细说明文档。
文档元数据
Markdown 文档支持 YAML 格式的前言元数据,可以设置以下属性:
title:设置文档显示名称group和category:功能类似于常规反射上的@group和@category标签
文档结构可以通过在标题中使用斜杠(/)来创建层级关系,例如"Guides/Getting Started"会自动创建嵌套的文档结构。
国际化支持
TypeDoc 0.26 首次引入了完整的国际化架构,支持将界面文本和日志消息翻译成不同语言。这一改进为全球开发者提供了更好的本地化体验,使非英语用户能够更方便地使用工具和阅读生成的文档。
其他重要改进
-
性能优化:通过新增的
highlightLanguages选项限制加载的语法高亮语言,减少了约150ms的渲染时间。 -
文档组织:支持通过
--sortEntryPoints选项控制文档排序,确保重要文档能够按预期顺序显示。 -
代码质量:移除了已弃用的
--media、--includes和--stripYamlFrontmatter选项,简化了配置。 -
渲染优化:只有当"Type Declaration"部分能提供额外信息时才会渲染,避免了重复内容的显示。
-
错误处理:在运行结束后会显示警告/错误的汇总信息,方便开发者快速定位问题。
升级注意事项
-
移除了对 Node 16 的支持,请确保使用更新的 Node 版本。
-
将 Markdown 解析引擎从 marked 迁移到了 markdown-it,这可能会影响某些特殊 Markdown 语法的渲染结果。
-
更新了 Shiki 语法高亮引擎到 1.x 版本,虽然增加了支持的语言和主题,但也带来了轻微的性能影响。
TypeDoc 0.26 的这些改进显著提升了文档编写的灵活性和用户体验,使开发者能够创建更加结构化和国际化的项目文档。对于需要丰富文档内容的 TypeScript 项目来说,这个版本提供了强大的新工具和可能性。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0214
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook0138
uni-appA cross-platform framework using Vue.jsJavaScript08
GLM-5.2智谱开源 GLM-5.2,这是针对长文本任务的最新旗舰模型。相较于前代产品 GLM-5.1,它在长文本任务处理能力上实现了显著飞跃,并且首次在稳定的 100 万 token 上下文中提供这一能力。Jinja00
SwanLab⚡️SwanLab - an open-source, modern-design AI training tracking and visualization tool. Supports Cloud / Self-hosted use. Integrated with PyTorch / Transformers / LLaMA Factory / veRL/ Swift / Ultralytics / MMEngine / Keras etc.Python00
tiny-universe《大模型白盒子构建指南》:一个全手搓的Tiny-UniverseJupyter Notebook03