diff options
Diffstat (limited to 'timer.1')
| -rw-r--r-- | timer.1 | 55 |
1 files changed, 55 insertions, 0 deletions
@@ -315,6 +315,61 @@ Hooks are executed with so a script needs a .B #! line like any other. +.SS Running hooks selectively +A hook is either installed or not; there is no per\-run flag. Ad\-hoc +behaviour is arranged inside the hook instead, which sees two things it +can decide on: it inherits the environment +.B timer +was run with, and it is handed the +.B \-c +comment as +.BR $3 . +.PP +Gate on an environment variable, for an explicit opt\-in: +.PP +.RS +.nf +[ \-n "$TTYM_FOCUS" ] || exit 0 +.fi +.RE +.PP +.RS +.nf +timer 25m # hook does nothing +TTYM_FOCUS=1 timer 25m # hook acts +.fi +.RE +.PP +Gate on a tag in the comment, which costs nothing extra if you already +pass +.B \-c +and leaves the tag visible to +.BR "timer \-\-stats" : +.PP +.RS +.nf +case $3 in *+focus*) ;; *) exit 0 ;; esac +.fi +.RE +.PP +Or gate on the session itself, so nothing has to be remembered \(em here, +countdowns of ten minutes or more: +.PP +.RS +.nf +[ "$1" = countdown ] && [ "$2" \-ge 600 ] || exit 0 +.fi +.RE +.PP +Put the gate on +.B on_start +only. A hook that undoes something \(em restoring notifications, resuming +music \(em must run unconditionally in +.B on_done +and +.BR on_quit , +or a session that ends without the gate being set leaves the change in +place. Restore paths are harmless when there was nothing to restore. .SS Examples Three commented, working examples ship with the source and are installed to |
