5 releases (stable)

1.0.4 Nov 14, 2021
1.0.0 Apr 20, 2021
0.1.3 Apr 19, 2021

#29 in Date and time

GPL-3.0-only

155KB
372 lines

zman

Sponsor me

demo


zman is a CLI year (time) progress that small, fast, and just one single binary.

Features

  • Show year progress
  • Show month, and week progress
  • Show result in JSON format
  • Cross-platform

Usage Examples

zman                                Show a year progress bar
zman month                          ... a month progress bar
zman week                           ... a week progress bar
zman year --json                    ... a year progress bar with JSON format

Command-line options

USAGE:
    zman [FLAGS] [OPTIONS] [time]

ARGS:
    <time>    A time to show [default: year]

FLAGS:
    -h, --help       Prints help information
    -J, --json       Display progress in JSON formatted string
    -V, --version    Prints version information

OPTIONS:
    -f, --full-bar <full_bar>    Set full bar icon [default: ▓]
    -r, --rest-bar <rest_bar>    Set rest bar icon [default: ░]
    -d, --width <width>          Adjust width of the bar (default: 20)

Usage with other tools

You can use Zman with i3status-rust to show salah time in your status bar.

i3status-rust-zman

i3status-rust configuration Example:

[[block]]
block = "custom"
cycle = ["zman year -J", "zman month -J"]
on_click = "<command>"
interval = 300
json = true

See more examples to learn other variations.

If you like zman to support your favourite status-bar, please hit me in the [mailing-list][mailing-list] with the valid input of your status-bar. In i3status-rust the valid input it would be {"icon": "ICON", "state": "STATE", "text": "YOURTEXT"}.

Installation

From binaries

The release page includes pre-compiled binaries for GNU/Linux, macOS and Windows.

From source

Using Rust's package manager cargo:

cargo install zman

Development

git clone https://git.sr.ht/~azzamsa/zman
cd zman

# Run unit tests and integration tests
cargo test

# Install
cargo install --path .

Contributing

To learn more read contributing.md

Origin of the name

Zman is a 'time' in Arabic/Turksih.

Inspired By

Please check out this previous work that helped inspire the creation of zman.

License

Copyright (c) 2020 Azzamsa

Zman is distributed under the terms of GPL V3 License.

Dependencies

~2MB
~27K SLoC

da