26 个版本
0.9.9 | 2024年4月16日 |
---|---|
0.9.8 | 2023年12月23日 |
0.9.7 | 2023年10月22日 |
0.9.2 | 2023年4月21日 |
0.7.8 | 2022年7月7日 |
#497 在 过程宏 中
7,652 每月下载量
在 7 个 Crates 中使用(直接使用 3 个)
83KB
1K SLoC
上下文
R3BL TUI 库 & 为 开发 者 的 产 品 创 造 的 工 具 集
我们正在努力构建Rust中的命令行应用程序,这些应用程序具有丰富的文本用户界面(TUI)。我们希望利用终端作为提高生产力的地方,并为其构建各种精彩的应用程序。
-
🔮 我们不仅构建一个应用程序,而是构建一个库,以启用任何类型的丰富 TUI 开发,并且有一个独特的转折:采用在移动和前端 Web 开发世界中表现良好的概念,并为 TUI 和 Rust 重新构想。
- 比如 React、JSX、CSS 和 Redux,但使其全部异步(它们可以通过 Tokio 并行和并发运行)。
- 甚至运行主事件循环的线程也不会阻塞,因为它也是异步的。
- 使用过程宏创建 DSL 来实现 CSS 和 JSX。
-
🌎 我们正在构建应用程序以提高开发者的生产力和工作流程。
- 这里的想法不是在 Rust 中重新构建 tmux(将多个进程复用到单个终端窗口)。而是构建一套集成的“应用程序”(或“任务”),它们在同一个进程中运行,并将渲染到单个终端窗口。
- 在这个终端窗口内部,我们可以实现诸如“app”切换、路由、平铺布局、堆叠布局等功能,以便我们能够管理大量在同一进程、同一窗口中运行的紧密集成的TUI(文本用户界面)应用程序。因此,您可以想象,所有这些“app”都共享应用程序状态(即在Redux存储中)。每个“app”也可能有自己的Redux存储。
- 以下是我们想要构建的“app”类型的一些示例
- 多用户带语法高亮的文本编辑器
- 与GitHub问题的集成
- 与日历、电子邮件、联系人API的集成
r3bl_rs_utils_macro
这个crate与上面描述的第一个内容相关。它提供了大量有用的功能来帮助您构建TUI(文本用户界面)应用程序,以及所有Rustaceans 🦀 都可以享受的通用优雅和人体工程学 🎉
宏
过程式
所有过程式宏都组织在3个crate中 使用内部或核心crate:公共crate、内部或核心crate和过程式宏crate。
style!宏
以下是一个