mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-08-28 06:59:51 -06:00
e866940d65
MarkupNP marks s, clit and prep, since in Czech these are alternative surface forms of a pronoun chosen by context, as in MarkupRomance. The nominative clitic is left alone: it is the pro-drop subject, empty for every personal pronoun, so marking it up gave "<b> </b> je starý". Inherit MarkupCze in LangCze, as LangFin does; stringMark is excluded because abstract Lang already excludes it. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
28 lines
995 B
Plaintext
28 lines
995 B
Plaintext
--# -path=.:../abstract:../common
|
|
|
|
concrete MarkupCze of Markup = CatCze, MarkHTMLX ** open ResCze in {
|
|
|
|
lin
|
|
MarkupCN m cn = cn ** {s = \\n,c => appMark m (cn.s ! n ! c)} ;
|
|
|
|
-- s, clit and prep are alternative surface forms, so each is marked;
|
|
-- but clit ! Nom is the pro-drop subject, empty for every pronoun,
|
|
-- and marking it up would leave the tags around nothing
|
|
MarkupNP m np = np ** {
|
|
s = \\c => appMark m (np.s ! c) ;
|
|
clit = \\c => case c of {
|
|
Nom => np.clit ! Nom ;
|
|
_ => appMark m (np.clit ! c)
|
|
} ;
|
|
prep = \\c => appMark m (np.prep ! c)
|
|
} ;
|
|
|
|
MarkupAP m ap = ap ** {s = \\g,n,c => appMark m (ap.s ! g ! n ! c)} ;
|
|
MarkupAdv m adv = {s = appMark m adv.s} ;
|
|
MarkupS m s = {s = appMark m s.s} ;
|
|
MarkupUtt m utt = {s = appMark m utt.s} ;
|
|
MarkupPhr m phr = {s = appMark m phr.s} ;
|
|
MarkupText m txt = {s = appMark m txt.s} ;
|
|
|
|
}
|