10 个稳定版本 (4 个主要版本)
4.0.3 | 2023 年 8 月 28 日 |
---|---|
4.0.2 | 2022 年 1 月 25 日 |
3.0.2 | 2020 年 11 月 30 日 |
3.0.1 | 2020 年 5 月 17 日 |
0.1.1 | 2019 年 5 月 13 日 |
#73 在 命令行界面
5,820 每月下载量
在 12 软件包 中使用
43KB
1K SLoC
ascii-table
将 ASCII 表打印到终端。
示例
use ascii_table::AsciiTable;
let ascii_table = AsciiTable::default();
let data = vec![&[1, 2, 3], &[4, 5, 6], &[7, 8, 9]];
ascii_table.print(data);
// ┌───┬───┬───┐
// │ 1 │ 2 │ 3 │
// │ 4 │ 5 │ 6 │
// │ 7 │ 8 │ 9 │
// └───┴───┴───┘
示例
use std::fmt::Display;
use ascii_table::{AsciiTable, Align};
let mut ascii_table = AsciiTable::default();
ascii_table.set_max_width(26);
ascii_table.column(0).set_header("H1").set_align(Align::Left);
ascii_table.column(1).set_header("H2").set_align(Align::Center);
ascii_table.column(2).set_header("H3").set_align(Align::Right);
let data: Vec<Vec<&dyn Display>> = vec![
vec![&'v', &'v', &'v'],
vec![&123, &456, &789, &"abcdef"]
];
ascii_table.print(data);
// ┌─────┬─────┬─────┬──────┐
// │ H1 │ H2 │ H3 │ │
// ├─────┼─────┼─────┼──────┤
// │ v │ v │ v │ │
// │ 123 │ 456 │ 789 │ abc+ │
// └─────┴─────┴─────┴──────┘
特性
auto_table_width
:将 ASCII 表的默认最大宽度设置为终端宽度。color_codes
:当存在终端颜色代码时(如来自colorful
软件包的颜色代码)正确计算字符串的宽度。wide_characters
:当存在宽字符时(如 emoli 的宽字符)正确计算字符串的宽度。
依赖
~0–660KB