diff --git a/TODO b/TODO index 09a1462..73d0898 100644 --- a/TODO +++ b/TODO @@ -1,8 +1,9 @@ -major ------ - - Add options to start and stop spt with only one process +1. Show remaining time to the next timer (using SIGUSR1) +2. Add #ifdef to make libnotify an optional dependency +3. Add more support for non-libnotify such as echo(1) +4. Pause and continue the timer -misc +Misc ---- $ grep -n 'TODO' spt.c diff --git a/config.def.h b/config.def.h index 32e3774..32ec45c 100644 --- a/config.def.h +++ b/config.def.h @@ -8,15 +8,15 @@ static char *notifyext = ""; /* Notify with extra command (eg. play an alarm) */ * This is the array which defines all the timer that will be used. * It will be repeated after all of it is executed. */ -static Timer timer[] = { - /* timer comment */ - { 1500, "Time to start working!"}, - { 300, "Time to start resting!"}, - { 1500, "Time to start working!"}, - { 300, "Time to start resting!"}, - { 1500, "Time to start working!"}, - { 300, "Time to start resting!"}, - { 1500, "Time to start working!"}, - { 300, "Time to start resting!"}, - { 900, "Time to take some nap!"}, +static Timers timers[] = { + /* timer(s) comment */ + { 1500, "Time to start working!"}, + { 300, "Time to start resting!"}, + { 1500, "Time to start working!"}, + { 300, "Time to start resting!"}, + { 1500, "Time to start working!"}, + { 300, "Time to start resting!"}, + { 1500, "Time to start working!"}, + { 300, "Time to start resting!"}, + { 900, "Time to take some nap!"}, }; diff --git a/spt.c b/spt.c index 40beaf4..b8ecd61 100644 --- a/spt.c +++ b/spt.c @@ -12,12 +12,12 @@ char *argv0; /* macros */ -#define LEN(a) (sizeof(a) / sizeof(a)[0]) +#define LEN(a) (sizeof(a) / sizeof(a[0])) typedef struct { unsigned int tmr; char *cmt; -} Timer; +} Timers; #include "config.h" @@ -102,9 +102,9 @@ main(int argc, char *argv[]) } ARGEND; run: - notify_send(timer[i].cmt); - sleep(timer[i].tmr); - i + 1 >= LEN(timer) ? i = 0 : i++; /* i infinal loop */ + notify_send(timers[i].cmt); + sleep(timers[i].tmr); + i + 1 >= LEN(timers) ? i = 0 : i++; /* i infinal loop */ goto run; return 0;