X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=home%2Flib%2Flogin_functions.sh;h=b84f30313ede75c998908527bc044fc9b7c6a78d;hb=d93397a615fd54f1080a4ca5941c410dcca6a9f1;hp=cac982eccdc6930714e5472e5bfbbd18679c0fbe;hpb=957b0d4f7a8123589fde8867205ce812ddacd0ed;p=khome.git diff --git a/home/lib/login_functions.sh b/home/lib/login_functions.sh index cac982e..b84f303 100644 --- a/home/lib/login_functions.sh +++ b/home/lib/login_functions.sh @@ -7,7 +7,6 @@ d() { shell_activity_report() { # TODO: optional concrete number output - # TODO: manual weekday calc (since forking date is so expensive) # TODO: optional combinations of granularities: hour, weekday, month, year local group_by="$1" case "$group_by" in @@ -16,7 +15,7 @@ shell_activity_report() { '') group_by='dow';; *) echo "Usage: $0 [mon|dow]" >&2 - exit 1 + kill -INT $$ esac history \ | awk -v group_by="$group_by" ' @@ -141,8 +140,8 @@ top_commands() { # TODO: Consider using numfmt instead of awk tdu() { du "$1" \ - | sort -n -k 1 -r \ - | head -50 \ + | sort -n -k 1 \ + | tail -50 \ | awk ' { size = $1 @@ -157,8 +156,8 @@ tdu() { # Top Disk-Using Files tduf() { find "$1" -type f -printf '%s\t%p\0' \ - | sort -z -n -k 1 -r \ - | head -z -n 50 \ + | sort -z -n -k 1 \ + | tail -z -n 50 \ | gawk -v RS='\0' ' { size = $1 @@ -207,17 +206,27 @@ void_pkgs() { # Colorful man man() { - LESS_TERMCAP_md=$'\e[01;31m' \ + # mb: begin blink + # md: begin bold + # me: end bold, blink and underline + # + # so: begin standout (reverse video) + # se: end standout + # + # us: begin underline + # ue: end underline + + LESS_TERMCAP_md=$'\e[01;30m' \ LESS_TERMCAP_me=$'\e[0m' \ - LESS_TERMCAP_se=$'\e[0m' \ LESS_TERMCAP_so=$'\e[01;44;33m' \ + LESS_TERMCAP_se=$'\e[0m' \ + LESS_TERMCAP_us=$'\e[01;33m' \ LESS_TERMCAP_ue=$'\e[0m' \ - LESS_TERMCAP_us=$'\e[01;32m' \ command man "$@" } experiment() { - cd "$(~/bin/experiment $@)" || exit 1 + cd "$(~/bin/experiment $@)" || kill -INT $$ } hump() { @@ -240,7 +249,7 @@ yt() { _yt_dir="${DIR_YOUTUBE}/individual-videos/${_yt_title}--${_yt_id}" mkdir -p "$_yt_dir" - cd "$_yt_dir" || exit 1 + cd "$_yt_dir" || kill -INT $$ echo "$_yt_uri" > 'uri' youtube-dl -c --write-description --write-info-json "$_yt_uri" } @@ -254,7 +263,7 @@ gh_clone() { gh_user_name="$2" gh_dir="${DIR_GITHUB}/${gh_user_name}" mkdir -p "$gh_dir" - cd "$gh_dir" || exit 1 + cd "$gh_dir" || kill -INT $$ gh_fetch_repos "$gh_user_type" "$gh_user_name" \ | jq --raw-output '.[] | select(.fork | not) | .git_url' \ | parallel -j 25 \ @@ -273,7 +282,7 @@ gh_clone_repo() { gh_username=$(echo "$1" | awk -F / '"$1 == "https" && $3 == github.com" {print $4}') gh_dir="${DIR_GITHUB}/${gh_username}" mkdir -p "$gh_dir" - cd "$gh_dir" || exit 1 + cd "$gh_dir" || kill -INT $$ git clone "$1" } @@ -313,7 +322,12 @@ note() { } weather() { - curl "http://wttr.in/$WEATHER_LOCATION" + local _weather_location + case "$1" in + '') _weather_location="$WEATHER_LOCATION";; + *) _weather_location="$1" + esac + curl "http://wttr.in/$_weather_location" } bt_devs_paired() {