packages feed

gettext-th 0.2.0.0 → 0.2.0.1

raw patch · 2 files changed

+20/−8 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

gettext-th.cabal view
@@ -1,6 +1,6 @@ cabal-version:      2.4 name:               gettext-th-version:            0.2.0.0+version:            0.2.0.1  synopsis: gettext-th can internationalise a haskell program without runtime dependencies @@ -40,4 +40,4 @@     hs-source-dirs:   src     default-language: Haskell2010     ghc-options: -Wall -fwarn-tabs -    default-extensions: TemplateHaskell, TupleSections, DeriveLift, RecordWildCards, QuasiQuotes, OverloadedStrings, FlexibleContexts+    default-extensions: TemplateHaskell, TupleSections, DeriveLift, RecordWildCards, QuasiQuotes, OverloadedStrings, FlexibleContexts, ScopedTypeVariables
src/I18N/Gettext/TH.hs view
@@ -17,7 +17,10 @@ import Data.Set (Set) import qualified Data.Set as S +--import Control.Exception (catch, IOException)+ import qualified Data.ByteString as B+import Data.Text (Text) import qualified Data.Text as T import qualified Data.Text.Lazy as TL import Data.Text.Encoding (encodeUtf8)@@ -42,8 +45,11 @@ moFileName = replaceExtension potFileName ".mo"  {-# NOINLINE catalog #-}-catalog :: Catalog-catalog = unsafePerformIO $ loadCatalog moFileName+catalog :: Maybe Catalog+catalog = unsafePerformIO $ do+  fe <- doesFileExist moFileName+  if fe then Just <$> loadCatalog moFileName+   else return Nothing   header :: String@@ -86,13 +92,19 @@         renameFile potFileName (potFileName ++ ".bak")        writeFileUtf8 potFileName WriteMode header-      makeAbsolute moFileName-  addDependentFile fn+      moE <- doesFileExist moFileName+      if moE then makeAbsolute moFileName+        else return ""+  when (not $ null fn) $ addDependentFile fn   packStr :: String -> B.ByteString packStr = encodeUtf8 . T.pack +lookupText :: String -> Text+lookupText str = maybe (T.pack str) (\ c -> TL.toStrict $ G.gettext c $ packStr str) catalog+  + gettextQ  :: String -> Q Exp gettextQ str = do   kmsgs <- runIO $ do@@ -104,7 +116,7 @@   when (str `S.notMember` kmsgs) $ do     loc <- location     runIO $ writeFileUtf8 potFileName AppendMode $ unlines $ poEntry loc str-  let trans = TL.toStrict $ G.gettext catalog (packStr str)+  let trans =  lookupText str   [| trans |]  quote :: String -> String@@ -137,7 +149,7 @@   runIO $ writeFileUtf8 potFileName AppendMode $ unlines $ concat [ poEntry loc msg | (_, msg) <- msgs, msg `S.notMember` kmsgs ]        forM msgs $ \ (key, msg) ->-              let trans = TL.toStrict $ G.gettext catalog (packStr msg) in do+              let trans = lookupText msg in do                  funD (mkName key) [clause [] (normalB [| trans |]) []]