使用 Rust 重写 blog 构建工具

九年来,Jonas Hietala 一直用Hakyll作为静态站点的生成工具。如今,他打算转向自己用Rust编写的自定义站点生成器,并解决这几点问题:

(1)Hakyll的编译速度实速度越来越慢;
(2)外部依赖项。虽然站点生成器是用Haskell编写的,但除了众多Haskell库之外,其中还包含其他依赖项,管理和更新十分烦人,无法专心于博客内容;
(3)设置问题。跟大量依赖项相关,作者的博客网站有时会宕机,必须得花时间调试和修复。

他担心模板引擎、高亮显示的功能无法在 Rust 中实现,但事实上,每一个功能都有理想的工具辅助实现:

(1)用pulldown-cmark来解析Markdown;
(2)用syntect实现语法高亮,能支持Sublime Text语法;
(3)用yaml-front-matter解析帖子中的元数据;
(4)用grass作为纯Rust中的Sass编译器;
(5)用axum创建负责在本地托管站点的静态文件服务器;
(6)用hotwatch监控文件变更,这样就能在文件内容变化时更新页面;
(7)用scraper解析生成的html,用于某些测试和特定转换;
(8)用rust-s3生成的站点上传至 S3 存储端。

来源:Rust中文社区

追求卓越算法,赋能量化交易
非凸科技
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!