Browse Source

added support for GNU version of `date`

Nikhil Gupta 10 years ago
parent
commit
71ee0d7b2b
1 changed files with 16 additions and 12 deletions
  1. 16 12
      plugins/emoji-clock/emoji-clock.plugin.zsh

+ 16 - 12
plugins/emoji-clock/emoji-clock.plugin.zsh

@@ -8,21 +8,25 @@
 # -----------------------------------------------------------------------------
 
 function emoji-clock() {
-  hour=$(date -v '+15M' '+%I')
-  minutes=$(date -v '+15M' '+%M')
+  # 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
-    01) clock="๐Ÿ•"; [ $minutes -ge 30 ] && clock="๐Ÿ•œ";;
-    02) clock="๐Ÿ•‘"; [ $minutes -ge 30 ] && clock="๐Ÿ•";;
-    03) clock="๐Ÿ•’"; [ $minutes -ge 30 ] && clock="๐Ÿ•ž";;
-    04) clock="๐Ÿ•“"; [ $minutes -ge 30 ] && clock="๐Ÿ•Ÿ";;
-    05) clock="๐Ÿ•”"; [ $minutes -ge 30 ] && clock="๐Ÿ• ";;
-    06) clock="๐Ÿ••"; [ $minutes -ge 30 ] && clock="๐Ÿ•ก";;
-    07) clock="๐Ÿ•–"; [ $minutes -ge 30 ] && clock="๐Ÿ•ข";;
-    08) clock="๐Ÿ•—"; [ $minutes -ge 30 ] && clock="๐Ÿ•ฃ";;
-    09) clock="๐Ÿ•˜"; [ $minutes -ge 30 ] && clock="๐Ÿ•ค";;
+     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="๐Ÿ•ฆ";;
-    12) clock="๐Ÿ•›"; [ $minutes -ge 30 ] && clock="๐Ÿ•ง";;
      *) clock="โŒ›";;
   esac
   echo $clock