scripts/rofi-task.sh

58 lines
1.6 KiB
Bash
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env sh
# From Kehet
## https://gist.github.com/Kehet/5ba8a530e52ea3a0ae251d756faef680
# Rofi colors
black="#000000"
blue="#0094cc"
is_task_running() { # {{{
if task active >/dev/null 2>&1; then
return_is_task_running="0"
else
return_is_task_running="1"
fi
return "${return_is_task_running:=/dev/null}"
}
# }}}
display_current_task() { # {{{
## Display active tasks list and get title from the choosen one
TITLE=$(task +ACTIVE export | jq -r 'sort_by( -.urgency )[] | [ (.id|tostring), .description ] | join(" ")' |
rofi -location 2 -lines 3 -no-auto-select -i -dmenu -p "RUNNING task(s)" -color-enabled -color-normal "${blue},${black},${blue},${black},${blue}" -color-window "${blue},${blue}" |
cut --delimiter=" " --field=2)
}
# }}}
select_task() { # {{{
## Display pending tasks list and get title from the choosen one
TITLE=$(task status:pending export | jq -r 'sort_by( -.urgency )[] | [ (.id|tostring), .description ] | join(" ")' |
rofi -location 2 -no-auto-select -i -dmenu -p "Task" -color-enabled -color-normal "${black},${blue},${black},${blue},${black}" -color-window "${black},${black}" |
cut --delimiter=" " --field=2)
[ -z "${TITLE}" ] && echo "Cancelled." && exit 0
## Start task with pomodorrior script (task end after 25minutes)
pomodorrior "${TITLE}" && exit 0
}
# }}}
main() { # {{{
is_task_running \
&& display_current_task \
&& exit 0
select_task \
&& exit 0
}
# }}}
main
exit 255