Created
April 27, 2017 06:56
-
-
Save pjf/051aa4ef326d493beec950823f7edfd8 to your computer and use it in GitHub Desktop.
pjf's shell prompt with taskwarrior and git
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Reset | |
Color_Off='\[\e[0m\]' # Text Reset | |
# Regular Colors | |
Black='\[\e[0;30m\]' # Black | |
Red='\[\e[0;31m\]' # Red | |
Green='\[\e[0;32m\]' # Green | |
Yellow='\[\e[0;33m\]' # Yellow | |
Blue='\[\e[0;34m\]' # Blue | |
Purple='\[\e[0;35m\]' # Purple | |
Cyan='\[\e[0;36m\]' # Cyan | |
White='\[\e[0;37m\]' # White | |
# Bold | |
BBlack='\[\e[1;30m\]' # Black | |
BRed='\[\e[1;31m\]' # Red | |
BGreen='\[\e[1;32m\]' # Green | |
BYellow='\[\e[1;33m\]' # Yellow | |
BBlue='\[\e[1;34m\]' # Blue | |
BPurple='\[\e[1;35m\]' # Purple | |
BCyan='\[\e[1;36m\]' # Cyan | |
BWhite='\[\e[1;37m\]' # White | |
# Underline | |
UBlack='\[\e[4;30m\]' # Black | |
URed='\[\e[4;31m\]' # Red | |
UGreen='\[\e[4;32m\]' # Green | |
UYellow='\[\e[4;33m\]' # Yellow | |
UBlue='\[\e[4;34m\]' # Blue | |
UPurple='\[\e[4;35m\]' # Purple | |
UCyan='\[\e[4;36m\]' # Cyan | |
UWhite='\[\e[4;37m\]' # White | |
# Background | |
On_Black='\[\e[40m\]' # Black | |
On_Red='\[\e[41m\]' # Red | |
On_Green='\[\e[42m\]' # Green | |
On_Yellow='\[\e[43m\]' # Yellow | |
On_Blue='\[\e[44m\]' # Blue | |
On_Purple='\[\e[45m\]' # Purple | |
On_Cyan='\[\e[46m\]' # Cyan | |
On_White='\[\e[47m\]' # White | |
# High Intensity | |
IBlack='\[\e[0;90m\]' # Black | |
IRed='\[\e[0;91m\]' # Red | |
IGreen='\[\e[0;92m\]' # Green | |
IYellow='\[\e[0;93m\]' # Yellow | |
IBlue='\[\e[0;94m\]' # Blue | |
IPurple='\[\e[0;95m\]' # Purple | |
ICyan='\[\e[0;96m\]' # Cyan | |
IWhite='\[\e[0;97m\]' # White | |
# Bold High Intensity | |
BIBlack='\[\e[1;90m\]' # Black | |
BIRed='\[\e[1;91m\]' # Red | |
BIGreen='\[\e[1;92m\]' # Green | |
BIYellow='\[\e[1;93m\]' # Yellow | |
BIBlue='\[\e[1;94m\]' # Blue | |
BIPurple='\[\e[1;95m\]' # Purple | |
BICyan='\[\e[1;96m\]' # Cyan | |
BIWhite='\[\e[1;97m\]' # White | |
# High Intensity backgrounds | |
On_IBlack='\[\e[0;100m\]' # Black | |
On_IRed='\[\e[0;101m\]' # Red | |
On_IGreen='\[\e[0;102m\]' # Green | |
On_IYellow='\[\e[0;103m\]' # Yellow | |
On_IBlue='\[\e[0;104m\]' # Blue | |
On_IPurple='\[\e[0;105m\]' # Purple | |
On_ICyan='\[\e[0;106m\]' # Cyan | |
On_IWhite='\[\e[0;107m\]' # White |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Make our prompt awesome. :) | |
source ~/.bash_colours | |
TICK="✓" | |
CROSS="✗" | |
URGENT="❗" | |
OVERDUE="☠️" | |
DUETODAY="😱" | |
DUETOMORROW="📅" | |
function task_indicator { | |
if [ `task +READY +OVERDUE count` -gt "0" ]; then | |
echo "$OVERDUE" | |
elif [ `task +READY +DUETODAY count` -gt "0" ]; then | |
echo "$DUETODAY" | |
elif [ `task +READY +DUETOMORROW count` -gt "0" ]; then | |
echo "$DUETOMORROW" | |
elif [ `task +READY urgency \> 10 count` -gt "0" ]; then | |
echo "$URGENT" | |
else | |
echo '$' | |
fi | |
} | |
PS1="\[\e]0;\u@\h: \w\a\]"'$(BRANCH=`git rev-parse --abbrev-ref HEAD 2> /dev/null`; if [ -n "$BRANCH" ]; then DIRTY=`git status --porcelain --untracked-files=no 2> /dev/null`; if [ -n "$DIRTY" ]; then echo "'$BRed'$CROSS "; else echo "'$BGreen'$TICK "; fi; fi;)'"$Color_Off${debian_chroot:+($debian_chroot)}\w$BYellow\$(__git_ps1)\$(task_indicator) $Color_Off" |
@pjf Since tasks are definied with time 00:00:00 by default, task +READY +TODAY count
and task +READY +OVERDUE count
end up becoming synonyms, no?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@brianmay, that's correct I just check it out, there is no +DUETOMORROW