: ' Changes:
Sat Feb 15 2025 Moved this from .bashrc
'
[ "$1" == "-D" ] && DEBUG=1 && shift 1
[ "$DEBUG" == 1 ] && echo "---Variables---" && set -x
PS4='$SECONDS $LINENO: '
DOW=$(date +%a)
TODAY=$(date +%m/%d)
DOM=$(date +%d)
OS=$(uname -s)
NAME=${0##*/}
DIR="$(basename $PWD)"
PDIR="$(cd ..;basename $PWD)"
TASKS="/home/mitch/etc/tasks.md"
R=$(tput setaf 1)
BR=$(tput setaf 1; tput bold)
G=$(tput setaf 2)
BG=$(tput setaf 2; tput bold)
Y=$(tput setaf 3)
BY=$(tput setaf 3; tput bold)
B=$(tput setaf 4)
BM=$(tput setaf 5; tput bold)
BC=$(tput setaf 6; tput bold)
C=$(tput setaf 6)
BL=$(tput setaf 7; tput bold)
BLD=$(tput bold)
N=$(tput sgr0)
SIT=$(tput sitm)
RIT=$(tput ritm)
UL=$(tput smul)
NL=$(tput rmul)
RV=$(tput rev)
ROWS=$(tput lines)
COLS=$(tput cols)
[ "$DEBUG" == 1 ] && set +x && read -p "${N}-Continue-" -n 1 x
bl(){
[ "$DEBUG" == "1" ] && set -x
echo ""
}
html(){
vim -f +"syn on" +"set nonu" +"set foldenable!" +"set nospell" +"run! syntax/2html.vim" +"wq" +"q" $1
}
log(){
[ "$DEBUG" == "1" ] && set -x
logger -i -t "$NAME" "$*"
}
pause(){
[ "$DEBUG" == "1" ] && set -x
[ "$1" == "-nt" ] && TMOUT="" && shift
echo "$BY";
if [ $# -gt 0 ]
then
read -t $1 -r -p "${C}Hit any key (${BY}$1${C} second timeout)${N}" -n 1 FOO;
else
read -r -p "${C}Hit any key${N}" -n 1 FOO;
fi;
bl
}
strip-tags(){
sed -e 's/<[^>]*.//g' -
}
xtitle(){
printf "\033]0;%s\007" "$*"
}
if [ "$1" == "-E" ]
then
vim $0
sed -i -e "7s/.*/# Updated....: $(date)/" $0
log "Updated $0"
html $0
cp $0 /var/www/unix
mv $0.html /var/www/unix
exit
fi
if [ "$1" == "-h" ] || [ "$1" == "--help" ]
then
fmt -s -w $(tput cols) <<END
${BG}$NAME${N}
Displays calender, tasks, and urls to look at.
${BC}Options{$}
{default} Shows everything
-c Edit ~/.calendar
-e Edit $TASKS
-t {string} Adds entry to task list
URL key words:${BY} check, read, watch, dl${N}
# alias task='today -t' in ~/.bashrc
i.e.
task "task out trash"
task read http://crn.hopto.org/bible/
END
exit
fi
command -v bash >/dev/null || sudo apt install bash -qyy
[ "$DEBUG" == 1 ] && echo "---Functions---" && typeset -F && read -p "${N}-Continue-" -n 1 x
[ "$DEBUG" == 1 ] && echo "---Main---" && set -x
case "$1" in
-c)
vim ~/.calendar/calendar
SHOW=y
;;
-t)
if [[ "$*" == *"http"* ]]
then
shift
echo "$*" >>$TASKS
else
shift
echo "- [ ] $*" >>$TASKS
fi
log "New task: $*"
SHOW=y
;;
-e)
vim $TASKS
SHOW=y
;;
*)
clear
if [ $(tput cols) -gt 92 ]
then
~/bin/now
else
center "⏰ ${BG}${UL}$(fclock)${N}"
echo "$BC"
cal -A 1
fi
echo -n "$BY"
calendar -f ~/.calendar/calendar -A 3 -w
[ $(calendar -f ~/.calendar/calendar -A 3| wc -l ) -gt 0 ] && bl
bl
if [ $(grep -cE '^-' "$TASKS") -gt 0 ]
then
echo "✅ ${BY}Tasks:${N}"
cat $TASKS|grep -vE 'URL|Enter:|http|https' |sort >/tmp/$$.md
bat -p /tmp/$$.md
echo ${N}
else
quote
fi
if [ $(grep -cE 'http|https' "$TASKS") -gt 0 ]
then
echo "🔗 ${BY}Links:${N}"
echo -n "$UL"
\grep -iE 'http|https' "$TASKS" |sed -e 's/^check/🔍/1' -e 's/^read/👓/1' -e 's/^watch/🎬/1' -e 's/^dl/⬇️/1'
echo ${N}
fi
esac
[ "$SHOW" == "y" ] && $0 || exit 0