mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-11 22:09:32 -06:00
Italian more complete
This commit is contained in:
@@ -335,4 +335,6 @@ oper
|
||||
ouiPhr = ss ["Oui ."] ;
|
||||
nonPhr = ss ["Non ."] ; --- and also Si!
|
||||
|
||||
negNe = elisNe ; negPas = "pas" ;
|
||||
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ DayDate day = ss (day.s ! singular) ;
|
||||
DayTimeDate day time = ss (day.s ! singular ++ "à" ++ time.s) ;
|
||||
|
||||
FormalTime = infixSS "heures" ;
|
||||
PastTime h m = ss (m.s ++ "et" ++ h.s) ;
|
||||
PastTime h m = ss (h.s ++ "et" ++ m.s) ;
|
||||
ToTime h m = ss (h.s ++ "moins" ++ m.s) ;
|
||||
ExactTime h = ss (h.s ++ "exactement") ;
|
||||
|
||||
|
||||
@@ -33,30 +33,30 @@ lin
|
||||
bread_N = regN "pane" ;
|
||||
--V break_V2 = dirV2 (regV "casser") ;
|
||||
broad_ADeg = regADeg "largo" ;
|
||||
brother_N2 = deN2 (regN "fratello") ;
|
||||
brother_N2 = diN2 (regN "fratello") ;
|
||||
brown_ADeg = regADeg "marrone" ;
|
||||
butter_N = regN "burro" ;
|
||||
buy_V2 = dirV2 (regV "comprare") ;
|
||||
---- camera_N = compN (regN "appareil" masculine) ["de photo"] ;
|
||||
---- cap_N = regN "casquette" ;
|
||||
camera_N = mkN ["macchina fotografica"]["macchine fotografiche"] feminine ; ---
|
||||
cap_N = regN "berretta" ;
|
||||
car_N = regN "macchina" ;
|
||||
---- carpet_N = regN "tapis" ;
|
||||
carpet_N = regN "tappeto" ;
|
||||
cat_N = regN "gatto" ;
|
||||
---- ceiling_N = regN "plafond" ;
|
||||
---- chair_N = regN "chaise" ;
|
||||
ceiling_N = regN "soffitto" ;
|
||||
chair_N = regN "sedia" ;
|
||||
cheese_N = regN "formaggio" ;
|
||||
child_N = regN "bambino" ;
|
||||
church_N = regN "chiesa" ;
|
||||
city_N = regN "città" ;
|
||||
clean_ADeg = regADeg "proprio" ;
|
||||
clever_ADeg = regADeg "sapiente" ; ----
|
||||
clever_ADeg = regADeg "saggio" ;
|
||||
--V close_V2 = dirV2 (regV "") ;
|
||||
--V coat_N = regN "manteau" ;
|
||||
cold_ADeg = regADeg "freddo" ;
|
||||
--V come_V = venir_V ;
|
||||
computer_N = regN "computer" ;
|
||||
country_N = regN "paese" ;
|
||||
cousin_N = regN "cugino" ; ---- cousine
|
||||
cousin_N = regN "cugino" ; --- cousine
|
||||
cow_N = regN "vacca" ;
|
||||
--V die_V = mourir_V ;
|
||||
dirty_ADeg = regADeg "sporco" ;
|
||||
@@ -68,11 +68,11 @@ lin
|
||||
eat_V2 = dirV2 (regV "mangiare") ;
|
||||
--V enemy_N = regN "ennemi" ;
|
||||
factory_N = regN "stabilimento" ;
|
||||
father_N2 = deN2 (regN "padre" masculine) ;
|
||||
father_N2 = diN2 (regN "padre") ;
|
||||
--V fear_VS = mkVS (v2V craindre_V2) ;
|
||||
find_V2 = dirV2 (regV "trovare") ;
|
||||
fish_N = regN "pesca" ;
|
||||
---- floor_N = regN "plancher" ;
|
||||
floor_N = regN "pavimento" ;
|
||||
forget_V2 = dirV2 (regV "dimenticare") ;
|
||||
fridge_N = regN "frigorifero" ;
|
||||
friend_N = regN "amico" ;
|
||||
@@ -80,7 +80,7 @@ lin
|
||||
fun_AV = mkAV (regA "divertente") genitive ;
|
||||
garden_N = regN "giardino" ;
|
||||
girl_N = regN "ragazza" ;
|
||||
---- glove_N = regN "gant" ;
|
||||
glove_N = regN "guanto" ;
|
||||
gold_N = regN "oro" ;
|
||||
good_ADeg = prefADeg (mkADeg (regA "buono")
|
||||
(mkA "migliore" "migliore" "migliori" "migliori" "meglio")) ;
|
||||
@@ -100,7 +100,7 @@ lin
|
||||
industry_N = regN "industria" ;
|
||||
iron_N = regN "ferro" ;
|
||||
king_N = regN "ré" ;
|
||||
--V know_V2 = connaître_V2 ; ---- savoir_V2 : VS
|
||||
--V know_V2 = connaître_V2 ; --- savoir_V2 : VS
|
||||
lake_N = regN "lago" ;
|
||||
lamp_N = regN "lampa" ;
|
||||
--V learn_V2 = apprendre_V2 ;
|
||||
@@ -118,7 +118,7 @@ lin
|
||||
meat_N = femN (regN "carne") ;
|
||||
milk_N = regN "latte" ;
|
||||
moon_N = regN "luna" ;
|
||||
mother_N2 = deN2 (femN (regN "madre")) ;
|
||||
mother_N2 = diN2 (femN (regN "madre")) ;
|
||||
mountain_N = regN "montagna" ;
|
||||
music_N = regN "musica" ;
|
||||
narrow_ADeg = regADeg "stretto" ;
|
||||
@@ -126,105 +126,105 @@ lin
|
||||
newspaper_N = regN "giornale" ;
|
||||
oil_N = regN "olio" ;
|
||||
old_ADeg =
|
||||
prefADeg (regADeg "veccio") ; ---- vieil
|
||||
prefADeg (regADeg "vecchio") ; ---- vieil
|
||||
--V open_V2 = ouvrir_V2 ;
|
||||
--V paint_V2A = mkV2A (v2V peindre_V2) accusative ;
|
||||
paper_N = regN "carta" ;
|
||||
peace_N = femN (regN "pace") ;
|
||||
pen_N = regN "stylo" ;
|
||||
planet_N = regN "planète" ;
|
||||
plastic_N = regN "plastic" ;
|
||||
play_V2 = dirV2 (regV "jouer") ;
|
||||
policeman_N = regN "policier" ;
|
||||
priest_N = regN "prêtre" ;
|
||||
probable_AS = mkAS (regA "probable") ;
|
||||
queen_N = regN "reine" ;
|
||||
radio_N = regN "radio" ;
|
||||
rain_V0 = mkV0 (pleuvoir_V) ;
|
||||
read_V2 = lire_V2 ;
|
||||
red_ADeg = regADeg "rouge" ;
|
||||
religion_N = regN "religion" ;
|
||||
restaurant_N = regN "restaurant" ;
|
||||
river_N = regN "rivière" ;
|
||||
rock_N = regN "rocher" ;
|
||||
roof_N = regN "toit" ;
|
||||
rubber_N = regN "caoutchuc" ;
|
||||
run_V = v2V courir_V2 ;
|
||||
say_VS = mkVS (v2V dire_V2) ;
|
||||
school_N = regN "école" ;
|
||||
science_N = regN "science" ;
|
||||
sea_N = regN "mer" ;
|
||||
seek_V2 = dirV2 (regV "chercher") ;
|
||||
see_V2 = voir_V2 ;
|
||||
sell_V3 = dirV3 (v2V vendre_V2) dative ;
|
||||
send_V3 = dirV3 (v2V envoyer_V2) dative ;
|
||||
sheep_N = regN "mouton" ;
|
||||
ship_N = regN "bateau" ;
|
||||
shirt_N = regN "chemise" ;
|
||||
shoe_N = regN "chaussure" ;
|
||||
shop_N = regN "magasin" ;
|
||||
short_ADeg = regADeg "court" ; ---- bref
|
||||
silver_N = regN "argent" ;
|
||||
sister_N = regN "soeur" ;
|
||||
sleep_V = v2V dormir_V2 ;
|
||||
small_ADeg = prefADeg (regADeg "petit") ;
|
||||
snake_N = regN "serpent" ;
|
||||
sock_N = regN "chaussette" ;
|
||||
speak_V2 = dirV2 (regV "parler") ;
|
||||
star_N = regN "étoile" ;
|
||||
steel_N = regN "acier" ;
|
||||
stone_N = regN "pierre" ;
|
||||
stove_N = regN "four" ;
|
||||
student_N = regN "étudiant" ;
|
||||
stupid_ADeg = regADeg "stupide" ;
|
||||
sun_N = regN "soleil" ;
|
||||
switch8off_V2 = éteindre_V2 ;
|
||||
switch8on_V2 = dirV2 (regV "allumer") ; ----
|
||||
table_N = regN "table" ;
|
||||
talk_V3 = mkV3 (regV "parler") dative genitive ;
|
||||
teacher_N = regN "professeur" ;
|
||||
teach_V2 = dirV2 (regV "enseigner") ;
|
||||
television_N = regN "télévision" ;
|
||||
thick_ADeg = compADeg (mkA "épais" "épaisse" "épais" "épaissement") ;
|
||||
thin_ADeg = regADeg "fin" ;
|
||||
train_N = regN "train" ;
|
||||
travel_V = regV "voyager" ;
|
||||
tree_N = regN "arbre" ;
|
||||
---- trousers_N = regN "pantalon" ;
|
||||
ugly_ADeg = regADeg "laide" ;
|
||||
understand_V2 = comprendre_V2 ;
|
||||
university_N = regN "université" ;
|
||||
village_N = regN "village" ;
|
||||
wait_V2 = attendre_V2 ; ---- dative?
|
||||
walk_V = regV "marcher" ;
|
||||
warm_ADeg = regADeg "chaud" ;
|
||||
war_N = regN "guerre" ;
|
||||
watch_V2 = dirV2 (regV "regarder") ;
|
||||
water_N = regN "eau" ;
|
||||
white_ADeg = compADeg (mkA "blanc" "blanche" "blancs" "blanchement") ;
|
||||
window_N = regN "fenêtre" ;
|
||||
wine_N = regN "vin" ;
|
||||
win_V2 = dirV2 (regV "gagner") ; ---- vaincre
|
||||
woman_N = regN "femme" ;
|
||||
wonder_VQ = mkVQ (regV "étonner") ; ----- s'étonner
|
||||
wood_N = regN "bois" ;
|
||||
write_V2 = écrire_V2 ;
|
||||
yellow_ADeg = regADeg "jaune" ;
|
||||
young_ADeg = prefADeg (regADeg "jeune") ;
|
||||
pen_N = regN "penna" ;
|
||||
planet_N = regN "pianeta" ;
|
||||
plastic_N = regN "plastica" ;
|
||||
play_V2 = dirV2 (regV "giocare") ;
|
||||
policeman_N = regN "carabiniere" ;
|
||||
priest_N = regN "prete" ;
|
||||
probable_AS = mkAS (regA "probabile") ;
|
||||
queen_N = regN "regina" ;
|
||||
radio_N = mkN "radio" "radio" feminine ;
|
||||
--V rain_V0 = mkV0 (pleuvoir_V) ;
|
||||
--V read_V2 = lire_V2 ;
|
||||
red_ADeg = regADeg "rosso" ;
|
||||
religion_N = femN (regN "religione") ;
|
||||
restaurant_N = regN "ristorante" ;
|
||||
river_N = regN "fiume" ;
|
||||
rock_N = regN "roccia" ;
|
||||
roof_N = regN "tetto" ;
|
||||
rubber_N = regN "gomma" ;
|
||||
--V run_V = v2V courir_V2 ;
|
||||
--V say_VS = mkVS (v2V dire_V2) ;
|
||||
school_N = regN "scuola" ;
|
||||
science_N = regN "scienza" ;
|
||||
sea_N = regN "mare" ;
|
||||
seek_V2 = dirV2 (regV "cercare") ;
|
||||
--V see_V2 = voir_V2 ;
|
||||
--V sell_V3 = dirV3 (v2V vendre_V2) dative ;
|
||||
send_V3 = dirV3 (regV "mandare") dative ;
|
||||
--V sheep_N = regN "mouton" ;
|
||||
ship_N = femN (regN "nave") ;
|
||||
shirt_N = regN "camicia" ;
|
||||
shoe_N = regN "scarpa" ;
|
||||
shop_N = regN "magazzino" ;
|
||||
short_ADeg = regADeg "corto" ; --- breve
|
||||
silver_N = regN "argento" ;
|
||||
sister_N = regN "sorella" ;
|
||||
--V sleep_V = v2V dormir_V2 ;
|
||||
small_ADeg = prefADeg (regADeg "piccolo") ;
|
||||
--V snake_N = regN "serpent" ;
|
||||
--V sock_N = regN "chaussette" ;
|
||||
speak_V2 = dirV2 (regV "parlare") ;
|
||||
star_N = regN "stella" ;
|
||||
steel_N = regN "acciaio" ;
|
||||
stone_N = regN "sasso" ;
|
||||
stove_N = regN "forno" ;
|
||||
student_N = regN "studente" ;
|
||||
stupid_ADeg = regADeg "stupido" ;
|
||||
sun_N = regN "sole" ;
|
||||
--V switch8off_V2 = éteindre_V2 ;
|
||||
switch8on_V2 = dirV2 (regV "allumare") ; ----
|
||||
table_N = regN "tavola" ; --- tavolo
|
||||
talk_V3 = mkV3 (regV "parlare") dative genitive ;
|
||||
teacher_N = regN "professore" ;
|
||||
teach_V2 = dirV2 (regV "insegnare") ;
|
||||
television_N = femN (regN "televisione") ;
|
||||
thick_ADeg = regADeg "grosso" ;
|
||||
thin_ADeg = regADeg "sottile" ;
|
||||
train_N = regN "treno" ;
|
||||
travel_V = regV "viaggare" ;
|
||||
tree_N = regN "albero" ;
|
||||
--- trousers_N = regN "pantalon" ;
|
||||
ugly_ADeg = regADeg "brutto" ;
|
||||
understand_V2 = dirV2 (regV "capire") ;
|
||||
university_N = regN "università" ;
|
||||
village_N = regN "paese" ;
|
||||
wait_V2 = mkV2 (regV "aspettare") dative ;
|
||||
walk_V = regV "camminare" ;
|
||||
warm_ADeg = regADeg "caldo" ;
|
||||
war_N = regN "guerra" ;
|
||||
watch_V2 = dirV2 (regV "guardare") ;
|
||||
water_N = regN "acqua" ;
|
||||
white_ADeg = compADeg (regA "bianco") ;
|
||||
window_N = regN "finestra" ;
|
||||
wine_N = regN "vino" ;
|
||||
--V win_V2 = dirV2 (vincere) ;
|
||||
woman_N = regN "donna" ;
|
||||
wonder_VQ = mkVQ (regV "domandare") ; ---- domandarsi
|
||||
wood_N = regN "legno" ;
|
||||
--V write_V2 = écrire_V2 ;
|
||||
yellow_ADeg = regADeg "giallo" ;
|
||||
young_ADeg = prefADeg (regADeg "giovane") ;
|
||||
|
||||
do_V2 = faire_V2 ;
|
||||
now_Adv = mkAdv "maintenant" ;
|
||||
already_Adv = mkAdv "déjà" ;
|
||||
song_N = regN "chanson" ;
|
||||
add_V3 = dirV3 (regV "ajouter") dative ;
|
||||
number_N = regN "nombre" ; ---- numéro
|
||||
put_V2 = mettre_V2 ;
|
||||
stop_V = regV "arrêter" ; ---- s'arrêter
|
||||
jump_V = regV "sauter" ;
|
||||
here_Adv = mkAdv "ici" ;
|
||||
here7to_Adv = mkAdv "ici" ;
|
||||
here7from_Adv = mkAdv ["d'ici"] ;
|
||||
there_Adv = mkAdv "là" ; ---- y, là-bas
|
||||
there7to_Adv = mkAdv "là" ; --- y
|
||||
there7from_Adv = mkAdv ["de là"] ; ---- en
|
||||
--V do_V2 = faire_V2 ;
|
||||
now_Adv = mkAdv "adesso" ;
|
||||
already_Adv = mkAdv "già" ;
|
||||
song_N = femN (regN "canzone") ;
|
||||
--V add_V3 = dirV3 (regV "ajouter") dative ;
|
||||
number_N = regN "numero" ;
|
||||
--V put_V2 = mettre_V2 ;
|
||||
stop_V = regV "fermare" ; ---- fermarsi
|
||||
jump_V = regV "saltare" ;
|
||||
here_Adv = mkAdv "quì" ;
|
||||
here7to_Adv = mkAdv "quì" ;
|
||||
here7from_Adv = mkAdv ["da quì"] ;
|
||||
there_Adv = mkAdv "lì" ;
|
||||
there7to_Adv = mkAdv "lì" ;
|
||||
there7from_Adv = mkAdv ["da lì"] ;
|
||||
} ;
|
||||
|
||||
25
lib/resource/italian/CountryIta.gf
Normal file
25
lib/resource/italian/CountryIta.gf
Normal file
@@ -0,0 +1,25 @@
|
||||
concrete CountryIta of Country = open CategoriesIta, ParadigmsIta in {
|
||||
|
||||
lincat
|
||||
Country = PN ;
|
||||
Nationality = A ;
|
||||
Language = N ;
|
||||
|
||||
lin
|
||||
Denmark = mkPN "Danimarca" feminine ;
|
||||
England = mkPN "Inghilterra" feminine ;
|
||||
Finland = mkPN "Finlandia" feminine ;
|
||||
France = mkPN "Francia" feminine ;
|
||||
Germany = mkPN "Germania" feminine ;
|
||||
Italy = mkPN "Italie" feminine ;
|
||||
Norway = mkPN "Norvegia" feminine ;
|
||||
Russia = mkPN "Russia" feminine ;
|
||||
Spain = mkPN "Spagna" feminine ;
|
||||
Sweden = mkPN "Svezia" feminine ;
|
||||
|
||||
Danish = regA "danese" ;
|
||||
English = regA "inglese" ;
|
||||
|
||||
DanishLang = regN "danese" ;
|
||||
EnglishLang = regN "inglese" ;
|
||||
} ;
|
||||
22
lib/resource/italian/LangIta.gf
Normal file
22
lib/resource/italian/LangIta.gf
Normal file
@@ -0,0 +1,22 @@
|
||||
--# -path=.:../romance:../abstract:../../prelude
|
||||
|
||||
concrete LangIta of Lang =
|
||||
RulesIta,
|
||||
ClauseIta,
|
||||
StructuralIta,
|
||||
BasicIta,
|
||||
TimeIta,
|
||||
CountryIta
|
||||
|
||||
** open Prelude, ParadigmsIta in {
|
||||
|
||||
lin
|
||||
AdvDate d = prefixSS "il" d ;
|
||||
AdvTime t = prefixSS "alle" t ;
|
||||
NWeekday w = w ;
|
||||
PNWeekday w = mkPN (w.s ! singular) w.g ;
|
||||
|
||||
PNCountry x = x ;
|
||||
ANationality x = x ;
|
||||
NLanguage x = x ;
|
||||
}
|
||||
@@ -84,7 +84,7 @@ oper
|
||||
"e" => {s = numForms vino (vin + "i")
|
||||
; g = Masc} ;
|
||||
"à" | "ù" => {s = numForms vino vino
|
||||
; g = Fem}
|
||||
; g = Fem} ;
|
||||
_ => {s = numForms vino vino
|
||||
; g = Masc}
|
||||
} ;
|
||||
@@ -471,6 +471,7 @@ param Pred = pred | indip ;
|
||||
oper mkTal : Str -> Str -> Str -> {s : DForm => Str} =
|
||||
\två -> \tolv -> \tjugo ->
|
||||
{s = table {ental _ => två ; ton => tolv ; tiotal => tjugo}} ;
|
||||
oper spl : Str -> {s : Str ; n : Number} = \s -> {s = s ; n = Pl} ;
|
||||
oper spl : Str -> {s : Gender => Str ; n : Number} = \s -> {s = \\_ =>
|
||||
s ; n = Pl} ;
|
||||
oper mille : Number => Str = table {Sg => "mille" ; Pl => "mila"} ;
|
||||
}
|
||||
|
||||
@@ -1,11 +1,18 @@
|
||||
concrete NumeralsIta of Numerals = open Prelude, TypesIta, MorphoIta in {
|
||||
concrete NumeralsIta of Numerals = open Prelude, TypesIta, MorphoIta, SyntaxIta in {
|
||||
|
||||
|
||||
lincat Digit = {s : DForm => Str} ;
|
||||
lincat Sub10 = {s : DForm => Str ; n : Number} ;
|
||||
lincat Sub100 = {s : Str ; n : Number} ;
|
||||
lincat Sub1000 = {s : Str ; n : Number} ;
|
||||
lincat Sub1000000 = {s : Str} ;
|
||||
lincat
|
||||
--Digit = {s : DForm => Str} ;
|
||||
--lincat Sub10 = {s : DForm => Str ; n : Number} ;
|
||||
--lincat Sub100 = {s : Str ; n : Number} ;
|
||||
--lincat Sub1000 = {s : Str ; n : Number} ;
|
||||
--lincat Sub1000000 = {s : Str} ;
|
||||
Numeral = {s : Gender => Str ; n : Number} ;
|
||||
Digit = {s : DForm => Str} ;
|
||||
Sub10 = {s : DForm => Gender => Str ; n : Number} ;
|
||||
Sub100 = {s : Gender => Str ; n : Number} ;
|
||||
Sub1000 = {s : Gender => Str ; n : Number} ;
|
||||
Sub1000000 = {s : Gender => Str ; n : Number} ;
|
||||
|
||||
|
||||
lin num x = x ;
|
||||
@@ -19,19 +26,20 @@ lin n7 = mkTal "sette" "diciassette" "settanta" ;
|
||||
lin n8 = mkTal "otto" "diciotto" "ottanta" ;
|
||||
lin n9 = mkTal "nove" "diciannove" "novanta" ;
|
||||
|
||||
lin pot01 = {s = table {ental pred => [] ; _ => "uno"} ; n = Sg} ;
|
||||
lin pot0 d = {s = table {f => d.s ! f} ; n = Pl} ;
|
||||
lin pot01 = {s = table {
|
||||
ental pred => \\_ => [] ; _ => genForms "uno" "una"} ; n = Sg} ;
|
||||
lin pot0 d = {s =\\f,g => d.s ! f ; n = Pl} ;
|
||||
lin pot110 = spl "dieci" ;
|
||||
lin pot111 = spl "undici" ;
|
||||
lin pot1to19 d = spl (d.s ! ton) ;
|
||||
lin pot0as1 n = {s = n.s ! ental indip ; n = n.n} ;
|
||||
lin pot1 d = spl (d.s ! tiotal) ;
|
||||
lin pot1plus d e = spl (d.s ! tiotal ++ e.s ! ental indip) ;
|
||||
lin pot1as2 n = {s = n.s ; n = n.n} ;
|
||||
lin pot2 d = spl (d.s ! ental pred ++ "cento") ;
|
||||
lin pot2plus d e = spl (d.s ! ental pred ++ "cento" ++ e.s) ;
|
||||
lin pot2as3 n = {s = n.s ; n = n.n} ;
|
||||
lin pot3 n = ss (n.s ++ mille ! n.n) ;
|
||||
lin pot3plus n m = ss (n.s ++ mille ! n.n ++ m.s) ;
|
||||
lin pot1plus d e = {s = \\g => d.s ! tiotal ++ e.s ! ental indip ! g ; n = Pl} ;
|
||||
lin pot1as2 n = n ;
|
||||
lin pot2 d = spl (d.s ! ental pred ! Masc ++ "cento") ;
|
||||
lin pot2plus d e = {s = \\g => d.s ! ental pred ! Masc ++ "cento" ++ e.s ! g ; n = Pl} ;
|
||||
lin pot2as3 n = n ;
|
||||
lin pot3 n = spl (n.s ! Masc ++ mille ! n.n) ;
|
||||
lin pot3plus n m = {s = \\g => n.s ! Masc ++ mille ! n.n ++ m.s ! g ; n = Pl} ;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,113 +1,92 @@
|
||||
--# -path=.:../romance:../abstract:../../prelude
|
||||
|
||||
concrete StructuralIta of Structural = CategoriesIta, NumeralsIta **
|
||||
open SyntaxIta, MorphoIta, Prelude in {
|
||||
open SyntaxIta, MorphoIta, BeschIta, Prelude in {
|
||||
|
||||
lin
|
||||
INP = pronNounPhrase pronJe ;
|
||||
ThouNP = pronNounPhrase pronTu ;
|
||||
HeNP = pronNounPhrase pronIl ;
|
||||
SheNP = pronNounPhrase pronElle ;
|
||||
WeNumNP n = pronNounPhrase (pronWithNum pronNous n) ;
|
||||
YeNumNP n = pronNounPhrase (pronWithNum pronVous n) ;
|
||||
YouNP = pronNounPhrase pronVous ;
|
||||
TheyNP = pronNounPhrase pronIls ;
|
||||
|
||||
-- Here is a point where the API is really inadequate for French,
|
||||
-- which distinguishes between masculine and feminine "they".
|
||||
-- The following solution is not attractive.
|
||||
|
||||
--- TheyNP = pronNounPhrase (variants {pronIls ; pronElles}) ;
|
||||
|
||||
ThisNP = mkNameNounPhrase ["questo"] Masc ;
|
||||
ThatNP = mkNameNounPhrase ["quello"] Masc ;
|
||||
TheseNumNP n = mkNameNounPhrase ("questi" ++ n.s ! Masc) Masc ;
|
||||
ThoseNumNP n = mkNameNounPhrase ("quelli" ++ n.s ! Masc) Masc ;
|
||||
|
||||
ItNP = pronNounPhrase pronIl ;
|
||||
|
||||
EveryDet = chaqueDet ;
|
||||
AllMassDet = mkDeterminer singular "tutto" "tutta" ;
|
||||
AllNumDet = mkDeterminerNum plural ["tutti i"] ["tutte le"] ; --- gli
|
||||
WhichDet = quelDet ;
|
||||
WhichNumDet = mkDeterminerNum plural "quali" "quali" ;
|
||||
MostsDet = plupartDet ;
|
||||
MostDet = mkDeterminer1 singular (["la maggior parte"] ++ elisDe) ; --- de
|
||||
SomeDet = mkDeterminer1 singular "qualche" ;
|
||||
SomeNumDet = mkDeterminerNum plural "alcuni" "alcune" ;
|
||||
NoDet = mkDeterminer singular "nessuno" "nessuna" ; --- non
|
||||
NoNumDet = mkDeterminerNum plural "nessuni" "nessune" ; ---- ??
|
||||
AnyDet = mkDeterminer1 singular "qualche" ; ---
|
||||
AnyNumDet = mkDeterminerNum plural "alcuni" "alcune" ; ---
|
||||
ManyDet = mkDeterminer plural "molti" "molte" ;
|
||||
MuchDet = mkDeterminer1 singular "molto" ;
|
||||
ThisDet = mkDeterminer singular "questo" "questa" ;
|
||||
ThatDet = mkDeterminer singular "quello" "quella" ;
|
||||
TheseNumDet = mkDeterminerNum plural "questi" "queste" ; --- ci
|
||||
ThoseNumDet = mkDeterminerNum plural "quelli" "quelle" ; --- quegli
|
||||
|
||||
UseNumeral n = {s = \\_ => n.s} ; ---- gender
|
||||
|
||||
HowIAdv = commentAdv ;
|
||||
WhenIAdv = quandAdv ;
|
||||
WhereIAdv = ouAdv ;
|
||||
WhyIAdv = pourquoiAdv ;
|
||||
|
||||
AndConj = etConj ;
|
||||
OrConj = ouConj ;
|
||||
BothAnd = etetConj ;
|
||||
EitherOr = ououConj ;
|
||||
NeitherNor = niniConj ; --- requires ne !
|
||||
IfSubj = siSubj ;
|
||||
WhenSubj = quandSubj ;
|
||||
|
||||
PhrYes = ouiPhr ;
|
||||
PhrNo = nonPhr ; --- and also Si!
|
||||
|
||||
VeryAdv = ss "molto" ;
|
||||
TooAdv = ss "troppo" ;
|
||||
OtherwiseAdv = ss "altramente" ;
|
||||
ThereforeAdv = ss "quindi" ;
|
||||
|
||||
EverybodyNP = normalNounPhrase (\\c => prepCase c ++ "tutti") Masc Pl ;
|
||||
SomebodyNP = mkNameNounPhrase ["qualcuno"] Masc ;
|
||||
NobodyNP = mkNameNounPhrase ["nessuno"] Masc ; --- ne
|
||||
EverythingNP = mkNameNounPhrase ["tutto"] Masc ;
|
||||
SomethingNP = mkNameNounPhrase ["qualche cosa"] Masc ;
|
||||
NothingNP = mkNameNounPhrase ["niente"] Masc ; --- ne
|
||||
|
||||
CanVV = mkVerbVerbDir (verbPres (potere_72 "potere") AHabere) ;
|
||||
CanKnowVV = mkVerbVerbDir (verbPres (sapere_81 "sapere") AHabere) ;
|
||||
MustVV = mkVerbVerbDir (verbPres (dovere_50 "dovere") AHabere) ;
|
||||
WantVV = mkVerbVerbDir (verbPres (volere_99 "volere") AHabere) ;
|
||||
|
||||
EverywhereNP = ss "dappertutto" ;
|
||||
SomewhereNP = ss ["qualche parte"] ; --- ne - pas
|
||||
NowhereNP = ss ["nessun parte"] ;
|
||||
|
||||
AlthoughSubj = ss "benché" ** {m = Con} ;
|
||||
|
||||
AlmostAdv = ss "quasi" ;
|
||||
QuiteAdv = ss "assai" ;
|
||||
|
||||
InPrep = justCase (CPrep P_in) ;
|
||||
OnPrep = justCase (CPrep P_su) ;
|
||||
ToPrep = justCase dative ; ---
|
||||
ThroughPrep = justPrep "per" ;
|
||||
AbovePrep = justPrep "sopra" ;
|
||||
UnderPrep = justPrep "sotto" ;
|
||||
InFrontPrep = justPrep "davanti" ;
|
||||
BehindPrep = justPrep "dietro" ;
|
||||
BetweenPrep = justPrep "tra" ;
|
||||
FromPrep = justCase (CPrep P_da) ;
|
||||
BeforePrep = justPrep "prima" ;
|
||||
DuringPrep = justPrep "durante" ;
|
||||
AfterPrep = justPrep "dopo" ;
|
||||
WithPrep = justCase (CPrep P_con) ;
|
||||
WithoutPrep = justPrep "senza" ;
|
||||
ByMeansPrep = justPrep "per" ;
|
||||
PossessPrep = justCase genitive ;
|
||||
PartPrep = justCase genitive ; ---
|
||||
AgentPrep = justCase (CPrep P_da) ;
|
||||
UseNumeral n = {s = \\g => n.s !g ; n = n.n} ;
|
||||
|
||||
above_Prep = justPrep "sopra" ;
|
||||
after_Prep = justPrep "dopo" ;
|
||||
all8mass_Det = mkDeterminer singular "tutto" "tutta" ;
|
||||
all_NDet = mkDeterminerNum ["tutti i"] ["tutte le"] ; --- gli
|
||||
almost_Adv = ss "quasi" ;
|
||||
although_Subj = ss "benché" ** {m = Con} ;
|
||||
and_Conj = etConj ;
|
||||
because_Subj = ss "perché" ** {m = Ind} ;
|
||||
before_Prep = justPrep "prima" ;
|
||||
behind_Prep = justPrep "dietro" ;
|
||||
between_Prep = justPrep "tra" ;
|
||||
both_AndConjD = etetConj ;
|
||||
by8agent_Prep = justCase (CPrep P_da) ;
|
||||
by8means_Prep = justPrep "per" ;
|
||||
can8know_VV = mkVerbVerbDir (verbPres (sapere_78 "sapere") AHabere) ;
|
||||
can_VV = mkVerbVerbDir (verbPres (potere_69 "potere") AHabere) ;
|
||||
during_Prep = justPrep "durante" ;
|
||||
either8or_ConjD = ououConj ;
|
||||
everybody_NP = normalNounPhrase (\\c => prepCase c ++ "tutti") Masc Pl ;
|
||||
every_Det = chaqueDet ;
|
||||
everything_NP = mkNameNounPhrase ["tutto"] Masc ;
|
||||
everywhere_Adv = ss "dappertutto" ;
|
||||
from_Prep = justCase (CPrep P_da) ;
|
||||
he_NP = pronNounPhrase pronIl ;
|
||||
how_IAdv = commentAdv ;
|
||||
how8many_IDet = {s = genForms "quanti" "quante" ; n = Pl} ;
|
||||
if_Subj = siSubj ;
|
||||
in8front_Prep = justPrep "davanti" ;
|
||||
i_NP = pronNounPhrase pronJe ;
|
||||
in_Prep = justCase (CPrep P_in) ;
|
||||
it_NP = pronNounPhrase pronIl ;
|
||||
many_Det = mkDeterminer plural "molti" "molte" ;
|
||||
most8many_Det = plupartDet ;
|
||||
most_Det = mkDeterminer1 singular (["la maggior parte"] ++ elisDe) ; --- de
|
||||
much_Det = mkDeterminer1 singular "molto" ;
|
||||
must_VV = mkVerbVerbDir (verbPres (dovere_47 "dovere") AHabere) ;
|
||||
no_Phr = nonPhr ; --- and also Si!
|
||||
on_Prep = justCase (CPrep P_su) ;
|
||||
or_Conj = ouConj ;
|
||||
otherwise_Adv = ss "altramente" ;
|
||||
part_Prep = justCase genitive ; ---
|
||||
possess_Prep = justCase genitive ;
|
||||
quite_Adv = ss "assai" ;
|
||||
she_NP = pronNounPhrase pronElle ;
|
||||
so_Adv = ss "così" ;
|
||||
somebody_NP = mkNameNounPhrase ["qualcuno"] Masc ;
|
||||
some_Det = mkDeterminer1 singular "qualche" ;
|
||||
some_NDet = mkDeterminerNum "alcuni" "alcune" ;
|
||||
something_NP = mkNameNounPhrase ["qualche cosa"] Masc ;
|
||||
somewhere_Adv = ss ["qualche parte"] ; --- ne - pas
|
||||
that_Det = mkDeterminer singular "quello" "quella" ;
|
||||
that_NP = mkNameNounPhrase ["quello"] Masc ;
|
||||
therefore_Adv = ss "quindi" ;
|
||||
these_NDet = mkDeterminerNum "questi" "queste" ; --- ci
|
||||
they_NP = pronNounPhrase pronIls ;
|
||||
they8fem_NP = pronNounPhrase pronIls ;
|
||||
this_Det = mkDeterminer singular "questo" "questa" ;
|
||||
this_NP = mkNameNounPhrase ["questo"] Masc ;
|
||||
those_NDet = mkDeterminerNum "quelli" "quelle" ; --- quegli
|
||||
thou_NP = pronNounPhrase pronTu ;
|
||||
through_Prep = justPrep "per" ;
|
||||
too_Adv = ss "troppo" ;
|
||||
to_Prep = justCase dative ; ---
|
||||
under_Prep = justPrep "sotto" ;
|
||||
very_Adv = ss "molto" ;
|
||||
want_VV = mkVerbVerbDir (verbPres (volere_96 "volere") AHabere) ;
|
||||
we_NP = pronNounPhrase pronNous ;
|
||||
what8one_IP = intPronWhat singular ;
|
||||
what8many_IP = intPronWhat plural ;
|
||||
when_IAdv = quandAdv ;
|
||||
when_Subj = quandSubj ;
|
||||
where_IAdv = ouAdv ;
|
||||
which8many_IDet = mkDeterminerNum "quali" "quali" ** {n = Pl} ;
|
||||
which8one_IDet = quelDet ;
|
||||
who8one_IP = intPronWho singular ;
|
||||
who8many_IP = intPronWho plural ;
|
||||
why_IAdv = pourquoiAdv ;
|
||||
without_Prep = justPrep "senza" ;
|
||||
with_Prep = justCase (CPrep P_con) ;
|
||||
ye_NP = pronNounPhrase pronVous ;
|
||||
yes_Phr = ouiPhr ;
|
||||
you_NP = pronNounPhrase pronVous ;
|
||||
}
|
||||
|
||||
@@ -145,6 +145,8 @@ oper
|
||||
lequel.s ! RComplex g n c
|
||||
} ;
|
||||
|
||||
pronIl = MorphoIta.pronIl ;
|
||||
|
||||
-- Interrogative pronouns
|
||||
|
||||
nounIntPron = \n, mec ->
|
||||
@@ -263,5 +265,7 @@ oper
|
||||
ouiPhr = ss ["Sì ."] ;
|
||||
nonPhr = ss ["No ."] ;
|
||||
|
||||
negNe = "non" ; negPas = [] ;
|
||||
|
||||
}
|
||||
|
||||
|
||||
32
lib/resource/italian/TimeIta.gf
Normal file
32
lib/resource/italian/TimeIta.gf
Normal file
@@ -0,0 +1,32 @@
|
||||
concrete TimeIta of Time = NumeralsIta **
|
||||
open Prelude, MorphoIta, CategoriesIta, ParadigmsIta in {
|
||||
|
||||
lincat
|
||||
Date = SS ;
|
||||
Weekday = N ;
|
||||
Hour = SS ;
|
||||
Minute = SS ;
|
||||
Time = SS ;
|
||||
|
||||
lin
|
||||
DayDate day = ss (day.s ! singular) ;
|
||||
DayTimeDate day time = ss (day.s ! singular ++ "alle" ++ time.s) ;
|
||||
|
||||
FormalTime h m = ss ("alle" ++ h.s ++ "e" ++ m.s) ;
|
||||
PastTime h m = ss ("alle" ++ h.s ++ "e" ++ h.s) ;
|
||||
ToTime h m = ss ("alle" ++ h.s ++ "meno" ++ m.s) ;
|
||||
ExactTime h = ss (h.s ++ "esattamento") ;
|
||||
|
||||
NumHour n = ss (n.s ! feminine) ;
|
||||
NumMinute n = ss (n.s ! feminine) ;
|
||||
|
||||
monday = regN "lunedì" ;
|
||||
tuesday = regN "martedì" ;
|
||||
wednesday = regN "mercoledì" ;
|
||||
thursday = regN "giovedì" ;
|
||||
friday = regN "venerdì" ;
|
||||
saturday = regN "sabato" ;
|
||||
sunday = regN "domenica" ;
|
||||
|
||||
|
||||
} ;
|
||||
@@ -1547,11 +1547,13 @@ oper
|
||||
dit = dire.p2 ;
|
||||
toujours = sats.s5 ;
|
||||
directement = sats.s6 ;
|
||||
ne = if_then_Str b [] "ne" ; ---- negNe ;
|
||||
pas = if_then_Str b [] "pas" ; ---- negPas ;
|
||||
ne = if_then_Str b [] negNe ;
|
||||
pas = if_then_Str b [] negPas ;
|
||||
oui = sats.s7 ! b
|
||||
in
|
||||
je ++ ne ++ lui ++ ai ++ toujours ++ pas ++ dit ++ directement ++ oui
|
||||
} ;
|
||||
|
||||
negNe, negPas : Str ;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user