#unicode #tui #no-std #lookup-tables

无std boxy

Unicode方框绘制字符的声明性构建器

1个不稳定版本

0.1.0 2022年1月10日

#1283文本处理

Download history 7/week @ 2024-03-11 7/week @ 2024-03-18 10/week @ 2024-03-25 43/week @ 2024-04-01 3/week @ 2024-04-08 4/week @ 2024-04-15 15/week @ 2024-04-22 10/week @ 2024-04-29 10/week @ 2024-05-06 22/week @ 2024-05-13 24/week @ 2024-05-20 22/week @ 2024-05-27 22/week @ 2024-06-03 15/week @ 2024-06-10 6/week @ 2024-06-17 14/week @ 2024-06-24

58 每月下载量
用于 3 个crate (2 直接)

Apache-2.0

26KB
354

boxy - 声明性方框绘制字符

Crates.io docs.rs

方框绘制字符在文本用户界面软件中广泛用于绘制线条、方框和其他形状。Unicode在方框绘制块(U+2500U+257F)中提供了大量此类字符。

遗憾的是,在这个范围内构建代码点可能相当麻烦,并且使用方框绘制字符生成图形可能很繁琐。即使对于块的部分子集存在显式的公式也是如此。

这个crate提供了相关的查找表,并通过boxy::Char类型暴露了一个友好的接口来生成字符。例如

let corner = boxy::Char::upper_left(boxy::Weight::Doubled);
let side = boxy::Char::horizontal(boxy::Weight::Doubled);

let bx = format!(
  "{}{}{}\n{}{}{}",
  corner, side, corner.rotate_cw(1),
  corner.rotate_cw(3), side, corner.rotate_cw(2),
);

assert_eq!(bx, "
╔═╗
╚═╝
".trim());

此crate是no_std且永远不会panic,这使得它非常适合您的a e s t h e t i c内核panic消息。

无运行时依赖