emoji-clock.plugin.zsh 1.54 KB
# ------------------------------------------------------------------------------
#          FILE: emoji-clock.plugin.zsh
#   DESCRIPTION: The current time with half hour accuracy as an emoji symbol.
#                Inspired by Andre Torrez' "Put A Burger In Your Shell"
#                http://notes.torrez.org/2013/04/put-a-burger-in-your-shell.html
#        AUTHOR: Alexis Hildebrandt (afh[at]surryhill.net)
#       VERSION: 1.0.0
# -----------------------------------------------------------------------------

function emoji-clock() {
  # Add 15 minutes to the current time and save the value as $minutes.
  (( minutes = $(date '+%M') + 15 ))
  (( hour = $(date '+%I') + minutes / 60 ))
  # make sure minutes and hours don't exceed 60 nor 12 respectively
  (( minutes %= 60 )); (( hour %= 12 ))

  case $hour in
     0) clock="๐Ÿ•›"; [ $minutes -ge 30 ] && clock="๐Ÿ•ง";;
     1) clock="๐Ÿ•"; [ $minutes -ge 30 ] && clock="๐Ÿ•œ";;
     2) clock="๐Ÿ•‘"; [ $minutes -ge 30 ] && clock="๐Ÿ•";;
     3) clock="๐Ÿ•’"; [ $minutes -ge 30 ] && clock="๐Ÿ•ž";;
     4) clock="๐Ÿ•“"; [ $minutes -ge 30 ] && clock="๐Ÿ•Ÿ";;
     5) clock="๐Ÿ•”"; [ $minutes -ge 30 ] && clock="๐Ÿ• ";;
     6) clock="๐Ÿ••"; [ $minutes -ge 30 ] && clock="๐Ÿ•ก";;
     7) clock="๐Ÿ•–"; [ $minutes -ge 30 ] && clock="๐Ÿ•ข";;
     8) clock="๐Ÿ•—"; [ $minutes -ge 30 ] && clock="๐Ÿ•ฃ";;
     9) clock="๐Ÿ•˜"; [ $minutes -ge 30 ] && clock="๐Ÿ•ค";;
    10) clock="๐Ÿ•™"; [ $minutes -ge 30 ] && clock="๐Ÿ•ฅ";;
    11) clock="๐Ÿ•š"; [ $minutes -ge 30 ] && clock="๐Ÿ•ฆ";;
     *) clock="โŒ›";;
  esac
  echo $clock
}