#tui #ui #终端

semtext

终端用户界面库

1 个不稳定版本

0.1.0 2022 年 6 月 1 日

#667 in #tui

MIT/Apache

105KB
2.5K SLoC

Semtext 是一个用于构建文本用户界面(TUI)的 Rust 库。


lib.rs:

Semtext 是一个用于构建文本用户界面(TUI)的 Rust 库。

示例

use semtext::{grid_area, input::Action, widget::Label, Screen, Widget};

async fn async_main() -> Result<(), Box<dyn std::error::Error>> {
    let mut screen = Screen::new()?;
    let a = Label::new("Hello!").into_button();
    let grid = grid_area!(
        [. . .]
        [. a .]
        [. . .]
    )?;
    while screen.step(&grid).await? != Action::Quit() {}
    Ok(())
}

fn main() -> Result<(), Box<dyn std::error::Error>> {
    futures::executor::block_on(async_main())
}

依赖项

~2–12MB
~85K SLoC