16 releases (5 breaking)

0.7.6 Dec 20, 2023
0.7.3 Nov 30, 2023
0.5.3 May 16, 2023
0.2.0 Mar 31, 2023

#122 in Date and time

MIT license

64KB
592 lines

timepiece (tp)

Your command-line Rolex

Features:

  • Get the current time (tp time), date (tp date), or both (tp now)

    • Keep getting it with tp clock
    • Stop with Escape or Q
    • Lap with Enter or Space
  • Start a stopwatch (tp stopwatch)

    • Stop with Escape or Q
    • Lap with Enter, Space, or L
    • If piped (e.g. sleep 5 | tp stopwatch), times process while relaying stdin
  • Set a timer (tp timer [[[hours:]minutes:]seconds])

    • Cancel with Escape or Q
    • Pause/unpause with Enter or Space
    • Add 5 seconds with Right or A
    • Remove 5 seconds with Left or D
    • Rings using the BEL character
  • Set an alarm (tp alarm hour:minute:second AM|PM)

    • Cancel with Escape or Q
    • Rings using the BEL character
  • Enable desktop notifications with feature flag notify, for:

    • Timers
    • Alarms
    • Piped stopwatches

Installation

The best way to install, if you have cargo installed, is through that:

$ cargo install timepiece # add `--features notify` if you want desktop notifs

Non-features:

  • Background/invisible timers/alarms (make a shim, possibly)
    • This is because there don't seem to be any cross-platform fork libraries
  • Configuration of any sort (edit the source, not to sound like suckless)

If you want this name on crates.io, contact me!

Dependencies

~2–29MB
~416K SLoC