Nice zpinner in the terminal made in zig.
src | ||
.gitignore | ||
build.zig | ||
build.zig.zon | ||
LICENSE | ||
README.md |
zpinner
Nice zpinner in the terminal for zig.
Usage
const std = @import("std");
const zpinner = @import("zpinner.zig");
pub fn main() !void {
const stdout_file = std.io.getStdOut().writer();
var zpin = zpinner.new(stdout_file.any(), .{});
zpin.set_indicator(zpinner.Moon);
zpin.set_suffix(" calculating route to the moon");
try zpin.start();
std.time.sleep(5 * std.time.ns_per_s);
try zpin.stop();
zpin.set_suffix(" counting snakes");
zpin.set_indicator(zpinner.Snake);
try zpin.start();
std.time.sleep(5 * std.time.ns_per_s);
zpin.set_indicator(zpinner.Earth);
zpin.set_suffix(" calculating route back to earth");
std.time.sleep(5 * std.time.ns_per_s);
try zpin.stop();
zpin.set_suffix(" calculating next week weather");
zpin.set_indicator(zpinner.Weather);
try zpin.start();
std.time.sleep(5 * std.time.ns_per_s);
try zpin.stop();
zpin.set_suffix(" ZzZzz...");
zpin.set_indicator(zpinner.Clock);
try zpin.start();
std.time.sleep(5 * std.time.ns_per_s);
try zpin.stop();
try stdout_file.print("work done\n", .{});
}