Docsify v5.0.0-rc.3:支持 GitHub 风格的提示框
版权声明
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
Docsify v5.0.0-rc.3 带来了全新的 GitHub 风格提示框(Callouts),让文档阅读体验更清晰直观。
除了这一亮点功能,本次更新还改进了 Markdown 片段提取、侧边栏导航和 Slug 生成 等细节。依赖升级、样式优化与文档完善也一并到位,为你带来更稳定、更流畅的使用体验。
支持 GitHub 风格的提示框(Callouts)
在 GitHub 中,此功能被称为 警报(Alerts),是一种基于块引用语法的 Markdown 扩展,用于强调关键信息。 在 Docsify 中,这一功能同样被引入,避免了旧版本中自定义样式在 GitHub 上无法正常渲染的问题。
要添加警报,可以使用如下语法:
> [!CAUTION] > **Caution** callouts communicate negative potential consequences of an action. > [!IMPORTANT] > **Important** callouts communicate information necessary for users to succeed. > [!NOTE] > **Note** callouts communicate information that users should take into account. > [!TIP] > **Tip** callouts communicate optional information to help a user be more successful. > [!WARNING] > **Warning** callouts communicate potential risks user should be aware of.
效果如下:
与此同时,旧版本的 !> 和 ?> 语法已废弃,分别被替换为 > [!IMPORTANT] 和 > [!TIP]:
支持提取 Markdown 中的片段内容
过去的 片段提取功能 仅支持代码片段,例如:
[array_map example](example.php ":include :type=code :fragment=array_map") [array_filter example](example.php ":include :type=code :fragment=array_filter")
### [array_map] $numbers = [1, 2, 3, 4, 5]; $squared = array_map(function($n) { return $n * $n; }, $numbers); var_dump($squared); ### [array_map] ### [array_filter] $even = array_filter($numbers, function($n) { return $n % 2 === 0; }); var_dump($even); ### [array_filter]
这样可确保文档示例和源代码保持一致,减少重复维护。
在本次更新中,Docsify 将这一功能扩展到了 Markdown 文件。
同样可以通过 :fragment 精确引用文档片段,引用的内容也支持渲染 Markdown:
[example1](example.md ":include :fragment=example1") [example2](example.md ":include :fragment=example2")
/// [example1] > This is from the `example.md`, example1 > /// [example1] ### [example2] > This is from the `example.md`, example2 ### [example2]
这让 跨文档复用 成为可能,提升了写作与维护效率。
优化 Slug 生成规则
Docsify 会根据标题自动生成锚点(slug),但旧规则在一些场景下会产生异常,例如:
"The content"→quotthe-contentquoLegacy Style ⚠️→legacy-style-⚠%ef%b8%8f
在 v5.0.0-rc.3 中,这一逻辑得到了优化:
所有 slug 会统一标准化为 NFC,保持跨平台一致性。
移除了 emoji 变体选择符,避免锚点异常。
生成结果与 GitHub 更加接近,例如:
"The content"→the-contentLegacy Style ⚠️→legacy-style-
这样一来,文档的链接更稳定、更可预测,也便于外部引用。
更新日志
Features
Bug Fixes
修复了侧边栏文本溢出时 app-name-link的样式问题 (#2564)增强焦点处理,在切换时支持平滑滚动到内容区域 (#2569, #2595) 修复哈希导航可能导致重复回调的问题 (#2575) 修复锚点链接的 display: block引发的布局问题 (#2576)修复搜索关键字未转义 HTML 与侧边栏 ID 未裁剪的问题 (#2586) 移除侧边栏被忽略的标题和子级项 (#2580) 更新相对路径处理逻辑,修复跳转异常 (#2579) 优化 slug 生成规则 (#2581),并进一步标准化为 NFC,同时移除 emoji 变体选择符 (#2597) 修复文字底部被截断的问题 (#2568)
Refactor
Chore
更新依赖:
rollup-plugin-import-css 3.5.0 → 4.0.1 (#2554) lint-staged 15.2.7 → 16.1.0 (#2553) stefanzweifel/git-auto-commit-action 5 → 6 (#2562) marked 15.0.3 → 16.0.0 (#2559) form-data 4.0.0 → 4.0.4 (#2572) jest 29.7.0 → 30.0.3 (#2561) cross-env 7.0.3 → 10.0.0 (#2589) jest-environment-jsdom 29.7.0 → 30.0.5 (#2590) 其他改动:
Docs
Style
更新封面页样式、iframe 暗黑模式透明度与代码块对比度 (#2593)
Docsify v5.0.0-rc.3 在保持轻量的同时,带来了更现代的写作体验。
无论是 GitHub 风格的提示框、跨文档片段提取,还是更稳定的 Slug 规则,都让文档编写更加直观、可靠。
如果你正使用 Docsify,建议尽快升级到最新版本,体验这些改进!
鲁飞
还在用多套工具管项目?
一个平台搞定产品、项目、质量与效能,告别整合之苦,实现全流程闭环。
白皮书上线