diff --git a/lib/src/chinese/DocumentationChi.gf b/lib/src/chinese/DocumentationChi.gf new file mode 100644 index 000000000..07c470b64 --- /dev/null +++ b/lib/src/chinese/DocumentationChi.gf @@ -0,0 +1,130 @@ +concrete DocumentationChi of Documentation = CatChi ** open + ResChi, + HTML +in { + +lincat + Inflection = {t : Str; s1,s2 : Str} ; + Document = {s : Str} ; + Tag = {s : Str} ; + +lin + InflectionN, InflectionN2, InflectionN3 = \noun -> { + t = "n" ; + s1 = heading1 "Noun" ; + s2 = noun.c ++ noun.s + } ; + + InflectionA, InflectionA2 = \adj -> { + t = "a" ; + s1 = heading1 "Adjective" ; + s2 = adj.s + } ; + + InflectionAdv adv = { + t = "adv" ; + s1 = heading1 "Adverb" ; + s2 = paragraph adv.s + } ; + + InflectionPrep p = { + t = "prep" ; + s1 = heading1 "Preposition" ; + s2 = paragraph (p.prepPre ++ p.prepPost) + } ; + + InflectionV = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s) ; + s2 = inflVerb verb + } ; + + InflectionV2 = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ verb.c2.prepPre ++ pp "object" ++ verb.c2.prepPost ++ verb.part) ; + s2 = inflVerb verb + } ; + + InflectionV3 = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ verb.c2.prepPre ++ pp "arg1" ++ verb.c2.prepPost ++ verb.c3.prepPre ++ pp "arg2" ++ verb.c3.prepPre ++ verb.part) ; + s2 = inflVerb verb + } ; + + InflectionV2V = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ verb.c2.prepPre ++ pp "object" ++ verb.c2.prepPost ++ pp "verb" ++ verb.part) ; + s2 = inflVerb verb + } ; + + InflectionV2S = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ verb.c2.prepPre ++ pp "object" ++ verb.c2.prepPost ++ pp "sentence" ++ verb.part) ; + s2 = inflVerb verb + } ; + + InflectionV2Q = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ verb.c2.prepPre ++ pp "object" ++ verb.c2.prepPost ++ pp "question" ++ verb.part) ; + s2 = inflVerb verb + } ; + + InflectionV2A = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ verb.c2.prepPre ++ pp "object" ++ verb.c2.prepPost ++ pp "adjective" ++ verb.part) ; + s2 = inflVerb verb + } ; + + InflectionVV = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ pp "verb") ; + s2 = inflVerb verb + } ; + + InflectionVS = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ pp "sentence") ; + s2 = inflVerb verb + } ; + + InflectionVQ = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ pp "question") ; + s2 = inflVerb verb + } ; + + InflectionVA = \verb -> { + t = "v" ; + s1 = heading1 "Verb" ++ + paragraph (pp "subject" ++ verb.s ++ pp "adjective") ; + s2 = inflVerb verb + } ; + +oper + inflVerb : Verb -> Str = \verb -> + let vtbl = useVerb verb + in frameTable ( + tr (th "" ++ th "pos" ++ th "neg") ++ + tr (th "" ++ td (vtbl ! Pos ! APlain) ++ td (vtbl ! Neg ! APlain)) ++ + tr (th "perf" ++ td (vtbl ! Pos ! APerf) ++ td (vtbl ! Neg ! APerf)) ++ + tr (th "stat" ++ td (vtbl ! Pos ! ADurStat) ++ td (vtbl ! Neg ! ADurStat)) ++ + tr (th "prog" ++ td (vtbl ! Pos ! ADurProg) ++ td (vtbl ! Neg ! ADurProg)) ++ + tr (th "exper" ++ td (vtbl ! Pos ! AExper) ++ td (vtbl ! Neg ! AExper))) ; + + pp : Str -> Str = \s -> "<"+s+">" ; + +lin + MkDocument b i e = {s=i.s1 ++ paragraph b.s ++ i.s2 ++ paragraph e.s} ; + MkTag i = {s=i.t} ; + +} diff --git a/lib/src/chinese/ParseChi.gf b/lib/src/chinese/ParseChi.gf index e4e0ab45e..771442790 100644 --- a/lib/src/chinese/ParseChi.gf +++ b/lib/src/chinese/ParseChi.gf @@ -1,4 +1,4 @@ ---# -path=.:../english:../abstract +--# -path=.:../english:../abstract:../translator concrete ParseChi of ParseEngAbs = TenseChi, @@ -16,12 +16,13 @@ concrete ParseChi of ParseEngAbs = RelativeChi, IdiomChi [NP, VP, Tense, Cl, ProgrVP, ExistNP, SelfAdvVP, SelfAdVVP, SelfNP], ConstructionChi, + DocumentationChi, ExtraChi [NP, Quant, VPSlash, VP, Tense, GenNP, PassVPSlash, PassAgentVPSlash, Temp, Pol, Conj, VPS, ListVPS, S, Num, CN, RP, MkVPS, BaseVPS, ConsVPS, ConjVPS, PredVPS, GenRP, VPI, VPIForm, VPIInf, VPIPresPart, ListVPI, VV, MkVPI, BaseVPI, ConsVPI, ConjVPI, ComplVPIVV, ClSlash, RCl, EmptyRelSlash, ListCN, ConjCN, BaseCN, ConsCN], - DictEngChi + DictionaryChi ** open ResChi, ParadigmsChi, SyntaxChi, Prelude, (G = GrammarChi), (E = ExtraChi) in {