17 个版本 (2 个稳定版)

1.0.1 2024 年 3 月 13 日
1.0.0-rc.12023 年 8 月 11 日
1.0.0-rc2023 年 7 月 7 日
0.5.1 2022 年 3 月 23 日
0.3.2 2017 年 7 月 26 日

#12命令行界面

Download history 587058/week @ 2024-04-25 599129/week @ 2024-05-02 574259/week @ 2024-05-09 601951/week @ 2024-05-16 594131/week @ 2024-05-23 701528/week @ 2024-05-30 672167/week @ 2024-06-06 691266/week @ 2024-06-13 695325/week @ 2024-06-20 733487/week @ 2024-06-27 668462/week @ 2024-07-04 730599/week @ 2024-07-11 724819/week @ 2024-07-18 756434/week @ 2024-07-25 723356/week @ 2024-08-01 642998/week @ 2024-08-08

2,987,311 每月下载量
3,548 个 Crates 中使用 (194 个直接使用)

MIT/Apache 协议

93KB
1K SLoC

yansi logo  Yansi

一个简单的 ANSI 终端着色库。

Build Status Current Crates.io Version Documentation

使用方法

在你的 Cargo.toml

[dependencies]
yansi = "1.0"

在你的源代码中

use yansi::Paint;

println!("Testing, {}, {}, {}!",
    "Ready".bold(),
    "Set".black().on_yellow().invert().italic(),
    "STOP".white().on_red().bright().underline().bold());

> Testing, Ready, Set, STOP!

查看 rustdocs 以获取完整的用法细节。

特性

为什么还需要另一个 ANSI 终端着色库?以下是一些原因

  • 这个库让简单的事情变得简单:使用 use Paint 并继续前进!
  • 默认情况下无依赖。这真的很简单。
  • 除了需要的 opt-in wrapping 外,无分配。
  • 自动 Windows 支持 对于绝大多数(95%+)的 Windows 用户。
  • 功能丰富的 no_std、无-alloc、支持 default-features = false
  • Style 构造函数是 const:即使在动态条件下也能静态存储样式!
  • 任何 实现 formatting 特性的类型都可以被着色,不仅仅是字符串。
  • 样式可以全局和动态地 启用禁用,也可以动态地 切换
  • 一个 Style 可以基于任意 条件 来确定。
  • 支持并保留格式说明符,如 {:x}{:08b}
  • 内置(可选)条件,用于 TTY 识别常见环境变量
  • 任意项目可以被 屏蔽 以实现选择性禁用。
  • 样式可以 包装 以在重置后保留样式。
  • 样式可以 持续 超过一个值。
  • 包括对 超链接 的实验性支持。
  • 名称 yansi 非常酷 😎。

许可证

yansi 可以选择以下任何一个许可证

依赖项

~0–6.5MB
~33K SLoC