#table #ratatui #row-column #large

rat-ftable

基于 ratatui 的大数据表格小部件

18 个版本 (6 个破坏性更新)

0.16.0 2024 年 7 月 3 日
0.15.5 2024 年 6 月 15 日
0.14.0 2024 年 5 月 30 日
0.13.1 2024 年 5 月 29 日
0.10.0 2024 年 5 月 13 日

#872 in 命令行界面

Download history 67/week @ 2024-05-07 593/week @ 2024-05-14 238/week @ 2024-05-21 627/week @ 2024-05-28 369/week @ 2024-06-04 251/week @ 2024-06-11 17/week @ 2024-06-18 188/week @ 2024-07-02 36/week @ 2024-07-09

每月 107 次下载
3 个软件包中使用 (通过 rat-widget)

MIT/Apache

1MB
3K SLoC

crates.io Documentation License License

基于 ratatui 的表格小部件。

可以作为 ratatui 表格的直接替代品。但这并不是这个小部件的目的。

这个小部件使用 TableData 特性而不是渲染所有表格单元格并将它们放入 Vec。这样渲染时间只取决于屏幕大小,而不会根据您的数据大小。

有一个变体接受 TableRowData 的迭代器。但是陷阱很少。如果迭代器没有高效的 skip() 或如果您无法提供行数,则这将迭代所有必要信息的数据。这可能会稍微减慢一切。

image

更多项目符号

  • 渲染时的行和列偏移量。
  • 带有 TableSelection 的可插拔选择
    • 允许行/列/单元格选择。
    • 行/列/单元格选择 + 标题/页脚选择,每个都有其自己的样式。
  • 存在基本的键/鼠标处理。

当前仅支持 crossterm 的事件处理。实际上,事件处理是在状态上调用 1 或 2 个函数,因此这应该很容易映射到其他系统。(欢迎贡献 :))

依赖项

~6–12MB
~122K SLoC