#!/usr/bin/env sh alias taskopen='taskopen -c ${XDG_DATA_HOME}/task/notes' # 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