forked from GitHub/gf-core
some hopefully straightforward additions to Slovenian, all marked with ----AR
This commit is contained in:
@@ -7,6 +7,7 @@ lincat
|
||||
|
||||
-- Question
|
||||
QCl = {s : P.Tense => P.Anteriority => P.Polarity => Str} ;
|
||||
IP = {s : Case => Str; a : Agr} ; ----AR
|
||||
|
||||
-- Verb
|
||||
VP = ResSlv.VP ;
|
||||
|
||||
@@ -13,7 +13,7 @@ concrete GrammarSlv of Grammar =
|
||||
PhraseSlv,
|
||||
TextX - [Pol,PPos,PNeg],
|
||||
StructuralSlv,
|
||||
{- IdiomSlv, -}
|
||||
IdiomSlv, ----AR
|
||||
TenseX
|
||||
** {
|
||||
|
||||
|
||||
13
lib/src/slovenian/IdiomSlv.gf
Normal file
13
lib/src/slovenian/IdiomSlv.gf
Normal file
@@ -0,0 +1,13 @@
|
||||
----AR BEGIN the whole IdiomSlv
|
||||
concrete IdiomSlv of Idiom = CatSlv **
|
||||
open ParadigmsSlv, ResSlv, Prelude in {
|
||||
|
||||
lin
|
||||
ExistNP np =
|
||||
mkClause [] np.a False {
|
||||
s = \\p,vform => ne ! p ++ (mkV "obstajati" "obstaja").s ! vform ;
|
||||
s2 = \\a => np.s ! Nom ;
|
||||
isCop = False
|
||||
} ;
|
||||
}
|
||||
----AR END
|
||||
@@ -187,4 +187,50 @@ oper mkDigit2 : (_,_,_,_,_,_ : Str) -> Gender => Case => Str;
|
||||
Loc => s+"ih" ;
|
||||
Instr => s+"imi"
|
||||
} ;
|
||||
|
||||
-----------------------------------------AR BEGIN ; copied from Italian
|
||||
-- numerals as sequences of digits
|
||||
|
||||
lincat
|
||||
Dig = TDigit ;
|
||||
|
||||
lin
|
||||
IDig d = d ;
|
||||
|
||||
IIDig d i = {
|
||||
s = d.s ++ BIND ++ i.s ;
|
||||
---- s = \\o => d.s ! NCard Masc ++ BIND ++ i.s ! o ;
|
||||
n = Pl
|
||||
} ;
|
||||
|
||||
D_0 = mkDig "0" ;
|
||||
D_1 = mk2Dig "1" Sg ; ---- gender
|
||||
D_2 = mkDig "2" ;
|
||||
D_3 = mkDig "3" ;
|
||||
D_4 = mkDig "4" ;
|
||||
D_5 = mkDig "5" ;
|
||||
D_6 = mkDig "6" ;
|
||||
D_7 = mkDig "7" ;
|
||||
D_8 = mkDig "8" ;
|
||||
D_9 = mkDig "9" ;
|
||||
|
||||
oper
|
||||
mkDig : Str -> TDigit = \c -> mk2Dig c Pl ;
|
||||
|
||||
mk2Dig : Str -> Number -> TDigit = \c,n -> {
|
||||
s = c ; ----
|
||||
---- s = table {NCard _ => c ;
|
||||
---- NOrd Masc Sg => c + ":o" ; NOrd Fem Sg => c + ":a" ;
|
||||
---- NOrd Masc Pl => c + ":i" ; NOrd Fem Pl => c + ":e"
|
||||
---- } ;
|
||||
n = n
|
||||
} ;
|
||||
|
||||
TDigit = {
|
||||
n : Number ;
|
||||
s : Str ; ---- CardOrd => Str
|
||||
} ;
|
||||
|
||||
---------------------AR END
|
||||
|
||||
}
|
||||
|
||||
@@ -12,6 +12,10 @@ concrete PhraseSlv of Phrase = CatSlv ** open Prelude, ResSlv, (P=ParamX) in {
|
||||
UttNP np = {s = np.s ! Nom} ;
|
||||
UttVP vp = {s = vp.s ! P.Pos ! VInf ++ vp.s2 ! {g=Masc; n=Sg; p=P3}} ;
|
||||
UttAdv adv = adv ;
|
||||
|
||||
UttIAdv iadv = iadv ; ----AR
|
||||
UttIP ip = {s = ip.s ! Nom} ; ----AR
|
||||
|
||||
UttCN n = {s = n.s ! Indef ! Nom ! Sg} ;
|
||||
UttCard n = {s = n.s ! Fem ! Nom} ;
|
||||
UttAP ap = {s = ap.s ! Indef ! AMasc Inanimate ! Nom ! Sg} ;
|
||||
|
||||
@@ -1,2 +1,12 @@
|
||||
concrete QuestionSlv of Question = CatSlv ** open ResSlv in {
|
||||
concrete QuestionSlv of Question = CatSlv ** open ResSlv,Prelude in {
|
||||
|
||||
------AR BEGIN
|
||||
lin
|
||||
QuestVP ip vp = mkClause (ip.s ! Nom) ip.a False vp ;
|
||||
QuestCl cl = {s = \\t,a,p => "ali" ++ cl.s ! t ! a ! p} ;
|
||||
QuestIAdv iadv cl = {s = \\t,a,p => iadv.s ++ cl.s ! t ! a ! p} ;
|
||||
|
||||
|
||||
------AR END
|
||||
|
||||
}
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
concrete StructuralSlv of Structural = CatSlv ** open ResSlv, ParadigmsSlv in {
|
||||
concrete StructuralSlv of Structural = CatSlv ** open ResSlv, ParadigmsSlv, Prelude in {
|
||||
|
||||
lin
|
||||
although_Subj = {s="čeprav"} ;
|
||||
and_Conj = mkConj "in" Pl ;
|
||||
because_Subj = {s="zato ket"} ;
|
||||
can_VV = {s = \\vform => case vform of {_ => "lahko"} };
|
||||
have_V2 = mkV2 (mkV "iméti" "imá") ; ----AR
|
||||
|
||||
he_Pron = mkPron "òn" "njêga" "njêga" "njêmu" "njêm" "njím"
|
||||
"njegôv" "njegôvega" "njegôvemu" ("njegôv"|"njegôvega") "njegôvem" "njegôvim"
|
||||
"njegôva" "njegôvih" "njegôvima" "njegôva" "njegôvih" "njegôvima"
|
||||
@@ -16,6 +18,7 @@ lin
|
||||
"njegôvi" "njegôvih" "njegôvima" "njegôvi" "njegôvih" "njegôvima"
|
||||
"njegôva" "njegôvih" "njegôvim" "njegôva" "njegôvih" "njegôvimi" Masc Sg P3 ;
|
||||
here_Adv = {s="tukaj"} ;
|
||||
how8much_IAdv = ss "koliko" ;
|
||||
i_Pron = mkPron "jàz" "méne" "méne" "méni" "méni" ("menój"|"máno")
|
||||
"mój" "mòjega" "mòjemu" ("mòj"|"mòjega") "mòjem" "mòjim"
|
||||
"mòja" "mòjih" "mòjima" "mòja" "mòjih" "mòjima"
|
||||
@@ -92,8 +95,13 @@ lin
|
||||
when_IAdv = {s="kdaj"} ;
|
||||
when_Subj = {s="medtem ko"} ;
|
||||
where_IAdv = {s="kje"} ;
|
||||
|
||||
whatSg_NP = mkNP "káj" "káj" "čésa" "čému" "čém" "čím" Neut Sg ; ----AR
|
||||
whoSg_IP = mkNP "kdó" "kóga" "kóga" "kómu" "kóm" "kóm" Masc Sg ; ----AR
|
||||
|
||||
why_IAdv = {s="zakaj"} ;
|
||||
with_Prep = mkPrep "z" instrumental ;
|
||||
without_Prep = mkPrep "brez" genitive ; ----AR
|
||||
youSg_Pron = mkPron "tí" "tébe" "tébe" "tébi" "tébi" ("tebój"|"tábo")
|
||||
"tvój" "tvòjega" "tvòjemu" ("tvòj"|"tvòjega") "tvòjem" "tvòjim"
|
||||
"tvòja" "tvòjih" "tvòjima" "tvòja" "tvòjih" "tvòjima"
|
||||
|
||||
Reference in New Issue
Block a user