X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=lib%2Flogin_functions.sh;h=c4dcb53712896df8d295757af99f22da978ad6b7;hb=d754ba4236be9da61c882194bb89581d812e569b;hp=c67de2e59e6f88bebe7accac1c6007fbcca73142;hpb=64ec9f23047545432f759e543184b4271e3aad22;p=khome.git diff --git a/lib/login_functions.sh b/lib/login_functions.sh index c67de2e..c4dcb53 100644 --- a/lib/login_functions.sh +++ b/lib/login_functions.sh @@ -1,4 +1,5 @@ # Top Disk-Using directories +# TODO: Consider using numfmt instead of awk tdu() { du "$1" \ | sort -n -k 1 -r --parallel="$(nproc)" \ @@ -34,5 +35,78 @@ man() { } experiment() { - cd "$($HOME/bin/experiment $@)" + cd "$($HOME/bin/experiment $@)" || exit 1 +} + +hump() { + ledit -l $(stty size | awk '{print $2}') ocaml $@ +} + +howto() { + cat $(ls -1 -d $HOME/Archives/Documents/HOWTOs/* | fzf) +} + +gh_fetch_repos() { + curl "https://api.github.com/$1/$2/repos?page=1&per_page=10000" +} + +gh_clone() { + gh_fetch_repos "$1" "$2" \ + | jq --raw-output '.[] | select(.fork | not) | .git_url' \ + | parallel -j 25 \ + git clone {} +} + +gh_clone_user() { + gh_clone 'users' "$1" +} + +gh_clone_org() { + gh_clone 'orgs' "$1" +} + +work_log_template() { +cat << EOF +$(date +%F) +========== + +Morning report +-------------- + +### Previous + +### Current + +### Blockers + +Day's notes +----------- +EOF +} + +work_log() { + mkdir -p "$DIR_WORK_LOG" + file_work_log_today="${DIR_WORK_LOG}/$(date +%F).md" + if [ ! -f "$file_work_log_today" ] + then + work_log_template > "$file_work_log_today" + fi + vim "$file_work_log_today" + +} + +weather() { + curl "http://wttr.in/$WEATHER_LOCATION" +} + +bt_devs_paired() { + bluetoothctl -- paired-devices \ + | awk '{print $2}' \ + | xargs bluetoothctl -- info +} + +bt_devs() { + bluetoothctl -- devices \ + | awk '{print $2}' \ + | xargs bluetoothctl -- info }