6 个版本 (稳定版)
2.4.0 | 2020年5月31日 |
---|---|
2.3.0 | 2019年10月29日 |
2.2.0 | 2019年1月10日 |
2.1.0 | 2018年12月27日 |
0.1.0 | 2018年12月21日 |
#1325 在 文本处理
每月37次下载
在 2 crate 中使用
52KB
1K SLoC
August
August 是一个用于将 HTML 转换为纯文本的 Rust crate 和程序。它专门用于将 HTML 邮件渲染为文本;然而,它也可以用于其他目的,例如将 HTML 转换为文本以进行全文索引或其他处理。
用法
将此添加到您的 Cargo.toml
[dependencies]
august = "^2.4"
并将此添加到您的代码中
use august;
let input = "<p>Hello</p><i>Here's some HTML!</i>";
println!("{}", august::convert(input, 79));
println!("---");
println!("{}", august::convert_unstyled(input, 79));
输出现在看起来像这样
Hello
/Here's some HTML!/
---
Hello
Here's some HTML!
命令行程序
Cargo 附带了一个小的命令行程序 august
,它从 stdin 读取 HTML 并将文本打印到 stdout。如果您已启用 term-size
功能,它将使用终端宽度作为默认宽度,否则使用 79。您可以通过传递 -w WIDTH
作为参数来覆盖此值。
已知问题
- 目前没有 CSS 支持。可能在未来某个时候会实现一些支持,但尚不清楚哪些值得实现。
变更
2.4.0
- 添加了无样式模式
2.3.0
- 切换到更多基于流的函数
- 更新 cargo 配置以使用 semver 版本来防止 0.x 依赖项损坏。
2.2.0
- 添加更多文档。
- 在终端大小下运行时使用终端宽度作为默认宽度。
- 默认禁用 term-size 以减少静态链接大小。
- 对于大文件,减少内存使用量约 30%。
- 减少正则表达式的使用。
2.1.0
- 添加对更多内联元素的支持:code、dfn、kbd、mark、q、samp、var、del、input、select。
- 添加对 pre 元素的支持
- 将不支持的内联元素以内联形式显示而不是块形式。
2.0
初始 Python 重写 (https://alantrick.ca/writings/programming/python_to_rust)。
依赖关系
~5–7MB
~124K SLoC