X-Git-Url: https://git.madduck.net/etc/taskwarrior.git/blobdiff_plain/385caf01793167d7087a1aec760edffb33a2d2a0..b2bea6a2530dc8ae41eb5120565406fb7317e3b5:/.bin/task_call diff --git a/.bin/task_call b/.bin/task_call new file mode 100755 index 0000000..9f43a67 --- /dev/null +++ b/.bin/task_call @@ -0,0 +1,42 @@ +#!/bin/sh +set -eu + +if [ $# != 1 ]; then + echo >&2 E: Need exactly one argument. + return 1 +fi + +TSK="$1" + +DATA="$(task _get "$TSK".data)" +DATATYPE="${DATA%%:*}" +DATAPAYL="${DATA#*:}" + +case "$DATATYPE" in + ('') + echo >&2 I: No link data available for this task. + task "$TSK" + ;; + + (msgid) + mutt -f =store -e "push '~i $DATAPAYL'" + ;; + + (url) + sensible-browser "$DATAPAYL" + ;; + + (file) + if eval test -f "$DATAPAYL"; then + case "$(file --mime-type "$DATAPAYL")" in + (*": text/"*) eval sensible-editor "$DATAPAYL";; + (*) eval run-mailcap --action=edit "$DATAPAYL";; + esac + fi + ;; + + (*) + eval run-mailcap --action=edit "$DATAPAYL" + ;; + +esac