The utility for repeatedly displaying notifications in the standard OS way.
- support for several different tasks for displaying notifications:
- for each task:
- support for displaying a task name:
- automatic generation of a task name, if it was not specified (optionally);
- add a sequential number to duplicated task names (optionally);
- support for displaying an icon for each notification:
- an icon can be specified for:
- a notification;
- a task;
- the entire config;
- for each notification, the first specified icon is selected in the order above;
- an icon can be specified for:
- use for displaying notifications on a schedule:
- the cron specification:
- support for seconds in the cron specification (optionally);
- a delay relative to the last displaying:
- use the format of the
time.ParseDuration()
function;
- use the format of the
- the cron specification:
- random selection of a notification for displaying;
- support for the Spintax format in notifications;
- support for displaying a task name:
- for each task:
- support for variable substitution in notifications:
- use the format of the
os.Expand()
function; - use one common list of variables to substitute in all notifications of all tasks;
- use the format of the
- built-in support for running in the background:
- the console command for starting and restarting;
- the console command for stopping;
- the console command for checking of the current running status.
$ go install github.com/thewizardplusplus/motivator@latest
$ motivator -h | --help
$ motivator start [-c PATH | --config PATH]
$ motivator status
$ motivator stop
$ motivator foreground [-c PATH | --config PATH]
Commands:
start
— start (or restart) displaying notifications in the background;status
— check that notifications are being display in the background;stop
— stop displaying notifications in the background;foreground
— start displaying notifications in the foreground.
Options:
-h
,--help
— show the context-sensitive help;-c PATH
,--config PATH
— the path to a config file (default:config.json
).
Environment variables:
NO_COLOR
— disable colorful output (applies only to thestatus
command).
Format of the config in the JSON Schema format: docs/config.schema.json.
Example of the config: docs/config.example.json.
The MIT License (MIT)
Copyright © 2022 thewizardplusplus