diff --git a/lib/resource-1.0/italian/DiffIta.gf b/lib/resource-1.0/italian/DiffIta.gf index 33a274e00..954f7542d 100644 --- a/lib/resource-1.0/italian/DiffIta.gf +++ b/lib/resource-1.0/italian/DiffIta.gf @@ -16,7 +16,7 @@ instance DiffIta of DiffRomance = open CommonRomance, PhonoIta, BeschIta, Prelud Nom | Acc => [] ; CPrep p => case p of { P_di => "di" ; - P_a => "a" ; + P_a => pre {"a" ; "ad" / vocale} ; P_da => "da" ; P_in => "in" ; P_su => "su" ; diff --git a/lib/resource-1.0/italian/ParadigmsIta.gf b/lib/resource-1.0/italian/ParadigmsIta.gf index 3a98856ca..48ef624fd 100644 --- a/lib/resource-1.0/italian/ParadigmsIta.gf +++ b/lib/resource-1.0/italian/ParadigmsIta.gf @@ -66,6 +66,10 @@ oper mkPrep : Str -> Prep ; +-- The following prepositions also have special contracted forms. + + con_Prep, da_Prep, in_Prep, su_Prep : Prep ; + --2 Nouns -- Worst case: give both two forms and the gender. @@ -293,6 +297,11 @@ oper dative = complDat ; mkPrep p = {s = p ; c = Acc ; isDir = False} ; + con_Prep = {s = [] ; c = CPrep P_con ; isDir = False} ; + da_Prep = {s = [] ; c = CPrep P_da ; isDir = False} ; + in_Prep = {s = [] ; c = CPrep P_in ; isDir = False} ; + su_Prep = {s = [] ; c = CPrep P_su ; isDir = False} ; + mkN x y g = mkNounIrreg x y g ** {lock_N = <>} ; regN x = mkNomReg x ** {lock_N = <>} ; compN x y = {s = \\n => x.s ! n ++ y ; g = x.g ; lock_N = <>} ; diff --git a/lib/resource-1.0/italian/PhonoIta.gf b/lib/resource-1.0/italian/PhonoIta.gf index 81fd60cf7..f725aef68 100644 --- a/lib/resource-1.0/italian/PhonoIta.gf +++ b/lib/resource-1.0/italian/PhonoIta.gf @@ -7,7 +7,7 @@ resource PhonoIta = open Prelude in { oper vocale : Strs = strs { - "a" ; "e" ; "h" ; "i" ; "o" ; "u" ; "è" + "a" ; "e" ; "h" ; "i" ; "o" ; "u" ; "è" ; "y" } ; sImpuro : Strs = strs {