1个稳定版本
1.5.0 | 2022年6月8日 |
---|
#157 in 缓存
用于 how-install
78KB
1.5K SLoC
tealdeer
存储库 | CI (Linux/macOS/Windows) |
---|---|
A very fast implementation of tldr in Rust: Simplified, example based and community-driven man pages.
If you pronounce "tldr" in English, it sounds somewhat like "tealdeer". Hence the project name :)
In case you're in a hurry and just want to quickly try tealdeer, you can find static binaries on the GitHub releases page!
文档(安装、使用、配置)
用户文档可在 https://dbrgn.github.io/tealdeer/ 查找!
文档使用 mdbook 生成。它们可以通过 docs/src/
目录中的markdown文件进行编辑。
目标
高级项目目标
像tldr
这样的工具应该尽可能无摩擦地使用,并尽可能快地显示输出。
我们认为tealdeer
实现了这些目标。我们创建了一个(更多或更少)可重现的基准,该基准从源代码编译了一些客户端,并测量了在冷磁盘缓存上的执行时间。基准测试是在使用sharkdp的hyperfine
(Dockerfile)的Docker容器中运行的。
客户端(50次运行,2021年10月17日) | 编程语言 | 平均值(毫秒) | 偏差(毫秒) | 评论 |
---|---|---|---|---|
outfieldr |
Zig | 9.1 | 0.5 | 无用户配置 |
tealdeer |
Rust | 13.2 | 0.5 | |
fast-tldr |
Haskell | 17.0 | 0.6 | 无示例高亮显示 |
tldr-hs |
Haskell | 25.1 | 0.5 | 无示例高亮显示 |
tldr-bash |
Bash | 30.0 | 0.8 | |
tldr-c |
C | 38.4 | 1.0 | |
tldr-python-client |
Python | 87.0 | 2.4 | |
tldr-node-client |
JavaScript / NodeJS | 407.1 | 12.9 |
如您所见,tealdeer
是测试客户端中速度最快的之一。然而,我们更注重实用功能和代码质量,而不是原始性能,即使这意味着我们在这场友好的竞争中不占上风。话虽如此,我们仍在优化代码,例如,当outfieldr
开发者建议切换到原生TLS实现而不是原生库时。
开发
创建启用日志记录的调试构建
$ cargo build --features logging
无日志记录的发布构建
$ cargo build --release
要启用日志输出,请设置RUST_LOG
环境变量
$ export RUST_LOG=tldr=debug
运行测试
$ cargo test
运行 lint
$ rustup component add clippy
$ cargo clean && cargo clippy
MSRV(最小支持的Rust版本)
发布 Tealdeer 版本时,构建它所需的 Rust 版本应至少稳定一个月。
许可证
以下任一许可证下授权:
- Apache License,版本 2.0(《LICENSE-APACHE》或https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT 许可证(在您的选择下《LICENSE-MIT》或http://opensource.org/licenses/MIT)
贡献
除非您明确表示,否则根据 Apache-2.0 许可证定义的,您有意提交的任何贡献,包括但不限于以下内容,都应按上述方式双授权,不附加任何额外的条款或条件。
感谢 @severen 提出名字 "tealdeer"!
依赖项
~6–20MB
~292K SLoC