4 个版本 (2 个重大更新)

0.3.0 2023 年 8 月 3 日
0.2.0 2023 年 6 月 17 日
0.1.1 2023 年 6 月 14 日
0.1.0 2023 年 6 月 14 日

#2965解析器实现

Download history • Rust 包仓库 38/week @ 2024-03-11 • Rust 包仓库 20/week @ 2024-03-18 • Rust 包仓库 11/week @ 2024-03-25 • Rust 包仓库 44/week @ 2024-04-01 • Rust 包仓库 16/week @ 2024-04-08 • Rust 包仓库 29/week @ 2024-04-15 • Rust 包仓库 20/week @ 2024-04-22 • Rust 包仓库 10/week @ 2024-04-29 • Rust 包仓库 24/week @ 2024-05-06 • Rust 包仓库 15/week @ 2024-05-13 • Rust 包仓库 8/week @ 2024-05-20 • Rust 包仓库 26/week @ 2024-05-27 • Rust 包仓库 21/week @ 2024-06-03 • Rust 包仓库 19/week @ 2024-06-10 • Rust 包仓库 32/week @ 2024-06-17 • Rust 包仓库 20/week @ 2024-06-24 • Rust 包仓库

每月 下载 93

Apache-2.0 许可

7KB
59

markdown-it-front-matter.rs

crates.io

一个用于处理 front matter 容器的 markdown-it 插件。

使用方法

let parser = &mut markdown_it::MarkdownIt::new();
markdown_it_front_matter::add(parser);
let ast  = parser.parse("---\nfoo: bar\n---\n");

print!("{:#?}", ast.children);
// [
//     Node {
//         children: [],
//         srcmap: Some(
//             (
//                 0,
//                 16,
//             ),
//         ),
//         ext: NodeExtSet(
//             {},
//         ),
//         attrs: [],
//         node_type: markdown_it_front_matter::FrontMatter,
//         node_value: FrontMatter {
//             content: "foo: bar\n",
//         },
//     },
// ]

有效的 front matter

基本上,有效的 front matter 是一个带有边界的区块

  • 通过 三个更多 的破折号表示:---
  • 开启和关闭的边界必须具有相同数量的 破折号 字符
  • 开启边界必须位于 markdown 字符串/文件的第一行
  • 开启边界不能缩进
---
valid-front-matter: true
---

依赖项

~5–7MB
~161K SLoC