úÎ"     portable provisionaleugene.grigoriev@gmail.com! ! "#$%&'()*+,-./   portable experimentaleugene.grigoriev@gmail.com The Localization structure. ?The Internationalization monad built using monad transformers. %The top level localization function.  import Text.I18n.Po ) import Prelude hiding (putStr,putStrLn)   main = do K (l10n,errors) <- getL10n "dir/to/po" -- directory containing PO files < putStrLn $ localize l10n (Locale "en") (example "Joe") 'Structure containing localization data Locale to use Inernationalized expression Localized expression "The heart of I18n monad. Based on Text.Printf.printf. " example :: String -> I18n String  example name = do # hello <- gettext "Hello, %s!"  return (hello name)  Sets a local  & for an internationalized expression. B If there is no translation, then no context version is tried. # example2 :: String -> I18n String 0 example2 = withContext (Just "test") . example Context to use Internationalized expression !New internationalized expression  Sets a local  & for an internationalized expression. # example3 :: String -> I18n String 0 example3 = withLocale (Locale "ru") . example2 Locale to use Internationalized expression "New internationalized expression. H Note: while this expression is localy localized already, it is to be a / part of another internationalized expression. 0 Therefore the final type is internationalized. 0     portable experimentaleugene.grigoriev@gmail.com12Builds   structure by parsing  .po  files contained in a given  directory.   structure is to be passed to  function.   $ structure is used internaly by the   monad. Directory containing PO files. Localization structure  and a list of parse errors. 3456789:   ;      !"#$%&'()*+,-./01234556789:;<:;=:>?:>@Ai18n-0.3 Text.I18n.PoText.I18n.Printf Text.I18nutf8-string-0.3.6System.IO.UTF8putStrLnputStrIsChar PrintfArg HPrintfType PrintfTypesprprintfhPrintfuprintfL10nI18nContextLocaleMsgstrMsgidlocalizegettext withContext withLocalegetL10nUPrintfUDoubleUFloatUIntegerUStringUChartoCharfromChar toUPrintfhspruIntegerfmtfmtifmtutointtostritosbstoigetSpecsdfmt'dfmtperrorfmterrargerrbaderr localizeMsgidMsgDec processPosmkMsgspoFilesparsePotransformers-0.2.2.0Control.Monad.Trans.Class MonadTransliftControl.Monad.IO.ClassMonadIOliftIO