5 个版本

0.2.0 2023 年 8 月 3 日
0.1.3 2023 年 6 月 21 日
0.1.2 2023 年 6 月 21 日
0.1.1 2023 年 6 月 21 日
0.1.0 2023 年 6 月 21 日

#2996解析器实现

Download history 32/week @ 2024-03-11 18/week @ 2024-03-18 11/week @ 2024-03-25 46/week @ 2024-04-01 16/week @ 2024-04-08 26/week @ 2024-04-15 21/week @ 2024-04-22 14/week @ 2024-04-29 28/week @ 2024-05-06 14/week @ 2024-05-13 7/week @ 2024-05-20 27/week @ 2024-05-27 22/week @ 2024-06-03 21/week @ 2024-06-10 31/week @ 2024-06-17 17/week @ 2024-06-24

92 每月下载次数
markdown-it-gfm 中使用

Apache-2.0

8KB
108

markdown-it-tasklist

crates.io

一个用于处理 GFM 任务列表 的 markdown-it 插件。

- [x] foo
- [ ] bar

用法

加载插件

let parser = &mut markdown_it::MarkdownIt::new();
markdown_it::plugins::cmark::add(parser);

markdown_it_tasklist::add(parser);
// or with checkboxes disabled
// markdown_it_tasklist::add_disabled(parser);

let ast  = parser.parse("- [x] foo");
let html = ast.render();

lib.rs:

A [markdown_it] 插件用于解析任务列表

let parser = &mut markdown_it::MarkdownIt::new();
markdown_it::plugins::cmark::add(parser);
markdown_it_tasklist::add(parser);
let root = parser.parse("- [x] task");
let mut names = vec![];
root.walk(|node,_| { names.push(node.name()); });
assert_eq!(names, vec![
"markdown_it::parser::core::root::Root",
"markdown_it::plugins::cmark::block::list::BulletList",
"markdown_it::plugins::cmark::block::list::ListItem",
"markdown_it_tasklist::TodoCheckbox",
"markdown_it::parser::inline::builtin::skip_text::Text",
]);

依赖

~6–8MB
~177K SLoC