#animation #console #tty #terminal

ttycarousel

Rust 的控制台动画

5 个版本

0.1.4 2022年4月21日
0.1.3 2022年4月21日
0.1.2 2022年4月21日
0.1.1 2022年4月21日
0.1.0 2022年4月21日

#465 in 命令行界面

Apache-2.0

2MB
265

ttycarousel - Rust 的控制台动画

此包提供简单的控制台旋转动画,以确保您的用户不会感到无聊,并认为程序已经停止。

包:https://crates.io/crates/ttycarousel

同步程序

添加到 Cargo.toml

[dependencies]
ttycarousel = { version = "*", features = ["sync"] }

简单

use std::time::Duration;

ttycarousel::spawn0("working");
std::thread::sleep(Duration::from_secs(2));
ttycarousel::stop();
println!("work completed!");

带选项

use std::time::Duration;

ttycarousel::spawn(
    "working",
    ttycarousel::Options::new()
        .speed(50)
        .color(ttycarousel::Color::Yellow)
        .bold(),
);
std::thread::sleep(Duration::from_secs(2));
ttycarousel::stop();

异步(Tokio)

添加到 Cargo.toml

[dependencies]
ttycarousel = { version = "*", features = ["tokio1"] }

异步示例

use std::time::Duration;

async fn task1() {
    ttycarousel::tokio1::spawn(
        "working",
        ttycarousel::Options::new()
            .speed(50)
            .color(ttycarousel::Color::Yellow)
            .bold(),
    ).await;
    //ttycarousel::tokio1::spawn0("working").await; // with defaults
    tokio::time::sleep(Duration::from_secs(2)).await;
    ttycarousel::tokio1::stop().await;
    println!("work completed!");
}

附言。

是的,我没事可做。

依赖项