From 6aa9363b530695ec3098b3baae97e41b98202e88 Mon Sep 17 00:00:00 2001 From: aarne Date: Thu, 8 Apr 2010 11:52:44 +0000 Subject: [PATCH] started a script and format for updating a set of gf files --- examples/phrasebook/Update.hs | 23 ++++++++++++++++++++++ examples/phrasebook/add_greetings.gfupdate | 12 +++++++++++ 2 files changed, 35 insertions(+) create mode 100644 examples/phrasebook/Update.hs create mode 100644 examples/phrasebook/add_greetings.gfupdate diff --git a/examples/phrasebook/Update.hs b/examples/phrasebook/Update.hs new file mode 100644 index 000000000..1e7cf2578 --- /dev/null +++ b/examples/phrasebook/Update.hs @@ -0,0 +1,23 @@ +import System + +main = do + file:_ <- getArgs + updates <- readFile file >= return . readUpdates + mapM_ (doUpdate file) updates + return () + +type Update = (FilePath, [String]) + +readUpdates :: String -> [Update] +readUpdates s = [] + +doUpdate :: FilePath -> Update -> IO () +doUpdate src (target,ls) = do + s <- readFile target + let beg = dropLastBracket s + let tmp = tmpFile target + writeFile tmp beg + appendFile tmp $ unlines [(line ++ "-- UPDATE FROM " ++ src) | line <- ls] + appendFile tmp "\n}\n" + +dropLastBracket s = s diff --git a/examples/phrasebook/add_greetings.gfupdate b/examples/phrasebook/add_greetings.gfupdate new file mode 100644 index 000000000..72160882f --- /dev/null +++ b/examples/phrasebook/add_greetings.gfupdate @@ -0,0 +1,12 @@ +abstract Greetings + +fun GCongratulations : Greeting ; + +lin +Eng = ss "congratulations" ; +Fin = ss "onneksi olkoon" ; +Fre = ss "félicitations" ; +Ita = ss "auguri" ; +Swe = ss "grattis" ; + +