1 个不稳定版本
| 0.1.0 | 2021年1月8日 |
|---|
9 在 #pulldown-cmark 中排名 #9
每月 1,606 次下载
10KB
135 代码行
markdown-heading-id
针对 Parser 的 crate pulldown-cmark 的过滤器
此 crate 提供了一个 Parser 过滤器,它将带有自定义 ID 的标题转换为 HTML。它使用 Markdown 扩展语法中定义的标题 ID 语法。
例如,如果我们有以下 Markdown 片段
## Heading {#heading-id}
则它将被转换为以下 HTML 片段
<h2 id="heading-id">Heading</h2>
使用方法
使用此 crate 提供的过滤器非常简单。 HeadingId 包装了一个 Parser 实例,并且可以传递给 push_html 或 write_html,因为 HeadingId 实现了 Iterator<Item=Event<'a>> 特性。以下是一个示例
use pulldown_cmark::Parser;
use pulldown_cmark::html::push_html;
use markdown_heading_id::HeadingId;
let parser = Parser::new("## Heading {#heading-id}");
let parser = HeadingId::new(parser);
let mut buf = String::new();
push_html(&mut buf, parser);
assert_eq!(buf.trim_end(), r#"<h2 id="heading-id">Heading</h2>"#);
许可证:MIT
依赖
约 1.5MB
约 24K SLoC