1
0
forked from GitHub/gf-rgl

added default decodings to Make, to enable multilingual utf8 generation

This commit is contained in:
aarne
2008-06-24 21:52:07 +00:00
parent 837dde872c
commit e4f1322041

View File

@@ -13,25 +13,31 @@ import System
-- With no argument, lang and api are done, in this order. -- With no argument, lang and api are done, in this order.
-- See 'make' below for what is done by which command. -- See 'make' below for what is done by which command.
langs = [ -- the languages have long directory names and short ISO codes (3 letters)
("arabic", "Ara"), -- we also give the decodings for postprocessing linearizations, as long as grammars
("bulgarian","Bul"), -- don't support all flags needed; they are used in tests
("catalan", "Cat"),
("danish", "Dan"), langsCoding = [
("english", "Eng"), (("arabic", "Ara"),""),
("finnish", "Fin"), (("bulgarian","Bul"),"from_cp1251,to_utf8"),
("french", "Fre"), (("catalan", "Cat"),"to_utf8"),
("hindi", "Hin"), (("danish", "Dan"),"to_utf8"),
("german", "Ger"), (("english", "Eng"),""),
("interlingua","Ina"), (("finnish", "Fin"),"to_utf8"),
("italian", "Ita"), (("french", "Fre"),"to_utf8"),
("norwegian","Nor"), (("hindi", "Hin"),"to_devanagari,to_utf8"),
("russian", "Rus"), (("german", "Ger"),"to_utf8"),
("spanish", "Spa"), (("interlingua","Ina"),""),
("swedish", "Swe"), (("italian", "Ita"),"to_utf8"),
("thai", "Tha") (("norwegian","Nor"),"to_utf8"),
(("russian", "Rus"),""),
(("spanish", "Spa"),"to_utf8"),
(("swedish", "Swe"),"to_utf8"),
(("thai", "Tha"),"to_thai,to_utf8")
] ]
langs = map fst langsCoding
-- languagues for which to compile Lang -- languagues for which to compile Lang
langsLang = langs `except` ["Ara"] langsLang = langs `except` ["Ara"]
@@ -81,9 +87,11 @@ make xx = do
unwords [dir ++ "/Lang" ++ la ++ ".gfo" | (_,la) <- optl langsPGF] ++ unwords [dir ++ "/Lang" ++ la ++ ".gfo" | (_,la) <- optl langsPGF] ++
" +RTS -K100M" " +RTS -K100M"
ifxx "test" $ do ifxx "test" $ do
gf treeb $ unwords [dir ++ "/Lang" ++ la ++ ".gfo" | (_,la) <- optl langsTest] let ls = optl langsTest
gf (treeb "Lang" ls) $ unwords [dir ++ "/Lang" ++ la ++ ".gfo" | (_,la) <- ls]
ifxx "demo" $ do ifxx "demo" $ do
gf demos $ unwords ["demo/Demo" ++ la ++ ".gf" | (_,la) <- optl langsDemo] let ls = optl langsDemo
gf (demos "Demo" ls) $ unwords ["demo/Demo" ++ la ++ ".gf" | (_,la) <- ls]
ifxx "clean" $ do ifxx "clean" $ do
system "rm */*.gfo ../alltenses/*.gfo ../present/*.gfo" system "rm */*.gfo ../alltenses/*.gfo ../present/*.gfo"
ifxx "clone" $ do ifxx "clone" $ do
@@ -104,10 +112,11 @@ gf comm file = do
putStrLn $ "reading " ++ file putStrLn $ "reading " ++ file
system $ "echo \"" ++ comm ++ "\" | gf3 -s " ++ file system $ "echo \"" ++ comm ++ "\" | gf3 -s " ++ file
treeb = "rf -lines -tree -file=" ++ treebankExx ++ treeb abstr ls = "rf -lines -tree -file=" ++ treebankExx ++
" | l -treebank | wf -file=" ++ treebankResults " | l -treebank " ++ unlexer abstr ls ++ " | wf -file=" ++ treebankResults
demos = "gr -number=100 | l -treebank | ps -to_utf8 -to_html | wf -file=resdemo.html" demos abstr ls = "gr -number=100 | l -treebank " ++ unlexer abstr ls ++
" | ps -to_html | wf -file=resdemo.html"
lang (lla,la) = lla ++ "/Lang" ++ la ++ ".gf" lang (lla,la) = lla ++ "/Lang" ++ la ++ ".gf"
try (lla,la) = "api/Try" ++ la ++ ".gf" try (lla,la) = "api/Try" ++ la ++ ".gf"
@@ -140,3 +149,11 @@ replaceLang s1 s2 = repl where
_ -> s _ -> s
lgs = 3 -- length s1 lgs = 3 -- length s1
unlexer abstr ls =
"-unlexer=\\\"" ++ unwords
[abstr ++ la ++ "=" ++ unl |
lla@(_,la) <- ls, let unl = unlex lla, not (null unl)] ++
"\\\""
where
unlex lla = maybe "" id $ lookup lla langsCoding