5 个不稳定版本

0.3.0 2023年9月20日
0.2.2 2023年9月16日
0.2.1 2021年7月19日
0.2.0 2021年6月30日
0.1.0 2021年6月29日

#6 in #tabular


用于 saturn-cli

BSD-3-Clause

21KB
408 代码行

ttygrid: 终端表格的响应式布局

ttygrid 可以将您的表格内容转换为响应式布局。您只需向其提供内容以及您想要显示的列,它将根据表格列中文本的长度以及“优先级”(一个表示显示优先级的递增数字)来计算要显示的内容。

结果类似于 这个,具体示例代码见 此处。所有列都分配了填充空间,以确保表格整齐有序地显示。

ttygrid 不支持流式 I/O。仅支持终端 I/O!此时,您必须在调用 ttygrid 之前检测是否为 TTY。

ttygrid 在底层使用 crossterm 来检测终端宽度以及管理所需的颜色。

使用方法

docs.rs 包含所有信息.

作者

Erik Hollensbe [email protected]


lib.rs:

ttygrid 为用户显示表格化文本提供功能,具有适当的填充和宽度管理。使用 ttygrid,您只需提供数据,以及每列的优先级(称为“优先级”),它将自动根据可用显示宽度确定要向用户显示的内容。更多信息请参阅 crate::grid!

这里是一个演示,可以查看实际效果。

它不适用于流式(即非 tty)情况。目前可能仅适用于 Unix 系统。

demo 示例 展示了一些基本功能,应仔细阅读以了解此库;以及学习宏。

此库的大部分内容依赖于宏,而不是类型。请查阅宏以获取最全面的文档。

依赖项

~1–7MB
~22K SLoC