From 0ef567e0af310a906fedede267c1d03d7bba63fa Mon Sep 17 00:00:00 2001 From: "martin f. krafft" Date: Wed, 1 May 2019 21:46:28 +1200 Subject: [PATCH] let tasks be selected even if they are not $1 --- .zsh/zshrc/parts.d/50-taskwarrior | 41 ++++++++++++++++++++----------- 1 file changed, 27 insertions(+), 14 deletions(-) diff --git a/.zsh/zshrc/parts.d/50-taskwarrior b/.zsh/zshrc/parts.d/50-taskwarrior index f880ed9..abcd09c 100644 --- a/.zsh/zshrc/parts.d/50-taskwarrior +++ b/.zsh/zshrc/parts.d/50-taskwarrior @@ -9,21 +9,34 @@ if whence task >/dev/null; then - function t() { task "$@"; } + function task_() { + local spec cmd args nospec=0 + cmd="$1"; shift + [[ "$cmd" = add ]] && nospec=1 + for i in "$@"; do + case "$nospec@$i" in + (0@<->) :;& + (0@/*/) spec="${spec:+$spec }$i";; + (*) args="${args:+$args }$i";; + esac + done + eval task $spec $cmd $args + } - alias t\?='alias -rm t[-+a-z]' - alias ta='t add' - alias tc='t call' - alias th='t attach' - alias tl='t all' - alias ty='t rc.recurrence=on next && task sync' - alias td='t done' - alias te='t edit' - alias tu='t undo' - alias tm='t modify' - alias ts='t start' - alias tw='t waiting' - alias t+='t annotate' + alias t\?='alias -rm t t[-+a-z] | sed s,_,,' + alias ta='task_ add' + alias tc='task_ call' + alias th='task_ attach' + alias tl='task_ all' + alias ty='task_ next rc.recurrence=on >/dev/null && _mytask sync' + alias td='task_ done' + alias te='task_ edit' + alias tu='task_ undo' + alias tm='task_ modify' + alias ts='task_ start' + alias tw='task_ waiting' + alias t+='task_ annotate' + alias t='task_ ""' run_at_most_every 5m \ t 2>/dev/null || : -- 2.39.5