Compare commits

...

3 Commits

5 changed files with 45 additions and 13 deletions

View File

@ -67,7 +67,7 @@ add_path() {
###
__dotlib_load_libraries() {
local os dot dots
local os dot{,s}
case $OSTYPE in
darwin*)

View File

@ -0,0 +1,32 @@
calendar-determine-holiday() {
local month day
read -r month day < <(date "+%m %d")
if (( 10#$month == 3 && 10#$day < 18 )); then
if (( 17 - 10#$day == 0 )); then
printf "Happy Saint Patrick's day!\n"
else
printf "Only %d days left until Saint Patrick's day!\n" "$(( 17 - 10#$day ))"
fi
PS1_prompt_sym=🍀
elif (( 10#$month == 10 )); then
if (( 31 - 10#$day == 0 )); then
printf 'Have a spooky halloween!\n'
else
printf 'Only %d days left until Halloween!\n' "$(( 31 - 10#$day ))"
fi
PS1_prompt_sym=🎃
elif (( 10#$month == 12 && 10#$day < 26 )); then
if (( 25 - 10#$day == 0 )); then
printf 'Merry Christmas!\n'
else
printf 'Only %d days left until Christmas!\n' "$(( 25 - 10#$day ))"
fi
PS1_prompt_sym=🌲
fi
}
calendar-determine-holiday

View File

@ -1,12 +1,12 @@
reset-elapsed() {
cattle-reset-elapsed() {
(( last_cmd_at = SECONDS ))
}
ping-timer() {
cattle-ping-timer() {
kill -USR1 "$reaper_pid"
}
slay-reaper() {
cattle-slay-reaper() {
kill -KILL "$reaper_pid"
}
@ -17,7 +17,7 @@ cd() {
{
trap "" INT
trap reset-elapsed USR1
trap cattle-reset-elapsed USR1
last_cmd_at=0
while sleep 1; do
@ -30,8 +30,8 @@ cd() {
done
} &
reaper_pid=$! PROMPT_COMMAND+=(ping-timer)
trap slay-reaper EXIT
reaper_pid=$! PROMPT_COMMAND+=(cattle-ping-timer)
trap cattle-slay-reaper EXIT
if [[ -f /tmp/iterm2-prev-dir.txt ]]; then
cur_time=$(date +%s)

View File

@ -1,12 +1,12 @@
_ssh_hosts() {
tab-ssh-hosts() {
mapfile -t hosts < <(awk 'tolower($1) == "host" { print $2 }' ~/.ssh/config)
mapfile -t COMPREPLY < <(compgen -W "${hosts[*]}" -- "${COMP_WORDS[COMP_CWORD]}")
return 0
}
complete -o default -F _ssh_hosts ssh scp ssh-copy-id sftp
complete -o default -F tah-ssh-hosts ssh scp ssh-copy-id sftp
_make_targets() {
tab-make-targets() {
local arg prev file targets
if [[ -f makefile ]]; then
@ -34,4 +34,4 @@ _make_targets() {
)
}
complete -o default -F _make_targets make gmake
complete -o default -F tab-make-targets make gmake

View File

@ -1,4 +1,4 @@
setup-prompt() {
prompt-init() {
local last_res=$? color=$PS1_color_success
PS1="\w "
@ -17,7 +17,7 @@ setup-prompt() {
PS1+="\[$color\][$last_res]\[$PS1_color_reset\] $PS1_prompt_sym "
}
PROMPT_COMMAND+=(setup-prompt)
PROMPT_COMMAND+=(prompt-init)
PS1_prompt_sym=λ
PS1_hostname=${HOSTNAME-"$(hostname)"}