[download]

local/bin/moonday

   1 #!/bin/bash
   2 #         ░███████
   3 #       ░███████       D O T F I L E S
   4 #       ░███████       M O O N D A Y
   5 #    ░█████████████
   6 #       ░███████
   7 #       ░███████       LGPL <http://www.gnu.org/licenses/>
   8 #       ░██  ░██
   9 #       ░██  ░██   (C) 2020 Alexey Gagin <http://www.lexa.by/dotfiles/>
  10 
  11 f=~/.cache/moonday
  12 left(){ # {{{
  13     while read t s; do
  14         n=$(date -d $t +%s 2>&-) || { echo "$t $s" && continue; }
  15         n=$(( n - $(date +%s) ))
  16 
  17         echo "$n ${t%:*} ${s^} $(date -ud @$n +'%_H %_M')" | awk '{
  18             if ($1 < 0) printf "%-7s был в %s\n", $3, $2
  19             else printf "%-7s через %s\n", $3, ($4 ? $4 " ч." : $5 " м.")
  20         }'
  21     done
  22 } # }}}
  23 
  24 [[ $(date +%F) == $(date -r $f +%F) ]] && cat $f | left && exit
  25 
  26 IFS=- read moonphase moonday dawn sunrise zenith sunset dusk < <(
  27 curl -s 'https://wttr.in/spb?lang=ru&format=%m-%M-%D-%S-%z-%s-%d')
  28 
  29 declare -A names=(
  30     [🌑]='Новолуние'
  31     [🌒]='Молодая луна'
  32     [🌓]='Первая четверть'
  33     [🌔]='Прибывающая луна'
  34     [🌕]='Полнолуние'
  35     [🌖]='Убывающая луна'
  36     [🌗]='Последняя четверть'
  37     [🌘]='Старая луна'
  38 )
  39 
  40 echo $moonphase > $f.ico
  41 echo "${names[$moonphase]}
  42 $moonday-й лунный день
  43 $dawn рассвет
  44 $sunrise восход
  45 $zenith зенит
  46 $sunset заход
  47 $dusk сумерки" | tee $f | left
  48 printf '<svg><text font-family="Emoji"
  49 y="22" font-size="24">%s</text></svg>' $moonphase > $f.svg