From 0882e5eac274f11a0cd3a98fa93c57d6ee479981 Mon Sep 17 00:00:00 2001 From: aarne Date: Tue, 9 Jan 2007 14:53:19 +0000 Subject: thai phrasebook example started --- examples/travel/Travel.gf | 54 +++++++++++++++++++++++++++++ examples/travel/TravelTha.gf | 73 +++++++++++++++++++++++++++++++++++++++ examples/travel/TravelThai.gf | 71 +++++++++++++++++++++++++++++++++++++ examples/travel/TravelThaiPron.gf | 71 +++++++++++++++++++++++++++++++++++++ 4 files changed, 269 insertions(+) create mode 100644 examples/travel/Travel.gf create mode 100644 examples/travel/TravelTha.gf create mode 100644 examples/travel/TravelThai.gf create mode 100644 examples/travel/TravelThaiPron.gf (limited to 'examples') diff --git a/examples/travel/Travel.gf b/examples/travel/Travel.gf new file mode 100644 index 000000000..77e2ec234 --- /dev/null +++ b/examples/travel/Travel.gf @@ -0,0 +1,54 @@ +abstract Travel = { + + flags startcat=Phrase ; + + cat + Phrase ; + + Greeting ; + Order ; + Question ; + Sentence ; + + Object ; + Kind ; + Quality ; + Number ; + + Speaker ; + Hearer ; + Gender ; + Quantity ; + + fun + PGreeting : Greeting -> Speaker -> Hearer -> Phrase ; + POrder : Order -> Speaker -> Hearer -> Phrase ; + PQuestion : Question -> Speaker -> Hearer -> Phrase ; + PSentence : Sentence -> Speaker -> Hearer -> Phrase ; + + MkSpeaker : Gender -> Quantity -> Speaker ; + MkHearer : Gender -> Quantity -> Hearer ; + + Male, Female : Gender ; + Single, Many : Quantity ; + + Hello : Greeting ; + Thanks : Greeting ; + + IWant : Object -> Order ; + + DoYouHave : Kind -> Question ; + IsIt : Object -> Quality -> Sentence ; + + ItIs : Object -> Quality -> Sentence ; + + Indef : Kind -> Object ; + This : Kind -> Object ; + NumberObjects : Number -> Kind -> Object ; + + One, Two, Five, Ten : Number ; + + Mango : Kind ; + Green : Quality ; + +} diff --git a/examples/travel/TravelTha.gf b/examples/travel/TravelTha.gf new file mode 100644 index 000000000..6d62baa31 --- /dev/null +++ b/examples/travel/TravelTha.gf @@ -0,0 +1,73 @@ +--# -path=.:prelude + +concrete TravelTha of Travel = open Prelude in { + + flags coding=utf8 ; + +-- this file is processed by +-- GF.Text.Thai.thaiFile "../examples/travel/TravelTha.gf" + (Just "../examples/travel/TravelThai.gf") +-- GF.Text.Thai.thaiPronFile "../examples/travel/TravelTha.gf" + (Just "../examples/travel/TravelThaiPron.gf") +-- to produce target Thai script and pronunciation files. + + lincat + Phrase, + + Greeting, + Order, + Question, + Sentence, + Object = SS ; + + Kind = {s,c : Str} ; -- c is classifier + + Quality, + Number, + + Speaker, + Hearer, + Gender, + Quantity = SS ; + + lin + PGreeting g s h = ss (g.s ++ s.s ++ h.s) ; + POrder g s h = ss (g.s ++ s.s ++ h.s) ; + PQuestion g s h = ss (g.s ++ s.s ++ h.s) ; + PSentence g s h = ss (g.s ++ s.s ++ h.s) ; + + MkSpeaker = cc2 ; + MkHearer _ _ = ss [] ; + + Male = ss "k2rab" ; + Female = ss "k2T1a" ; + + Single, Many = ss [] ; + + Hello = ss ["swa.s di:"] ; + Thanks = ss ["k1Ob k2un'"] ; + + IWant = prefixSS "eOa:" ; + + DoYouHave = postfixSS ["mi: a&hm"] ; + IsIt x q = ss (x.s ++ q.s ++ "a&hm") ; + + ItIs = cc2 ; + + Indef k = ss (k.s ++ k.c ++ "nvT1g") ; + This k = ss (k.s ++ k.c ++ "ni:T2") ; + + NumberObjects n k = ss (k.s ++ n.s ++ k.c) ; + + One = ss "nvT1g" ; + Two = ss "sOg" ; + Five = ss "ha:" ; + Ten = ss "sib" ; + + Mango = cls ["ma mT1wg"] "lu:k" ; + Green = ss ["si: ek1i:yw"] ; + + oper + cls : Str -> Str -> {s,c : Str} = \s,c -> {s = s ; c = c} ; + +} diff --git a/examples/travel/TravelThai.gf b/examples/travel/TravelThai.gf new file mode 100644 index 000000000..925fd3903 --- /dev/null +++ b/examples/travel/TravelThai.gf @@ -0,0 +1,71 @@ +--# -path=.:prelude + +concrete TravelThai of Travel = open Prelude in { + + flags coding=utf8 ; + +-- this file is processed by +-- GF.Text.Thai.thaiFile "€เะมปลเตระึเ€ระึเลหังฝ" (Just TGT) +-- GF.Text.Thai.thaiPronFile "€เะมปลเตระึเ€ระึเลหังฝ" (Just TGT) +-- to produce target Thai script and pronunciation files. + + lincat + Phrase, + + Greeting, + Order, + Question, + Sentence, + Object = SS ; + + Kind = {s,c : Str} ; -- c is classifier + + Quality, + Number, + + Speaker, + Hearer, + Gender, + Quantity = SS ; + + lin + PGreeting g s h = ss (g.s ++ s.s ++ h.s) ; + POrder g s h = ss (g.s ++ s.s ++ h.s) ; + PQuestion g s h = ss (g.s ++ s.s ++ h.s) ; + PSentence g s h = ss (g.s ++ s.s ++ h.s) ; + + MkSpeaker = cc2 ; + MkHearer _ _ = ss [] ; + + Male = ss "คระบ" ; + Female = ss "ค่ะ" ; + + Single, Many = ss [] ; + + Hello = ss ["สวัสดี"] ; + Thanks = ss ["ขอบคุณ"] ; + + IWant = prefixSS "เอา" ; + + DoYouHave = postfixSS ["มีไหม"] ; + IsIt x q = ss (x.s ++ q.s ++ "ไหม") ; + + ItIs = cc2 ; + + Indef k = ss (k.s ++ k.c ++ "นึ่ง") ; + This k = ss (k.s ++ k.c ++ "นี้") ; + + NumberObjects n k = ss (k.s ++ n.s ++ k.c) ; + + One = ss "นึ่ง" ; + Two = ss "สอง" ; + Five = ss "หา" ; + Ten = ss "สิบ" ; + + Mango = cls ["มะม่วง"] "ลูก" ; + Green = ss ["สีเขียว"] ; + + oper + cls : Str -> Str -> {s,c : Str} = \s,c -> {s = s ; c = c} ; + +} diff --git a/examples/travel/TravelThaiPron.gf b/examples/travel/TravelThaiPron.gf new file mode 100644 index 000000000..b152c4d2a --- /dev/null +++ b/examples/travel/TravelThaiPron.gf @@ -0,0 +1,71 @@ +--# -path=.:prelude + +concrete TravelThaiPron of Travel = open Prelude in { + + flags coding=utf8 ; + +-- this file is processed by +-- GF.Text.Thai.thaiFile "m^eaeaveaveapltrrlhg-" (Just TGT) +-- GF.Text.Thai.thaiPronFile "m^eaeaveaveapltrrlhg-" (Just TGT) +-- to produce target Thai script and pronunciation files. + + lincat + Phrase, + + Greeting, + Order, + Question, + Sentence, + Object = SS ; + + Kind = {s,c : Str} ; -- c is classifier + + Quality, + Number, + + Speaker, + Hearer, + Gender, + Quantity = SS ; + + lin + PGreeting g s h = ss (g.s ++ s.s ++ h.s) ; + POrder g s h = ss (g.s ++ s.s ++ h.s) ; + PQuestion g s h = ss (g.s ++ s.s ++ h.s) ; + PSentence g s h = ss (g.s ++ s.s ++ h.s) ; + + MkSpeaker = cc2 ; + MkHearer _ _ = ss [] ; + + Male = ss "khr'ap" ; + Female = ss "kh^a" ; + + Single, Many = ss [] ; + + Hello = ss ["s`awt d-ii"] ; + Thanks = ss ["kh`Op kh-un"] ; + + IWant = prefixSS "O-eaa" ; + + DoYouHave = postfixSS ["m-ii m~ay"] ; + IsIt x q = ss (x.s ++ q.s ++ "m~ay") ; + + ItIs = cc2 ; + + Indef k = ss (k.s ++ k.c ++ "n^vg") ; + This k = ss (k.s ++ k.c ++ "n~ii") ; + + NumberObjects n k = ss (k.s ++ n.s ++ k.c) ; + + One = ss "n^vg" ; + Two = ss "s~Og" ; + Five = ss "h~aa" ; + Ten = ss "s`ip" ; + + Mango = cls ["m'a m^owg"] "l^uuk" ; + Green = ss ["s~ii kh`eiiyw"] ; + + oper + cls : Str -> Str -> {s,c : Str} = \s,c -> {s = s ; c = c} ; + +} -- cgit v1.2.3