3个版本
0.1.2 | 2022年8月22日 |
---|---|
0.1.1 | 2022年5月4日 |
0.1.0 | 2022年4月28日 |
#508 在 模板引擎
24KB
453 行
mdiu
使用Gemtext构建文档
许可证
许可方式为以下之一
- Apache License,版本2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- MIT许可证 (http://opensource.org/licenses/MIT)
任选其一。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义,您有意提交以包含在作品中的任何贡献,将按照上述方式双许可,不附加任何额外条款或条件。
lib.rs
:
使用Gemtext构建文档
mdiu
提供了一个正确且灵活的方法来创建使用Gemtext的小型文档。
以Manual Data Insertion Unit命名,这是Gemini机载计算机的一部分。
示例
使用构建器创建文档
use mdiu::{Document, Gemtext, ToMarkup};
let gemtext = Document::new()
.h1("my gemlog")
.text("welcome")
.build()?
.to_markup::<Gemtext>();
assert_eq!(gemtext, "# my gemlog\nwelcome\n");
逐块创建文档
use mdiu::{Block, Content, Gemtext, Level, Markup};
let h1 = Block::Heading(Level::One, "my gemlog".parse()?);
let text = Block::Text(Content::new("welcome")?);
let doc = vec![h1, text];
let gemtext = <Gemtext>::markup(&doc);
assert_eq!(gemtext, "# my gemlog\nwelcome\n");
特性
默认支持将格式化为Gemtext
。以下格式也有额外功能
html
markdown
计划实现Gemtext解析功能,但尚未实现。
替代方案
虽然mdiu
仅涵盖Gemtext,但以下crates涵盖了完整的Gemini协议
依赖
~575KB