added InflectionCl in more languages

This commit is contained in:
Krasimir Angelov
2026-08-29 20:46:38 +02:00
parent e67f079167
commit fda7e1595d
5 changed files with 169 additions and 0 deletions
+35
View File
@@ -108,6 +108,29 @@ lin
s2 = paragraph p.s
} ;
InflectionCl = \cl -> {
t = "cl" ;
s1 = heading1 "Phrase" ;
s2 = frameTable (
tr (intagAttr "th" "colspan=3" "Temps simples" ++
intagAttr "th" "colspan=3" "Temps composés") ++
tr (th "Temps" ++ th "Affirmation" ++ th "Question" ++
th "Temps" ++ th "Affirmation" ++ th "Question") ++
inflClauseTense (heading present_Parameter)
(heading present_Parameter ++ " " ++ heading perfect_Parameter)
RPres cl ++
inflClauseTense (heading past_Parameter)
(heading past_Parameter ++ " " ++ heading perfect_Parameter)
RPast cl ++
inflClauseTense (heading future_Parameter)
(heading future_Parameter ++ " " ++ heading perfect_Parameter)
RFut cl ++
inflClauseTense (heading conditional_Parameter)
(heading conditional_Parameter ++ " " ++ heading perfect_Parameter)
RCond cl
)
} ;
InflectionV v = {
t = "v" ;
s1 = heading1 (heading verb_Category) ++
@@ -188,6 +211,18 @@ lin
MkTag i = ss i.t ;
oper
inflClauseTense : Str -> Str -> RTense -> Cl -> Str = \simple,perfect,tense,cl ->
tr (intagAttr "th" "rowspan=2" simple ++
td (cl.s ! DDir ! tense ! Simul ! RPos ! Indic) ++
td (cl.s ! DInv ! tense ! Simul ! RPos ! Indic) ++
intagAttr "th" "rowspan=2" perfect ++
td (cl.s ! DDir ! tense ! Anter ! RPos ! Indic) ++
td (cl.s ! DInv ! tense ! Anter ! RPos ! Indic)) ++
tr (td (cl.s ! DDir ! tense ! Simul ! (RNeg True) ! Indic) ++
td (cl.s ! DInv ! tense ! Simul ! (RNeg True) ! Indic) ++
td (cl.s ! DDir ! tense ! Anter ! (RNeg True) ! Indic) ++
td (cl.s ! DInv ! tense ! Anter ! (RNeg True) ! Indic)) ;
verbExample : CatFre.Cl -> Str = \cl ->
(S.mkUtt cl).s
++ ";" ++ (S.mkUtt (S.mkS S.anteriorAnt cl)).s --# notpresent
+35
View File
@@ -98,6 +98,29 @@ lin
s2 = paragraph p.s
} ;
InflectionCl = \cl -> {
t = "cl" ;
s1 = heading1 "Frase" ;
s2 = frameTable (
tr (intagAttr "th" "colspan=3" "Tempi semplici" ++
intagAttr "th" "colspan=3" "Tempi composti") ++
tr (th "Tempo" ++ th "Affermazione" ++ th "Domanda" ++
th "Tempo" ++ th "Affermazione" ++ th "Domanda") ++
inflClauseTense (heading present_Parameter)
(heading present_Parameter ++ " " ++ heading perfect_Parameter)
RPres cl ++
inflClauseTense (heading past_Parameter)
(heading past_Parameter ++ " " ++ heading perfect_Parameter)
RPast cl ++
inflClauseTense (heading future_Parameter)
(heading future_Parameter ++ " " ++ heading perfect_Parameter)
RFut cl ++
inflClauseTense (heading conditional_Parameter)
(heading conditional_Parameter ++ " " ++ heading perfect_Parameter)
RCond cl
)
} ;
InflectionV v = {
t = "v" ;
s1 = heading1 (heading verb_Category) ++
@@ -179,6 +202,18 @@ lin
MkTag i = ss i.t ;
oper
inflClauseTense : Str -> Str -> RTense -> Cl -> Str = \simple,perfect,tense,cl ->
tr (intagAttr "th" "rowspan=2" simple ++
td (cl.s ! DDir ! tense ! Simul ! RPos ! Indic) ++
td (cl.s ! DInv ! tense ! Simul ! RPos ! Indic) ++
intagAttr "th" "rowspan=2" perfect ++
td (cl.s ! DDir ! tense ! Anter ! RPos ! Indic) ++
td (cl.s ! DInv ! tense ! Anter ! RPos ! Indic)) ++
tr (td (cl.s ! DDir ! tense ! Simul ! (RNeg True) ! Indic) ++
td (cl.s ! DInv ! tense ! Simul ! (RNeg True) ! Indic) ++
td (cl.s ! DDir ! tense ! Anter ! (RNeg True) ! Indic) ++
td (cl.s ! DInv ! tense ! Anter ! (RNeg True) ! Indic)) ;
verbExample : CatIta.Cl -> Str = \cl ->
(S.mkUtt cl).s
++ ";" ++ (S.mkUtt (S.mkS S.anteriorAnt cl)).s --# notpresent
+35
View File
@@ -98,6 +98,29 @@ lin
s2 = paragraph p.s
} ;
InflectionCl = \cl -> {
t = "cl" ;
s1 = heading1 "Frase" ;
s2 = frameTable (
tr (intagAttr "th" "colspan=3" "Tempos simples" ++
intagAttr "th" "colspan=3" "Tempos compostos") ++
tr (th "Tempo" ++ th "Afirmação" ++ th "Pergunta" ++
th "Tempo" ++ th "Afirmação" ++ th "Pergunta") ++
inflClauseTense (heading present_Parameter)
(heading present_Parameter ++ " " ++ heading perfect_Parameter)
RPres cl ++
inflClauseTense (heading past_Parameter)
(heading past_Parameter ++ " " ++ heading perfect_Parameter)
RPast cl ++
inflClauseTense (heading future_Parameter)
(heading future_Parameter ++ " " ++ heading perfect_Parameter)
RFut cl ++
inflClauseTense (heading conditional_Parameter)
(heading conditional_Parameter ++ " " ++ heading perfect_Parameter)
RCond cl
)
} ;
InflectionV v = {
t = "v" ;
s1 = heading1 (heading verb_Category) ++
@@ -179,6 +202,18 @@ lin
MkTag i = ss i.t ;
oper
inflClauseTense : Str -> Str -> RTense -> Cl -> Str = \simple,perfect,tense,cl ->
tr (intagAttr "th" "rowspan=2" simple ++
td (cl.s ! DDir ! tense ! Simul ! RPos ! Indic) ++
td (cl.s ! DInv ! tense ! Simul ! RPos ! Indic) ++
intagAttr "th" "rowspan=2" perfect ++
td (cl.s ! DDir ! tense ! Anter ! RPos ! Indic) ++
td (cl.s ! DInv ! tense ! Anter ! RPos ! Indic)) ++
tr (td (cl.s ! DDir ! tense ! Simul ! (RNeg True) ! Indic) ++
td (cl.s ! DInv ! tense ! Simul ! (RNeg True) ! Indic) ++
td (cl.s ! DDir ! tense ! Anter ! (RNeg True) ! Indic) ++
td (cl.s ! DInv ! tense ! Anter ! (RNeg True) ! Indic)) ;
verbExample : CatPor.Cl -> Str = \cl ->
(S.mkUtt cl).s
++ ";" ++ (S.mkUtt (S.mkS S.anteriorAnt cl)).s --# notpresent
+29
View File
@@ -3,6 +3,7 @@
incomplete concrete DocumentationRusFunctor of Documentation = CatRus ** open
Terminology, -- the interface
ResRus,
TenseRus,
ParadigmsRus,
Prelude,
HTML
@@ -145,6 +146,18 @@ lin
})
} ;
InflectionCl = \cl -> {
t = "кл" ;
s1 = heading1 "Предложение" ;
s2 = frameTable (
tr (th "Время" ++ th "Утверждение" ++ th "Вопрос") ++
clauseTense (heading present_Parameter) Pres cl ++
clauseTense (heading past_Parameter) Past cl ++
clauseTense (heading future_Parameter) Fut cl ++
clauseTense (heading conditional_Parameter) Cond cl
)
} ;
InflectionV, InflectionV2, InflectionV3,
InflectionV2V, InflectionV2S, InflectionV2Q,
InflectionV2A, InflectionVS, InflectionVQ,
@@ -161,6 +174,22 @@ lin
} ;
oper
{-
-} --# notpresent
clauseTense : Str -> ResRus.Tense -> Cl -> Str = \label,tense,cl ->
tr (th (label ++ " (полож.)") ++
td (clauseForm tense Pos cl) ++
td (clauseForm tense Pos cl)) ++
tr (th (label ++ " (отриц.)") ++
td (clauseForm tense Neg cl) ++
td (clauseForm tense Neg cl)) ;
clauseForm : ResRus.Tense -> Polarity -> Cl -> Str = \tense,pol,cl ->
ResRus.verbEnvAgr cl.subj cl.adv cl.verb Ind tense cl.a
(case pol of {Pos => PPos ; Neg => PNeg}) ++
cl.dep ++
cl.compl ! pol ;
{-
-} --# notpresent
inflVerb : VerbForms -> Str = \v ->
+35
View File
@@ -106,6 +106,29 @@ lin
s2 = paragraph p.s
} ;
InflectionCl = \cl -> {
t = "cl" ;
s1 = heading1 "Oración" ;
s2 = frameTable (
tr (intagAttr "th" "colspan=3" "Tiempos simples" ++
intagAttr "th" "colspan=3" "Tiempos compuestos") ++
tr (th "Tiempo" ++ th "Afirmación" ++ th "Pregunta" ++
th "Tiempo" ++ th "Afirmación" ++ th "Pregunta") ++
inflClauseTense (heading present_Parameter)
(heading present_Parameter ++ " " ++ heading perfect_Parameter)
RPres cl ++
inflClauseTense (heading past_Parameter)
(heading past_Parameter ++ " " ++ heading perfect_Parameter)
RPast cl ++
inflClauseTense (heading future_Parameter)
(heading future_Parameter ++ " " ++ heading perfect_Parameter)
RFut cl ++
inflClauseTense (heading conditional_Parameter)
(heading conditional_Parameter ++ " " ++ heading perfect_Parameter)
RCond cl
)
} ;
InflectionV v = {
t = "v" ;
s1 = heading1 (heading verb_Category) ++
@@ -187,6 +210,18 @@ lin
MkTag i = ss i.t ;
oper
inflClauseTense : Str -> Str -> RTense -> Cl -> Str = \simple,perfect,tense,cl ->
tr (intagAttr "th" "rowspan=2" simple ++
td (cl.s ! DDir ! tense ! Simul ! RPos ! Indic) ++
td (cl.s ! DInv ! tense ! Simul ! RPos ! Indic) ++
intagAttr "th" "rowspan=2" perfect ++
td (cl.s ! DDir ! tense ! Anter ! RPos ! Indic) ++
td (cl.s ! DInv ! tense ! Anter ! RPos ! Indic)) ++
tr (td (cl.s ! DDir ! tense ! Simul ! (RNeg True) ! Indic) ++
td (cl.s ! DInv ! tense ! Simul ! (RNeg True) ! Indic) ++
td (cl.s ! DDir ! tense ! Anter ! (RNeg True) ! Indic) ++
td (cl.s ! DInv ! tense ! Anter ! (RNeg True) ! Indic)) ;
verbExample : CatSpa.Cl -> Str = \cl ->
(S.mkUtt cl).s
++ ";" ++ (S.mkUtt (S.mkS S.anteriorAnt cl)).s --# notpresent