47 lines
824 B
Text
47 lines
824 B
Text
function __tas_task_idx() {
|
|
echo "$@" | sed 's/^[> ] \([0-9]\+\)\..\+$/\1/'
|
|
}
|
|
|
|
function __tas_show() {
|
|
tas show $(__tas_task_idx "$1")
|
|
}
|
|
|
|
function __tas_start() {
|
|
if [[ "$1" != "" ]]; then
|
|
tas start $(__tas_task_idx "$1")
|
|
fi
|
|
}
|
|
|
|
function __tas_remove() {
|
|
if [[ "$1" != "" ]]; then
|
|
tas remove $(__tas_task_idx "$1")
|
|
fi
|
|
}
|
|
|
|
function __tas_list() {
|
|
tas list | fzf \
|
|
--info=inline --height=50% --no-sort --keep-right --layout=reverse \
|
|
--preview="tas show \$(sed 's/^[> ] \\([0-9]\\+\\)\\..\\+$/\\1/' {+f})"
|
|
}
|
|
|
|
function taz() {
|
|
case $1 in
|
|
"" | "show" | "sh")
|
|
__tas_show "$(__tas_list)"
|
|
;;
|
|
|
|
"list" | "ls")
|
|
__tas_list
|
|
;;
|
|
|
|
"start" | "st")
|
|
__tas_start "$(__tas_list)"
|
|
;;
|
|
|
|
"remove" | "rm")
|
|
__tas_remove "$(__tas_list)"
|
|
;;
|
|
|
|
esac
|
|
}
|
|
|