41 lines
1.1 KiB
Markdown
41 lines
1.1 KiB
Markdown
# zpinner
|
|
|
|
Nice zpinner in the terminal for zig.
|
|
|
|
## Usage
|
|
```zig
|
|
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", .{});
|
|
}
|
|
```
|
|
|
|
|