diff options
author | Martin Perner <martin@perner.cc> | 2011-10-27 20:51:19 +0200 |
---|---|---|
committer | Martin Perner <martin@perner.cc> | 2011-10-27 22:46:28 +0200 |
commit | f6bb8eb4c4350522367f4ab2dacbfeb0a99cd06d (patch) | |
tree | 304e4ca8230f78cb659dff9a4aeadd1f65242e85 /src/Plugins/DateZoneL.hs | |
parent | 9718dabe6c6d5979e3f6837ef04a39d3ad8c786c (diff) | |
download | xmobar-f6bb8eb4c4350522367f4ab2dacbfeb0a99cd06d.tar.gz xmobar-f6bb8eb4c4350522367f4ab2dacbfeb0a99cd06d.tar.bz2 |
DateZone, Date*L Plugin merges; DateZone API-Change!
To support multiple locales, an lock was introduced.
Although through this, supporting DateL and DateZoneL would be
cumbersome.
To simplify the usage, DateZone was replaced with DateZoneL.
Additionally the position of the Alias parameter was changed.
Using "" as Zone parameter for DateZoneL simulates DateL.
Providing also "" for locale simulates Date.
Diffstat (limited to 'src/Plugins/DateZoneL.hs')
-rw-r--r-- | src/Plugins/DateZoneL.hs | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/src/Plugins/DateZoneL.hs b/src/Plugins/DateZoneL.hs deleted file mode 100644 index 2b7c467..0000000 --- a/src/Plugins/DateZoneL.hs +++ /dev/null @@ -1,42 +0,0 @@ ------------------------------------------------------------------------------ --- | --- Module : Plugins.DateZoneL --- Copyright : (c) Martin Perner --- License : BSD-style (see LICENSE) --- --- Maintainer : Martin Perner <martin@perner.cc> --- Stability : unstable --- Portability : unportable --- --- A date plugin with localization and location support for Xmobar --- --- Based on Plugins.DateZone --- ------------------------------------------------------------------------------ - -module Plugins.DateZoneL (DateZoneL(..)) where - -import Plugins - -import Localize - -import Data.Time.LocalTime -import Data.Time.Format -import Data.Time.LocalTime.TimeZone.Olson -import Data.Time.LocalTime.TimeZone.Series - -data DateZoneL = DateZoneL String String String String Int - deriving (Read, Show) - -instance Exec DateZoneL where - alias (DateZoneL _ _ a _ _) = a - start (DateZoneL f l _ z r) cb = do - setupTimeLocale l - go - where go = date f z >>= cb >> tenthSeconds r >> go - -date :: String -> String -> IO String -date format zone = do - timeZone <- getTimeZoneSeriesFromOlsonFile ("/usr/share/zoneinfo/" ++ zone) - zonedTime <- getZonedTime - return $ formatTime getTimeLocale format $ utcToLocalTime' timeZone $ zonedTimeToUTC zonedTime |