{-# LANGUAGE CPP #-}
module Hails.I18N.Gettext where
import Codec.Binary.UTF8.String (decodeString, isUTF8Encoded)
import System.IO.Unsafe (unsafePerformIO)
import Text.I18N.GetText (getText)
__ :: String -> String
__ :: String -> String
__ String
string
#ifdef linux_HOST_OS
| String -> Bool
isUTF8Encoded String
translation = String -> String
decodeString String
translation
#endif
| Bool
otherwise = String
translation
where
translation :: String
translation :: String
translation = IO String -> String
forall a. IO a -> a
unsafePerformIO (IO String -> String) -> IO String -> String
forall a b. (a -> b) -> a -> b
$ String -> IO String
getText String
string