๐
Implementation of the Pomodoro Technique using figlet(6)
,
cowsay(1)
, and optionally lolcat
๐ฎ
Personal version to work together with dwmblocks display for daily minutes. Also removes cowsay during the timer. See https://github.com/AlexBocken/dotfiles/blob/master/.local/bin/statusbar/getpomminutes for my bodged implementation of this statusbar feature. (It's ugly, I know) If you want to use this script for yourself I recommend using the original author's version as mine is quite specific to my use case.
- Sends desktop notifications.
- Can't stop. SIGTSTP (Ctrl-Z) is trapped. Pomodoros are uninterruptible.
- Traps SIGINT to make Ctrl-C abandon pomodoros.
- Silly mode (or is it stern?) is enabled with
-s
(can be specified multiple times). - Avoids using
clear
so the terminal doesn't flash. - Hides the cursor.
- Disables echoing of stdin.
- Keeps the cow at the bottom of your terminal.
- Prints some stats when exiting: when pomodoros started and ended and the length of breaks (can be redirected to a file).
- Seconds are very slightly longer than customary (subject to the speed of your computer; maybe adds 10 seconds to a 25 minute pomodoro).
- Two pomodoro timers possible, second one can be used via setting
$2
tof
(for freetime in this case) - Easily able to display time in your statusbar
- Added small scripts for easy execution of timer with a log-file
adapt the install path in the Makefile
to your liking and run
make install
Put muccadoro
inside some directory in your PATH
, e.g. ~/bin/
(or ~/.local/bin/
):
curl -fLo ~/bin/muccadoro https://raw.githubusercontent.com/AlexBocken/muccadoro/master/muccadoro
I recommend creating an alias such as
alias pomo='muccadoro | tee -ai ~/pomodoros.txt'
This has been implemented in the two executable scripts pom
and pomft
. You can adjust
the saving location for those logs in those scripts if you want to use them. (By default
they can be found at ~/.local/bin
.)
See "Saving summaries to a file" for details.
The first positional argument is the amount of minutes one pomodoro should take (default:
25). If you want 20-minute pomodoros, use muccadoro 20
, for example. The program exits
after four pomodoros have been completed and a longer break should be taken.
If two positional arguments are given, if the second argument is f
it executes the
script as a productive free time pomodoro. This results in a different tempfile if you
want to display your cummuluative time for finished pomodoros before everything get's
saved to the specified log file. See my getpomminutes
and getpomftminutes
in
dotfiles if you want to understand the
usefulness of this second flag further.
You may want to keep a record of how many pomodoros you did and when (and for how long) you took breaks. This is supported by simply redirecting stdout:
muccadoro >> ~/pomodoros.txt
If you want to save the summary but also have it printed to stdout, use:
muccadoro | tee -ai ~/pomodoros.txt
The -i
(--ignore-interrupts
) flag of tee
makes sure the summary is correctly
processed in case the pipeline was killed with Ctrl-C (which is the
intended way to quit when doing less than four pomodoros).