Sage is an easy-to-use command line timer that looks good and adheres to your human inclinations about the language of time.
Project description
Sage
Sage is an easy-to-use command line timer that looks good and adheres to your human inclinations about the language of time. Use natural language like "25m" or "1 hour 30 minutes" when running timers, or create preset timers that can be called with names like "pomodoro".
Sage integrated into a development workflow
Quick Start
- Install Sage:
pip install sage-timer
- Start a timer or stopwatch.
sage timer 35m # Start a 35-minute timer
sage timer pomodoro # Start pomodoro timer
sage timer pomodoro --paused # Load pomodoro timer, but don't start
sage stopwatch # Start a stopwatch
sage stopwatch --paused # Load stopwatch, but don't start
sage list # See all preset timers
Usage
Timer
sage timer accepts flexible, human-readable time formats that work however you naturally think about time:
sage timer 25m # 25 minutes
sage timer "10 minutes 30 seconds" # 10 minutes 30 seconds
sage timer 3min25s # 3 minutes 25 seconds
sage timer "1 hour 15m" # 1 hour 15 minutes
sage timer 2h30m45s # 2 hours 30 minutes 45 seconds
Let Timer Complete Quietly
Use the --quiet flag to let the timer complete without a sound.
sage timer 7m --quiet
Timer Controls
Once running, control your timer with simple keystrokes:
- Space - Pause and resume
- Enter - Increment counter
- Q - Quit
Custom Timers
Create custom timers and run them with sage timer.
sage create workout 1hr # Create 1 hour workout timer
sage timer workout # Start workout timer
Managing Custom Timers
Custom timers are managed with the following commands:
sage list # List all available timers
sage create <name> <duration> # Create a new timer
sage update <name> <duration> # Update existing timer
sage rename <name> <new_name> # Rename a timer
sage delete <name> # Delete a timer
Example Usage
sage create workout 45m # Create 45 minute workout timer
sage update workout 1hr # Update workout timer to 1 hour
sage rename workout yoga # Rename workout timer name to yoga
sage timer yoga # Start 1 hour yoga timer
sage delete yoga # Delete yoga timer
All timer commands accept the same flexible time formats as the main timer.
Stopwatch
For timing activities with unknown duration:
sage stopwatch # Start a stopwatch immediately
Stopwatch Controls
- Space - Pause and resume
- Enter - Increment counter
- Q - Quit
Counter
Both timer and stopwatch include a counter which can be used to track
laps, counts, reps, etc. Just press Enter to increment.
Load A Clock Without Starting
Both timer and stopwatch can load in a paused state with the
--paused flag. Once a clock is loaded, press Space to start.
sage timer 25m --paused # Load timer in paused state
sage stopwatch --paused # Load stopwatch in paused state
License
MIT License - see LICENSE file for details.
Contributing
Contributions welcome! Please feel free to submit issues and pull requests.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sage_timer-0.1.0.tar.gz.
File metadata
- Download URL: sage_timer-0.1.0.tar.gz
- Upload date:
- Size: 1.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b020b1238f77533108e20a350d7ab5ce1a50ceb327ddbab283f7770fae2f58b5
|
|
| MD5 |
682d97d5f6fe6acdca14ab7dafdc73b6
|
|
| BLAKE2b-256 |
3bacffcfb79f7ac7a34a200faaec5f5e57d7d76f98073dcb1375a92ca2326b2d
|
File details
Details for the file sage_timer-0.1.0-py3-none-any.whl.
File metadata
- Download URL: sage_timer-0.1.0-py3-none-any.whl
- Upload date:
- Size: 72.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.17
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1df58bf44d47abc03a6bd92493037ee058d1398d4172e25e646ea2636323ee28
|
|
| MD5 |
d943c00729737964b4eb0ae6419e3b98
|
|
| BLAKE2b-256 |
c2275a7594b53d2a66c6b4e11265b8bdd292ca8e2c95586f04917325f205894e
|