diff options
Diffstat (limited to 'Plugins')
-rw-r--r-- | Plugins/Date.hs | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/Plugins/Date.hs b/Plugins/Date.hs index 0e47c6f..7b97916 100644 --- a/Plugins/Date.hs +++ b/Plugins/Date.hs @@ -18,20 +18,22 @@ module Plugins.Date where import Plugins + import System.Locale import System.Time - data Date = Date String String Int - deriving (Read) + deriving (Read, Show) instance Exec Date where - run (Date f _ _) = date f - rate (Date _ _ r) = r - alias (Date _ a _) = a - -date :: String -> IO String -date format = do - t <- toCalendarTime =<< getClockTime - return $ formatCalendarTime defaultTimeLocale format t + start (Date f _ r) cb = date f r cb + rate (Date _ _ r) = r + alias (Date _ a _) = a +date :: String -> Int -> (String -> IO ()) -> IO () +date format r cb = do go + where go = do + t <- toCalendarTime =<< getClockTime + cb $ formatCalendarTime defaultTimeLocale format t + tenthSeconds r >> go +
\ No newline at end of file |