#!/usr/bin/env sh alias taskopen='taskopen -c ${XDG_CONFIG_HOME:-~/.config}/task/taskopenrc' # invoking t starts the task shell # passing arguments along passes them straight through to taskwarrior instead t() { # check for existence of tasksh before doing this whole song and dance if type tasksh >/dev/null 2>&1 && [ "$#" -eq 0 ]; then tasksh else task "$@" fi } # copy the `task` zsh completions over to my little alias 😉 # this is not very pretty and not super portable (needs ps) but # works for now. from here: https://unix.stackexchange.com/a/72564/414758 if [ "$(ps -p $$ -o comm --no-headers)" = "zsh" ]; then compdef t=task; fi