我为 mdBook 制作了一个站点地图生成器。这是我第一次发布一个 crate!

发布日期:2026-06-14 10:03:08   浏览量 :7
发布日期:2026-06-14 10:03:08  
7

我就读于日本的高中。我担心这篇文章可能包含一些不自然的地方。

动机

我正在创建一份网络文档,系统地解释编程的本质。我使用了用 Rust 编写的静态站点生成器 mdBook。然而,我发现它不支持生成站点地图。

mdBook 拥有丰富的生态系统来扩展其功能。幸运的是,我找到了支持我项目的 mdbook-sitemap-generator

GitHub 标志 rxdn / mdbook-sitemap-generator

为 mdbook 项目生成 sitemap.xml 文件的实用工具

mdbook-sitemap-generator

这是什么?

mdbook-sitemap-generator 是一个简单的实用工具,用于为 mdbook 项目生成 sitemap.xml 文件。

安装

二进制文件发布在 Github 发布页面 上。

也可以通过 cargo 安装此实用工具,使用 cargo install mdbook-sitemap-generator

用法

该实用工具应在项目的根目录下运行。

用法:
    mdbook-sitemap-generator [选项] --domain <域名>

选项:
    -d, --domain <域名>
    -h, --help               打印帮助信息
    -o, --output <输出>

运行该实用工具时,必须通过 -d 标志传递网站的统一资源定位符域名,例如 -d docs.example.com

如果未传递 -o 标志,站点地图将写入标准输出。

例如:

$ ls
book  book.toml  src
$ mdbook-sitemap-generator -d docs.example.com -o book/sitemap.xml



然而,它不支持最新版本的 mdBook。虽然有另一种用 Go 编写的站点地图生成后端,但我们无法通过 cargo 安装它。所以我决定制作自己的替代方案。

大语言模型辅助编码

我请求 Claude Sonnet 生成一个用 100% Rust 编写的简单站点地图生成器。Claude 生成的代码包括实现和单元测试。单元测试通过了。然而,在 mdBook 发送给自定义后端的 JavaScript 对象表示法格式中存在一个错误。

手动编码

我为其添加了简单的持续集成流程,用于验证项目和模拟最新版本 mdBook 行为的集成测试。多亏了这个设置,我才能够注意到它无法正确运行。

我阅读了 mdBook 文档,发现了 JavaScript 对象表示法格式不匹配的问题。我修改了代码,并检查集成测

免责声明:本文内容来自互联网,该文观点不代表本站观点。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请到页面底部单击反馈,一经查实,本站将立刻删除。

关于我们
热门推荐
合作伙伴
免责声明:本站部分资讯来源于网络,如有侵权请及时联系客服,我们将尽快处理
Copyright © 2025-2027 ToB产业网址导航 公安备案 浙公网安备33010602013138号 浙ICP备16025413号-9
支持 反馈 订阅 数据