本文档解释了在 Web Development for Beginners 课程仓库中使用的 Docsify 文档系统配置。它涵盖了技术设置、配置选项和文件结构,使课程能够作为交互式网站进行展示。有关从文档生成 PDF 的信息,请参阅 PDF 生成。
Docsify 是一个轻量级的文档生成器,它动态地将 Markdown 文件渲染成网站,而无需构建静态 HTML 文件。在 Web-Dev-For-Beginners 仓库中,Docsify 将课程的 Markdown 内容转换为一个可导航、可搜索的文档网站,托管在 GitHub Pages 上。
Docsify 文档系统架构
来源:index.html1-43 docs/_navbar.md1-21
Docsify 配置位于仓库根目录的 index.html 文件中。核心设置定义在 window.$docsify 对象中。
window.$docsify 对象包含几个重要参数:
| 参数 | 值 | 目的 |
|---|---|---|
loadNavbar | 'docs/_navbar.md' | 指定导航栏内容的文件的路径 |
名称 | 'Web Development for Beginners: A Curriculum' | 设置文档标题 |
repo | 'https://github.com/microsoft/Web-Dev-For-Beginners' | 链接到 GitHub 仓库 |
relativePath | true | 启用链接的相对路径 |
auto2top | false | 禁用页面更改时自动滚动到顶部 |
notFoundPage | true | 启用默认的 404 页面 |
alias | (复杂对象) | 处理翻译的路径别名 |
Docsify 配置中最复杂的部分之一是 alias 参数,它实现了用于处理翻译的路径重写规则。此系统允许文档无缝地提供多语言内容。
别名规则可分为两类:
翻译路径映射:将带有语言后缀的 URL(例如,西班牙语的 README.es)映射到翻译文件夹中的相应文件的规则。
英语回退映射:处理没有语言后缀的请求的规则,通过直接提供英语内容而无需经过翻译文件夹。
这个翻译系统允许用户通过导航栏在文档的不同语言版本之间进行导航。
导航栏配置为提供课程的语言选择选项。它从 loadNavbar 配置参数中指定的 docs/_navbar.md 文件加载。
导航栏旨在提供语言选择,其中包含指向主要 README 文件不同翻译版本的链接。每个链接都指向相同的内容,但具有不同的语言后缀,利用了 Docsify 配置中定义的别名规则。
文档使用最少的样式资源:
index.css),用于微调。index.css 中的自定义 CSS 非常少,仅调整导航栏元素的宽度。
这确保了语言选择下拉菜单能够正确显示不同长度的语言名称。
来源:index.html10-11 index.css1-3
核心 Docsify 脚本是从 CDN 加载的,基本的 HTML 结构提供了 Docsify 运行所需的最少元素。
HTML 文档遵循以下结构:
#app div 作为 Docsify 的挂载点。window.$docsify 对象的配置脚本。这种极简的结构允许 Docsify 控制 DOM 并动态渲染 Markdown 内容。
文档通过 HTML 文件中的脚本集成了 Microsoft Clarity 分析。
此脚本在 Docsify 配置之前加载,以确保整个文档网站都提供分析跟踪。
Docsify 文档系统作为访问和导航 Web Development for Beginners 课程的主要界面。
Docsify 系统通过以下方式使课程易于访问和导航:
Web Development for Beginners 仓库中的 Docsify 配置提供了一个轻量级、灵活的文档系统,该系统:
这种方法使得课程易于维护、扩展和翻译,同时为学习者提供了一个一致、易于访问的界面。