diff --git a/lib/src/french/PhonoFre.gf b/lib/src/french/PhonoFre.gf index 4b9bb4268..5c8743d1a 100644 --- a/lib/src/french/PhonoFre.gf +++ b/lib/src/french/PhonoFre.gf @@ -12,12 +12,14 @@ oper "I" ; "Î" ; "O" ; "Ô" ; "U" ; "Û" ; "Y" } ; - elision : Str -> Str = \d -> d + pre {"e" ; ("'" ++ Predef.BIND) / voyelle} ; + elision : Str -> Str = \d -> d + pre {"e" ; "'" / voyelle} ; +---- elision : Str -> Str = \d -> d + pre {"e" ; ("'" ++ Predef.SOFT_BIND) / voyelle} ; -- The following morphemes are the most common uses of elision. elisDe = elision "d" ; - elisLa = pre {"la" ; ("l'" ++ Predef.BIND) / voyelle} ; + elisLa = pre {"la" ; ("l'") / voyelle} ; +---- elisLa = pre {"la" ; ("l'" ++ Predef.SOFT_BIND) / voyelle} ; --- doesn't work properly 15/4/2014 elisLe = elision "l" ; elisNe = elision "n" ; elisQue = elision "qu" ; diff --git a/lib/src/italian/PhonoIta.gf b/lib/src/italian/PhonoIta.gf index 1d14ff99e..b7c4be62c 100644 --- a/lib/src/italian/PhonoIta.gf +++ b/lib/src/italian/PhonoIta.gf @@ -17,7 +17,7 @@ oper } ; elision : (_,_,_ : Str) -> Str = \il, l', lo -> - pre {il ; (l' ++ Predef.BIND) / vocale ; lo / sImpuro} ; ---- pre {vocale => l' ; sImpuro => lo ; _ => il} ; +---- pre {il ; (l' ++ Predef.SOFT_BIND) / vocale ; lo / sImpuro} ; + pre {vocale => l' ; sImpuro => lo ; _ => il} ; --- doesn't work properly 15/4/2014 } diff --git a/lib/src/translator/TranslateIta.gf b/lib/src/translator/TranslateIta.gf index 6d1ef5836..854bb6f5a 100644 --- a/lib/src/translator/TranslateIta.gf +++ b/lib/src/translator/TranslateIta.gf @@ -2,7 +2,10 @@ concrete TranslateIta of Translate = TenseIta, - NounIta - [PPartNP], + NounIta - [ + PPartNP + ,UsePron -- override with a prodrop variant + ], AdjectiveIta, NumeralIta, SymbolIta [ @@ -26,10 +29,15 @@ concrete TranslateIta of Translate = ExtensionsIta [CompoundCN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP], DictionaryIta ** -open MorphoIta, ResIta, ParadigmsIta, SyntaxIta, CommonScand, (E = ExtraIta), Prelude in { +open MorphoIta, ResIta, ParadigmsIta, SyntaxIta, (E = ExtraIta), (G = GrammarIta), Prelude in { flags literal=Symb ; +-- the overrides ----- +lin + + UsePron p = G.UsePron p | G.UsePron (E.ProDrop p) ; + } diff --git a/lib/src/translator/TranslateSpa.gf b/lib/src/translator/TranslateSpa.gf index 1c2623928..dc516e2bd 100644 --- a/lib/src/translator/TranslateSpa.gf +++ b/lib/src/translator/TranslateSpa.gf @@ -2,7 +2,10 @@ concrete TranslateSpa of Translate = TenseSpa, - NounSpa - [PPartNP], + NounSpa - [ + PPartNP + ,UsePron -- override with a prodrop variant + ], AdjectiveSpa, NumeralSpa, SymbolSpa [ @@ -26,10 +29,15 @@ concrete TranslateSpa of Translate = ExtensionsSpa [CompoundCN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP], DictionarySpa ** -open MorphoSpa, ResSpa, ParadigmsSpa, SyntaxSpa, CommonScand, (E = ExtraSpa), Prelude in { +open MorphoSpa, ResSpa, ParadigmsSpa, SyntaxSpa, (E = ExtraSpa), (G = GrammarSpa), Prelude in { flags literal=Symb ; +-- the overrides ----- +lin + + UsePron p = G.UsePron p | G.UsePron (E.ProDrop p) ; + }