diff --git a/lib/src/swedish/Konstruktikon.gf b/lib/src/swedish/Konstruktikon.gf index c284bb7a9..78d8bb165 100644 --- a/lib/src/swedish/Konstruktikon.gf +++ b/lib/src/swedish/Konstruktikon.gf @@ -74,7 +74,19 @@ fun pred_somAdv : Temp -> AP -> NP -> Adv ; -- dum som jag var --- not Adv in K, but "avm" + hur_AP_som_helstAP : A -> AP ; -- hur stor som helst ---- does this work as modifier? and with arbitrary AP? + hur_AP_som_helstAdv : A -> Adv ; -- hur mycket som helst + hur_AP_som_helstCN : A -> CN -> CN ; -- hur stor näsa som helst -- discontinuous + vokativ_m_possessivVoc : Pron -> CN -> Voc ; -- ditt jävla äckel + + haalla_naket_NVP : N -> VP ; -- hÃ¥lla tal + + multiplicering_dimensionCard : Card -> Card -> Card ; -- fem gÃ¥nger fyra (gÃ¥nger sex) --- can be iterated to more dimensions :-) + multiplicering_maengdNP : NP -> NP -> NP ; -- fyrtio kronor gÃ¥nger 52 fredagsmys + + maatt_plus_adjAP : Card -> CN -> A -> AP ; -- fem meter hög ---- flera meter hög? + maatt_plus_PPComp : Card -> CN -> Adv -> Comp ; -- fem meter i höjd ---- flera meter i höjd? --- pÃ¥ bredden ; vertikalt (therefore Adv) diff --git a/lib/src/swedish/KonstruktikonSwe.gf b/lib/src/swedish/KonstruktikonSwe.gf index 94498583e..b5f45d61d 100644 --- a/lib/src/swedish/KonstruktikonSwe.gf +++ b/lib/src/swedish/KonstruktikonSwe.gf @@ -105,6 +105,38 @@ lin pred_somAdv t ap np = P.mkAdv (ap.s ! agrAdjNP np.a DIndef ++ (mkRS (lin Temp t) positivePol (mkRCl which_RP (lin NP np) (P.mkV2 verbBe))).s ! np.a ! RNom) ; + hur_AP_som_helstAP a = { + s = \\ap => "hur" ++ a.s ! AF (APosit ap) Nom ++ "som helst" ; + isPre = False ---- en näsa hur stor som helst ? + } ; + hur_AP_som_helstAdv a = { + s = "hur" ++ a.s ! adverbForm ++ "som helst" + } ; + hur_AP_som_helstCN a cn = + mkCN (mkCN (mkAP (P.mkAdA "hur") (lin A a)) (lin CN cn)) (P.mkAdv "som helst") ; + + vokativ_m_possessivVoc pron cn = + mkVoc (SyntaxSwe.mkNP (mkQuant pron) cn) ; + + haalla_naket_NVP n = + mkVP (P.mkV2 (P.mkV "hÃ¥lla" "höll" "hÃ¥llit")) (SyntaxSwe.mkNP n) ; + + + multiplicering_dimensionCard x y = { + s = \\g => x.s ! g ++ "gÃ¥nger" ++ y.s ! g ; + n = Pl ---- en gÃ¥nger en ? + } ; + + multiplicering_maengdNP x y = + let ggr_Conj = lin Conj {s1 = [] ; s2 = "gÃ¥nger" ; n = Pl} in + SyntaxSwe.mkNP ggr_Conj (lin NP x) (lin NP y) ; + + maatt_plus_adjAP c cn a = + mkAP (lin AdA (mkUtt (SyntaxSwe.mkNP c cn))) a ; + + maatt_plus_PPComp c cn adv = + mkComp (SyntaxSwe.mkNP (SyntaxSwe.mkNP c cn) adv) ; + lincat NPAgr = {s : Str ; g : Gender ; n : Number} ; diff --git a/lib/src/swedish/ParadigmsSwe.gf b/lib/src/swedish/ParadigmsSwe.gf index 16a880ee0..e000db3f7 100644 --- a/lib/src/swedish/ParadigmsSwe.gf +++ b/lib/src/swedish/ParadigmsSwe.gf @@ -181,6 +181,10 @@ oper invarA : Str -> A ; -- e.g. äkta +---- Adjective with deviant adverb. + +---- deviantAdvA : Str -> A -> A ; -- e.g. bra, god + --3 Two-place adjectives -- @@ -490,7 +494,8 @@ oper mkA : (liten,litet,lilla,sma,mindre,minst,minsta : Str) -> A = mk7A } ; - +---- deviantAdvA s a = + regA : Str -> A ; mk2A : (bred,brett : Str) -> A ; irregA : (tung,tyngre,tyngst : Str) -> A ;