Bash

A CLI Timer to save your soul

This is how I time my workblocks these days…

Prerequisites

Functions

single_beep() {
( \speaker-test --frequency $1 --test sine )&
pid=$!
\sleep  0.${2}s
\kill -9 $pid
}

morse(){
for i in {1..3};
do
        single_beep 400 $1
        \sleep 0.${2}s
done
}

sos() {
    morse 200 500
    morse 400 500
    morse 200 500
}

timer() {
    \sleep $1 && sos &
}

Usage

The above can be sourced in your shell rc.
I store it in a .bash_funcs where I have all my functions and source them in the end of my rc as source ~/.bash_funcs.