diff --git a/lib/src/Make.hs b/lib/src/Make.hs index 31cfb2d49..833b8e91d 100644 --- a/lib/src/Make.hs +++ b/lib/src/Make.hs @@ -39,6 +39,7 @@ langsCoding = [ (("english", "Eng"),""), (("finnish", "Fin"),""), (("french", "Fre"),"Romance"), + (("hebrew", "Heb"),""), (("hindi", "Hin"),"Hindustani"), (("german", "Ger"),""), (("interlingua","Ina"),""), @@ -74,10 +75,10 @@ langsLangAll = langs langsLang = langs `except` langsIncomplete -- languagues that have notpresent marked -langsPresent = langsLang `except` ["Chi","Jpn","Nep","Pes","Snd","Tha","Thb"] +langsPresent = langsLang `except` ["Chi","Heb","Jpn","Nep","Pes","Snd","Tha","Thb"] -- languages for which Lang can be compiled but which are incomplete -langsIncomplete = ["Amh","Ara","Lat","Mlt","Tur","Thb"] +langsIncomplete = ["Amh","Ara","Heb","Lat","Mlt","Tur","Thb"] -- languages for which to compile Try langsAPI = langsLang `except` langsIncomplete diff --git a/lib/src/hebrew/AllHeb.gf b/lib/src/hebrew/AllHeb.gf new file mode 100644 index 000000000..842c56a02 --- /dev/null +++ b/lib/src/hebrew/AllHeb.gf @@ -0,0 +1,3 @@ +--# -path=.:../abstract:../common:prelude + +concrete AllHeb of AllHebAbs = LangHeb ; diff --git a/lib/src/hebrew/AllHebAbs.gf b/lib/src/hebrew/AllHebAbs.gf new file mode 100644 index 000000000..9d171a2c5 --- /dev/null +++ b/lib/src/hebrew/AllHebAbs.gf @@ -0,0 +1,3 @@ +--# -path=.:../abstract:../common:prelude + +abstract AllHebAbs = Lang ; diff --git a/lib/src/hebrew/LexiconHeb.gf b/lib/src/hebrew/LexiconHeb.gf index c5f4ca734..ff55af697 100644 --- a/lib/src/hebrew/LexiconHeb.gf +++ b/lib/src/hebrew/LexiconHeb.gf @@ -13,64 +13,64 @@ lin --airplane_N = mkN "" "" Masc; --alas_Interj =""; --already_Adv = "" ; -animal_N = mkN "Hyh" "" Fem; +animal_N = mkN "חיה" "" Fem; --answer_V2S = dirV2 (mkVPaal "") ; -apartment_N = mkN "dyrh" "" Fem; -apple_N = mkN "tpwH" "" Masc; -art_N = mkN "yZyrh" "" Fem; +apartment_N = mkN "דירה" "" Fem; +apple_N = mkN "תפוח" "" Masc; +art_N = mkN "יצירה" "" Fem; ashes_N = mkN "" "" Masc; --ask_V2Q = "" ; -baby_N = mkN "tynwq" "" Masc; +baby_N = mkN "תינוק" "" Masc; --back_N = mkN "" "" Masc; -bad_A = regA "rO" ; +bad_A = regA "רע" ; bank_N = mkN "" "" Masc; -bark_N = mkN "bnq" "" Masc; -beautiful_A = regA "yph" ; +bark_N = mkN "בנק" "" Masc; +beautiful_A = regA "יפה" ; --become_VA =""; -beer_N = mkN "byrh" "" Fem; +beer_N = mkN "בירה" "" Fem; --beg_V2V = dirV2 (mkVPaal "") ; ---belly_N = mkN "bTN" "" Fem; -big_A = regA "gdwl"; +--belly_N = mkN "בטן" "" Fem; +big_A = regA "גדול"; --bike_N = mkN "" "" Masc; -bird_N = mkN "Zypwr" "" Fem; +bird_N = mkN "ציפור" "" Fem; --bite_V2 = dirV2 (mkVPaal "") ; -black_A = regA "sHwr" ; +black_A = regA "שחור" ; --blood_N = mkN "" "" Masc; --blow_V = mkVPaal "" ; -blue_A = regA "Hkwl" ; -boat_N = mkN "Syrh" "" Fem; -bone_N = mkN "OZm" "" Masc; -book_N = mkN "Spr" "" Masc; +blue_A = regA "חכול" ; +boat_N = mkN "סירה" "" Fem; +bone_N = mkN "עצמ" "" Masc; +book_N = mkN "ספר" "" Masc; --boot_N = mkN "" "" Masc; --boss_N = mkN "" "" Masc; --both fem and masc -boy_N = mkN "yld" "" Masc; -bread_N = mkN "lHm" "" Masc; +boy_N = mkN "ילד" "" Masc; +bread_N = mkN "לחמ" "" Masc; --break_V2 = dirV2 (mkVPaal "") ; -breast_N = mkN "HZh" "" Masc; +breast_N = mkN "חצה" "" Masc; --breathe_V = mkVPaal "" ; --broad_A = "" ; -brown_A = regA "Hwm" ; +brown_A = regA "חומ" ; --burn_V = mkVPaal "" ; --butter_N = mkN "" "" Masc; ---buy_V2 = dirV2 (mkVPaal "qnh") ; +--buy_V2 = dirV2 (mkVPaal "קנה") ; {-camera_N = mkN "" "" Masc; cap_N = mkN "" "" Masc; car_N = mkN "" "" Masc; carpet_N = mkN "" "" Masc; -cat_N = mkN "Htwl" "" Masc; +cat_N = mkN "חתול" "" Masc; ceiling_N = mkN "" "" Masc; cheese_N = mkN "" "" Masc; child_N = mkN "" "" Masc; church_N = mkN "" "" Masc; city_N = mkN "" "" Masc; -} -clean_A = regA "nqy" ; -clever_A = regA "Hkm" ; -close_V2 = dirV2 (mkVPaal "Sgr") ; +clean_A = regA "נקי" ; +clever_A = regA "חכמ" ; +close_V2 = dirV2 (mkVPaal "סגר") ; cloud_N = mkN "" "" Masc; coat_N = mkN "" "" Masc; -cold_A = regA "qr" ; ---come_V = mkVPaal "bA" ; +cold_A = regA "קר" ; +--come_V = mkVPaal "בא" ; computer_N = mkN "" "" Masc; --correct_A = "" ; --count_V2 = dirV2 (mkVPaal "") ; @@ -80,60 +80,60 @@ cow_N = mkN "" "" Masc; --cut_V2 = dirV2 (mkVPaal "") ; day_N = mkN "" "" Masc; --die_V = mkVPaal "" ; -dig_V = mkVPaal "Hpr" ; +dig_V = mkVPaal "חפר" ; --dirty_A = "" ; --distance_N3 = mkN "" "" Masc; -do_V2 = dirV2 (mkVPaal "Osh") ; +do_V2 = dirV2 (mkVPaal "עשה") ; doctor_N = mkN "" "" Masc; dog_N = mkN "" "" Masc; door_N = mkN "" "" Masc; -drink_V2 = dirV2 (mkVPaal "sth") ; -dry_A = regA "ybs" ; +drink_V2 = dirV2 (mkVPaal "שתה") ; +dry_A = regA "יבש" ; --dull_A = "" ; dust_N = mkN "" "" Masc; ear_N = mkN "" "" Masc; earth_N = mkN "" "" Masc; --easy_A2V = "" ; -eat_V2 = dirV2 (mkVPaal "Akl") ; +eat_V2 = dirV2 (mkVPaal "אכל") ; egg_N = mkN "" "" Masc; -empty_A = regA "ryq" ; +empty_A = regA "ריק" ; enemy_N = mkN "" "" Masc; eye_N = mkN "" "" Masc; factory_N = mkN "" "" Masc; -fall_V = mkVPaal "npl" ; ---far_Adv = "rHwq" ; +fall_V = mkVPaal "נפל" ; +--far_Adv = "רחוק" ; fat_N = mkN "" "" Masc; --father_N2 = mkN "" "" Masc; --fear_V2 = dirV2 (mkVPaal "") ; --fear_VS = mkVPaal "" ; feather_N = mkN "" "" Masc; -fight_V2 = dirV2 (mkVPaal "lHm") ; --nipal -find_V2 = dirV2 (mkVPaal "mZA") ; +fight_V2 = dirV2 (mkVPaal "לחמ") ; --nipal +find_V2 = dirV2 (mkVPaal "מצא") ; fingernail_N = mkN "" "" Masc; fire_N = mkN "" "" Masc; fish_N = mkN "" "" Masc; --float_V = mkVPaal "" ; floor_N = mkN "" "" Masc; -flow_V = mkVPaal "prH" ; +flow_V = mkVPaal "פרח" ; flower_N = mkN "" "" Masc; --fly_V = mkVPaal "" ; fog_N = mkN "" "" Masc; foot_N = mkN "" "" Masc; forest_N = mkN "" "" Masc; -forget_V2 = dirV2 (mkVPaal "skH") ; -freeze_V = mkVPaal "qpA" ; +forget_V2 = dirV2 (mkVPaal "שכח") ; +freeze_V = mkVPaal "קפא" ; fridge_N = mkN "" "" Masc; friend_N = mkN "" "" Masc; fruit_N = mkN "" "" Masc; -full_A = regA "mlA" ; +full_A = regA "מלא" ; --fun_AV = "" ; garden_N = mkN "" "" Masc; girl_N = mkN "" "" Masc; --give_V3 = "" ; glove_N = mkN "" "" Masc; -go_V = mkVPaal "hlk" ; +go_V = mkVPaal "הלכ" ; gold_N = mkN "" "" Masc; -good_A = regA "Twb" ; +good_A = regA "טוב" ; grammar_N = mkN "" "" Masc; grass_N = mkN "" "" Masc; guts_N = mkN "" "" Masc; @@ -143,51 +143,51 @@ harbour_N = mkN "" "" Masc; hat_N = mkN "" "" Masc; --hate_V2 = dirV2 (mkVPaal "") ; head_N = mkN "" "" Masc; -hear_V2 = dirV2 (mkVPaal "smO") ; +hear_V2 = dirV2 (mkVPaal "שמע") ; heart_N = mkN "" "" Masc; -heavy_A = regA "kbd" ; +heavy_A = regA "כבד" ; hill_N = mkN "" "" Masc; -hit_V2 = dirV2 (mkVPaal "pgO") ; -hold_V2 = dirV2 (mkVPaal "tpS") ; +hit_V2 = dirV2 (mkVPaal "פגע") ; +hold_V2 = dirV2 (mkVPaal "תפס") ; --hope_VS = mkVPaal "" ; horn_N = mkN "" "" Masc; horse_N = mkN "" "" Masc; -hot_A = regA "Hm" ; -house_N = mkN "byt" "btyM" Masc; +hot_A = regA "חמ" ; +house_N = mkN "בית" "בתים" Masc; --hunt_V2 = dirV2 (mkVPaal "") ; husband_N = mkN "" "" Masc; ice_N = mkN "" "" Masc; -important_A = regA "Hswb" ; +important_A = regA "חשוב" ; industry_N = mkN "" "" Masc; iron_N = mkN "" "" Masc; -john_PN = mkPN "gwN" Masc; -jump_V = mkVPaal "qpZ" ; -kill_V2 = dirV2 (mkVPaal "hrg") ; +john_PN = mkPN "גון" Masc; +jump_V = mkVPaal "קפצ" ; +kill_V2 = dirV2 (mkVPaal "הרג") ; king_N = mkN "" "" Masc; knee_N = mkN "" "" Masc; -know_V2 = dirV2 (mkVPaal "ydO") ; +know_V2 = dirV2 (mkVPaal "ידע") ; --know_VQ = mkVPaal "" ; --know_VS = mkVPaal "" ; lake_N = mkN "" "" Masc; lamp_N = mkN "" "" Masc; language_N = mkN "" "" Masc; -laugh_V = mkVPaal "ZHq" ; +laugh_V = mkVPaal "צחק" ; leaf_N = mkN "" "" Masc; -learn_V2 = dirV2 (mkVPaal "lmd") ; -leather_N = mkN "Owr" Masc; -- no pl -leave_V2 = dirV2 (mkVPaal "Ozb") ; +learn_V2 = dirV2 (mkVPaal "למד") ; +leather_N = mkN "עור" Masc; -- no pl +leave_V2 = dirV2 (mkVPaal "עזב") ; --left_Ord = ""; -lie_V = mkVPaal "sqr" ; -- pial (paal kal) -like_V2 = dirV2 (mkVPaal "Ahb") ; -listen_V2 = dirV2 (mkVPaal "smO") ; -- ---live_V = mkVPaal "Hy" ; +lie_V = mkVPaal "שקר" ; -- pial (paal kal) +like_V2 = dirV2 (mkVPaal "אהב") ; +listen_V2 = dirV2 (mkVPaal "שמע") ; -- +--live_V = mkVPaal "חי" ; liver_N = mkN "" "" Masc; -long_A = regA "Arwk" ; -lose_V2 = dirV2 (mkVPaal "Abd") ; +long_A = regA "ארוכ" ; +lose_V2 = dirV2 (mkVPaal "אבד") ; louse_N = mkN "" "" Masc; love_N = mkN "" "" Masc; -love_V2 = dirV2 (mkVPaal "Ahb") ; -man_N = mkN "Ays" "AnsyM" Masc; +love_V2 = dirV2 (mkVPaal "אהב") ; +man_N = mkN "איש" "אנשים" Masc; --married_A2 = "" ; meat_N = mkN "" "" Masc; milk_N = mkN "" "" Masc; @@ -196,22 +196,22 @@ moon_N = mkN "" "" Masc; mountain_N = mkN "" "" Masc; mouth_N = mkN "" "" Masc; music_N = mkN "" "" Masc; -name_N = mkN "sm" "smwt" Masc; -narrow_A = regA "Zr" ; -near_A = regA "qrwb" ; +name_N = mkN "שמ" "שמות" Masc; +narrow_A = regA "צר" ; +near_A = regA "קרוב" ; neck_N = mkN "" "" Masc; -new_A = regA "Hds" ; -newspaper_N = mkN "Otwn" "Otwnym" Masc; +new_A = regA "חדש" ; +newspaper_N = mkN "עתונ" "עתונימ" Masc; night_N = mkN "" "" Masc; nose_N = mkN "" "" Masc; now_Adv ={s= ""} ; number_N = mkN "" "" Masc; -oil_N = mkN "smN" Masc; -- Mass noun -old_A = regA "ysn" ; -open_V2 = dirV2 (mkVPaal "ptH") ; -paint_V2A = dirV2 (mkVPaal "Zyr") ; +oil_N = mkN "שמן" Masc; -- Mass noun +old_A = regA "ישנ" ; +open_V2 = dirV2 (mkVPaal "פתח") ; +paint_V2A = dirV2 (mkVPaal "ציר") ; paper_N = mkN "" "" Masc; -paris_PN = mkPN "pryz" Fem; +paris_PN = mkPN "פריז" Fem; peace_N = mkN "" "" Masc; pen_N = mkN "" "" Masc; person_N = mkN "" "" Masc; @@ -230,8 +230,8 @@ question_N = mkN "" "" Masc; radio_N = mkN "" "" Masc; rain_N = mkN "" "" Masc; --rain_V0 = mkVPaal "" ; -read_V2 = dirV2 (mkVPaal "qrA") ; -ready_A = regA "mwkn" ; +read_V2 = dirV2 (mkVPaal "קרא") ; +ready_A = regA "מוכנ" ; reason_N = mkN "" "" Masc; --red_A = "" ; religion_N = mkN "" "" Masc; @@ -256,124 +256,124 @@ school_N = mkN "" "" Masc; science_N = mkN "" "" Masc; --scratch_V2 = dirV2 (mkVPaal "") ; sea_N = mkN "" "" Masc; -see_V2 = dirV2 (mkVPaal "rAh") ; +see_V2 = dirV2 (mkVPaal "ראה") ; seed_N = mkN "" "" Masc; --seek_V2 = dirV2 (mkVPaal "") ; sell_V3 = {s = "" }; send_V3 = {s = ""} ; --sew_V = mkVPaal "" ; -sharp_A = regA "Hd" ; +sharp_A = regA "חד" ; sheep_N = mkN "" "" Masc; ship_N = mkN "" "" Masc; shirt_N = mkN "" "" Masc; shoe_N = mkN "" "" Masc; shop_N = mkN "" "" Masc; -short_A = regA "qZr" ; +short_A = regA "קצר" ; silver_N = mkN "" "" Masc; --sing_V = mkVPaal "" ; sister_N = mkN "" "" Masc; -sit_V = mkVPaal "ysb" ; +sit_V = mkVPaal "ישב" ; skin_N = mkN "" "" Masc; sky_N = mkN "" "" Masc; -sleep_V = mkVPaal "ysn" ; --pual -small_A = regA "qTN"; +sleep_V = mkVPaal "ישנ" ; --pual +small_A = regA "קטן"; --smell_V = mkVPaal "" ; smoke_N = mkN "" "" Masc; -smooth_A = regA "Hlq" ; +smooth_A = regA "חלק" ; snake_N = mkN "" "" Masc; snow_N = mkN "" "" Masc; sock_N = mkN "" "" Masc; song_N = mkN "" "" Masc; -speak_V2 = dirV2 (mkVPaal "dbr") ; +speak_V2 = dirV2 (mkVPaal "דבר") ; --spit_V = mkVPaal "" ; --split_V2 = dirV2 (mkVPaal "") ; -squeeze_V2 = dirV2 (mkVPaal "lHZ") ; -stab_V2 = dirV2 (mkVPaal "dqr") ; -stand_V = mkVPaal "Omd" ; +squeeze_V2 = dirV2 (mkVPaal "לחצ") ; +stab_V2 = dirV2 (mkVPaal "דקר") ; +stand_V = mkVPaal "עמד" ; star_N = mkN "" "" Masc; steel_N = mkN "" "" Masc; stick_N = mkN "" "" Masc; stone_N = mkN "" "" Masc; --stop_V = mkVPaal "" ; stove_N = mkN "" "" Masc; -straight_A = regA "ysr" ; +straight_A = regA "ישר" ; student_N = mkN "" "" Masc; stupid_A = regA2 "" ; --suck_V2 = dirV2 (mkVPaal "") ; sun_N = mkN "" "" Masc; --swell_V = mkVPaal "" ; -swim_V = mkVPaal "sHh" ; +swim_V = mkVPaal "שחה" ; --switch8off_V2 = dirV2 (mkVPaal "") ; --switch8on_V2 = dirV2 (mkVPaal "") ; table_N = mkN "" "" Masc; tail_N = mkN "" "" Masc; --talk_V3 = ""; -teach_V2 = dirV2 (mkVPaal "lmd") ; --piel +teach_V2 = dirV2 (mkVPaal "למד") ; --piel teacher_N = mkN "" "" Masc; television_N = mkN "" "" Masc; thick_A = regA2 "" ; thin_A = regA2 "" ; -think_V = mkVPaal "Hsb" ; -- pual -throw_V2 = dirV2 (mkVPaal "zrq") ; -tie_V2 = dirV2 (mkVPaal "hdq") ; --hifhil +think_V = mkVPaal "חשב" ; -- pual +throw_V2 = dirV2 (mkVPaal "זרק") ; +tie_V2 = dirV2 (mkVPaal "הדק") ; --hifhil --today_Adv = "" ; tongue_N = mkN "" "" Masc; tooth_N = mkN "" "" Masc; train_N = mkN "" "" Masc; -travel_V = mkVPaal "nSO" ; +travel_V = mkVPaal "נסע" ; tree_N = mkN "" "" Masc; -turn_V = mkVPaal "pnh" ; -- hiphil +turn_V = mkVPaal "פנה" ; -- hiphil ugly_A = regA2 "" ; uncertain_A = regA2 "" ; --understand_V2 = dirV2 (mkVPaal "") ; university_N = mkN "" "" Masc; village_N = mkN "" "" Masc; -vomit_V = mkVPaal "plT" ; +vomit_V = mkVPaal "פלט" ; --wait_V2 = dirV2 (mkVPaal "") ; war_N = mkN "" "" Masc; -walk_V = mkVPaal "ZOd" ; +walk_V = mkVPaal "צעד" ; warm_A = regA2 "" ; -wash_V2 = dirV2 (mkVPaal "rHZ") ; -watch_V2 = dirV2 (mkVPaal "smr") ; +wash_V2 = dirV2 (mkVPaal "רחצ") ; +watch_V2 = dirV2 (mkVPaal "שמר") ; water_N = mkN "" "" Masc; wet_A = regA2 "" ; -white_A = regA2 "lbN" ; +white_A = regA2 "לבן" ; wide_A = regA2 "" ; wife_N = mkN "" "" Masc; --win_V2 = dirV2 (mkVPaal "") ; -woman_N = mkN "Aysh" "nsyM" Fem ; +woman_N = mkN "אישה" "נשים" Fem ; wind_N = mkN "" "" Masc; window_N = mkN "" "" Masc; wine_N = mkN "" "" Masc; wing_N = mkN "" "" Masc; --wipe_V2 = dirV2 (mkVPaal "") ; --wonder_VQ = mkVPaal "" ; -wood_N = mkN "OZ" "OZym" Masc; +wood_N = mkN "עצ" "עצימ" Masc; worm_N = mkN "" "" Masc; year_N = mkN "" "" Masc; -write_V2 = dirV2 (mkVPaal "ktb") ; +write_V2 = dirV2 (mkVPaal "כתב") ; yellow_A = regA2 "" ; young_A = regA2 ""; - --man_N = mkN "Ays" "AnsyM" Masc; - --woman_N = mkN "Aysh" "nsyM" Fem ; - --house_N = mkN "byt" "btyM" Masc; - --leg_N = mkN "rgl" "rglyyM" "rglyyM" Fem; - --store_N = mkN "Hnwt" "Hnwywt" Fem; - --chair_N = mkN "kSA" "kSAwt" Masc; - --eyes_N = mkN "OyN" "OynyyM" "OynyyM" Fem; - --spoon_N = mkN "kP" Fem; - --big_A = regA "gdwl"; - --small_A = regA "qTN"; - --green_A = regA "yrwq"; - --delicious_A = regA2 "nhdr"; - --italian_A = regA2 "AyTlqy"; - --write_V2 = dirV2 (mkVPaal "ktb") ; - --finish_V = mkVPaal "gmr" ; - --walk_V = mkVPaal "ZOd" ; - --arrive_V = mkVHifhil2 "ngO" ; - --express_V = mkVHifhil2 "nbO" ; - --love_V2 = dirV2 (mkVPaal "Ahb") ; - --please_V2 = dirV2 (mkVPaal "Spq") ; + --man_N = mkN "איש" "אנשים" Masc; + --woman_N = mkN "אישה" "נשים" Fem ; + --house_N = mkN "בית" "בתים" Masc; + --leg_N = mkN "רגל" "רגליים" "רגליים" Fem; + --store_N = mkN "חנות" "חנויות" Fem; + --chair_N = mkN "כסא" "כסאות" Masc; + --eyes_N = mkN "עין" "עיניים" "עיניים" Fem; + --spoon_N = mkN "כף" Fem; + --big_A = regA "גדול"; + --small_A = regA "קטן"; + --green_A = regA "ירוק"; + --delicious_A = regA2 "נהדר"; + --italian_A = regA2 "איטלקי"; + --write_V2 = dirV2 (mkVPaal "כתב") ; + --finish_V = mkVPaal "גמר" ; + --walk_V = mkVPaal "צעד" ; + --arrive_V = mkVHifhil2 "נגע" ; + --express_V = mkVHifhil2 "נבע" ; + --love_V2 = dirV2 (mkVPaal "אהב") ; + --please_V2 = dirV2 (mkVPaal "ספק") ; } diff --git a/lib/src/hebrew/ParadigmsHeb.gf b/lib/src/hebrew/ParadigmsHeb.gf index 98d57b2dc..1f562adea 100644 --- a/lib/src/hebrew/ParadigmsHeb.gf +++ b/lib/src/hebrew/ParadigmsHeb.gf @@ -14,9 +14,9 @@ mkNoun : (bait,batim,batimD : Str) -> Gender -> Noun = \bait,batim,batimD,g -> { s = table { - Sg => table{Indef => bait ; Def => ("h" +bait)}; - Pl => table{Indef => batim ; Def => ("h" + batim)} ; - Dl => table{Indef => batimD ; Def => ("h" +batimD)} + Sg => table{Indef => bait ; Def => ("ה" +bait)}; + Pl => table{Indef => batim ; Def => ("ה" + batim)} ; + Dl => table{Indef => batimD ; Def => ("ה" +batimD)} } ; g=g ; }; @@ -27,8 +27,8 @@ regNoun2 : Str -> Gender -> Noun = \root,g -> case root of { heret + c@? => table { - Masc => mkNoun root (heret + replaceLastLet (c) + "yM" ) ("") g; - Fem => mkNoun root (heret + replaceLastLet (c) + "wt") ("") g + Masc => mkNoun root (heret + replaceLastLet (c) + "ים" ) ("") g; + Fem => mkNoun root (heret + replaceLastLet (c) + "ות") ("") g } ! g } ; @@ -36,11 +36,11 @@ regNoun : Str -> Noun = \root -> case root of { - malc + "h" => mkNoun root (malc + "wt") ("") Fem ; - mecon + "yt" => mkNoun root (mecon + "ywt") ("") Fem ; -- (it -> iyot) - khan + "wt" => mkNoun root (khan + "ywt") ("") Fem; -- (ut -> uyot) - tsalakh + "t" => mkNoun root (tsalakh + "wt") ("") Fem ; -- (at -> ot) - _ => mkNoun root (root + "yM") ("") Masc + malc + "ה" => mkNoun root (malc + "ות") ("") Fem ; + mecon + "ית" => mkNoun root (mecon + "יות") ("") Fem ; -- (it -> iyot) + khan + "ות" => mkNoun root (khan + "יות") ("") Fem; -- (ut -> uyot) + tsalakh + "ת" => mkNoun root (tsalakh + "ות") ("") Fem ; -- (at -> ot) + _ => mkNoun root (root + "ים") ("") Masc } ; mkN = overload { @@ -86,23 +86,23 @@ regA : Str -> Adj = \root -> case root of { - kaTan + c@? => mkAdj root (kaTan + replaceLastLet (c) + "h") (kaTan + - replaceLastLet (c) + "yM") (kaTan + replaceLastLet (c) + "wt") + kaTan + c@? => mkAdj root (kaTan + replaceLastLet (c) + "ה") (kaTan + + replaceLastLet (c) + "ים") (kaTan + replaceLastLet (c) + "ות") }; regA2 : Str -> Adj = \bwleT - -> mkAdj bwleT ( bwleT + "t") ( bwleT + "yM" ) (bwleT + "wt" ); + -> mkAdj bwleT ( bwleT + "ת") ( bwleT + "ים" ) (bwleT + "ות" ); mkAdj : (_,_,_,_ : Str) -> Adj = \tov,tova,tovim,tovot -> { s = table { Sg => table { Indef => table { Masc => tov ; Fem => tova } ; - Def => table { Masc => ("h" + tov) ; Fem => ("h" + Def => table { Masc => ("ה" + tov) ; Fem => ("ה" + tova) } } ; _ => table { Indef => table {Masc => tovim ; Fem => tovot } ; - Def => table { Masc => ("h" + tovim) ; Fem => ("h" + tovot) } + Def => table { Masc => ("ה" + tovim) ; Fem => ("ה" + tovot) } } } }; diff --git a/lib/src/hebrew/PatternsHeb.gf b/lib/src/hebrew/PatternsHeb.gf index abbeb76d2..ca495bc66 100644 --- a/lib/src/hebrew/PatternsHeb.gf +++ b/lib/src/hebrew/PatternsHeb.gf @@ -4,85 +4,85 @@ flags coding=utf8 ; oper -C1aC2aC3ti = {C1 ="" ; C1C2=""; C2C3 =""; C3="ty"}; -C1aC2aC3nu = { C1 = "" ; C1C2=""; C2C3 =""; C3="nw"}; -C1aC2aC3ta = { C1 = "" ; C1C2=""; C2C3 =""; C3="ta"}; -C1aC2aC3t = { C1 = "" ; C1C2=""; C2C3 =""; C3="t"}; -C1aC2aC3tem = { C1 = "" ; C1C2=""; C2C3 =""; C3="tM"}; -C1aC2aC3ten = { C1 = "" ; C1C2=""; C2C3 =""; C3="tN"}; +C1aC2aC3ti = {C1 ="" ; C1C2=""; C2C3 =""; C3="תי"}; +C1aC2aC3nu = { C1 = "" ; C1C2=""; C2C3 =""; C3="נו"}; +C1aC2aC3ta = { C1 = "" ; C1C2=""; C2C3 =""; C3="תa"}; +C1aC2aC3t = { C1 = "" ; C1C2=""; C2C3 =""; C3="ת"}; +C1aC2aC3tem = { C1 = "" ; C1C2=""; C2C3 =""; C3="תם"}; +C1aC2aC3ten = { C1 = "" ; C1C2=""; C2C3 =""; C3="תן"}; C1aC2aC3 = { C1 = "" ; C1C2=""; C2C3 =""; C3=""}; -C1aC2aC3a = { C1 = "" ; C1C2=""; C2C3 =""; C3="h"}; -C1aC2aC3u = { C1 = "" ; C1C2=""; C2C3 =""; C3="w"}; +C1aC2aC3a = { C1 = "" ; C1C2=""; C2C3 =""; C3="ה"}; +C1aC2aC3u = { C1 = "" ; C1C2=""; C2C3 =""; C3="ו"}; -C1oC2eC3 = { C1 = "" ; C1C2="w"; C2C3 =""; C3=""}; -C1oC2eC3et = { C1 = "" ; C1C2="w"; C2C3 =""; C3="t"}; -C1oC2C3im = { C1 = "" ; C1C2="w"; C2C3 =""; C3="yM"}; -C1oC2C3ot = { C1 = "" ; C1C2="w"; C2C3 =""; C3="wt"}; +C1oC2eC3 = { C1 = "" ; C1C2="ו"; C2C3 =""; C3=""}; +C1oC2eC3et = { C1 = "" ; C1C2="ו"; C2C3 =""; C3="ת"}; +C1oC2C3im = { C1 = "" ; C1C2="ו"; C2C3 =""; C3="ים"}; +C1oC2C3ot = { C1 = "" ; C1C2="ו"; C2C3 =""; C3="ות"}; -eC1C2oC3 = { C1 = "y" ; C1C2=""; C2C3 =""; C3=""}; -niC1C2oC3 = { C1 = "n" ; C1C2=""; C2C3 =""; C3=""}; -tiC1C2oC3 = { C1 = "t" ; C1C2=""; C2C3 =""; C3=""}; -tiC1C2eC3i = { C1 = "t" ; C1C2=""; C2C3 =""; C3="y"}; -tiC1C2eC3o = { C1 = "t" ; C1C2=""; C2C3 =""; C3="w"}; +eC1C2oC3 = { C1 = "י" ; C1C2=""; C2C3 =""; C3=""}; +niC1C2oC3 = { C1 = "נ" ; C1C2=""; C2C3 =""; C3=""}; +tiC1C2oC3 = { C1 = "ת" ; C1C2=""; C2C3 =""; C3=""}; +tiC1C2eC3i = { C1 = "ת" ; C1C2=""; C2C3 =""; C3="י"}; +tiC1C2eC3o = { C1 = "ת" ; C1C2=""; C2C3 =""; C3="ו"}; -yiC1C2oC3 = { C1 = "y" ; C1C2=""; C2C3 =""; C3=""}; -yiC1C2eC3u = { C1 = "y" ; C1C2=""; C2C3 =""; C3="w"}; +yiC1C2oC3 = { C1 = "י" ; C1C2=""; C2C3 =""; C3=""}; +yiC1C2eC3u = { C1 = "י" ; C1C2=""; C2C3 =""; C3="ו"}; -hiC1C2aC3ti = {C1 ="h" ; C1C2=""; C2C3 =""; C3="ty"}; -hiC1C2aC3nu = { C1 = "h" ; C1C2=""; C2C3 =""; C3="nw"}; -hiC1C2aC3ta = { C1 = "h" ; C1C2=""; C2C3 =""; C3="ta"}; -hiC1C2aC3t = { C1 = "h" ; C1C2=""; C2C3 =""; C3="t"}; -hiC1C2aC3tem= { C1 = "h" ; C1C2=""; C2C3 =""; C3="tM"}; -hiC1C2aC3ten = { C1 = "h" ; C1C2=""; C2C3 =""; C3="tN"}; -hiC1C2iC3= { C1 = "h" ; C1C2=""; C2C3 ="y"; C3=""}; -hiC1C2iC3a= { C1 = "h" ; C1C2=""; C2C3 ="y"; C3="h"}; -hiC1C2iC3u = { C1 = "h" ; C1C2=""; C2C3 ="y"; C3="w"}; +hiC1C2aC3ti = {C1 ="ה" ; C1C2=""; C2C3 =""; C3="תי"}; +hiC1C2aC3nu = { C1 = "ה" ; C1C2=""; C2C3 =""; C3="נו"}; +hiC1C2aC3ta = { C1 = "ה" ; C1C2=""; C2C3 =""; C3="תa"}; +hiC1C2aC3t = { C1 = "ה" ; C1C2=""; C2C3 =""; C3="ת"}; +hiC1C2aC3tem= { C1 = "ה" ; C1C2=""; C2C3 =""; C3="תם"}; +hiC1C2aC3ten = { C1 = "ה" ; C1C2=""; C2C3 =""; C3="תן"}; +hiC1C2iC3= { C1 = "ה" ; C1C2=""; C2C3 ="י"; C3=""}; +hiC1C2iC3a= { C1 = "ה" ; C1C2=""; C2C3 ="י"; C3="ה"}; +hiC1C2iC3u = { C1 = "ה" ; C1C2=""; C2C3 ="י"; C3="ו"}; -hitC1C2aC3ti = {C1 ="ht" ; C1C2=""; C2C3 =""; C3="ty"}; -hitC1C2aC3nu = { C1 = "ht" ; C1C2=""; C2C3 =""; C3="nw"}; -hitC1C2aC3ta = { C1 = "ht" ; C1C2=""; C2C3 =""; C3="ta"}; -hitC1C2aC3t = { C1 = "ht" ; C1C2=""; C2C3 =""; C3="t"}; -hitC1C2aC3tem= { C1 = "ht" ; C1C2=""; C2C3 =""; C3="tM"}; -hitC1C2aC3ten = { C1 = "ht" ; C1C2=""; C2C3 =""; C3="tN"}; -hitC1C2iC3= { C1 = "ht" ; C1C2=""; C2C3 ="y"; C3=""}; -hitC1C2iC3a= { C1 = "ht" ; C1C2=""; C2C3 ="y"; C3="h"}; -hitC1C2iC3u = { C1 = "ht" ; C1C2=""; C2C3 ="y"; C3="w"}; +hitC1C2aC3ti = {C1 ="הת" ; C1C2=""; C2C3 =""; C3="תי"}; +hitC1C2aC3nu = { C1 = "הת" ; C1C2=""; C2C3 =""; C3="נו"}; +hitC1C2aC3ta = { C1 = "הת" ; C1C2=""; C2C3 =""; C3="תa"}; +hitC1C2aC3t = { C1 = "הת" ; C1C2=""; C2C3 =""; C3="ת"}; +hitC1C2aC3tem= { C1 = "הת" ; C1C2=""; C2C3 =""; C3="תם"}; +hitC1C2aC3ten = { C1 = "הת" ; C1C2=""; C2C3 =""; C3="תן"}; +hitC1C2iC3= { C1 = "הת" ; C1C2=""; C2C3 ="י"; C3=""}; +hitC1C2iC3a= { C1 = "הת" ; C1C2=""; C2C3 ="י"; C3="ה"}; +hitC1C2iC3u = { C1 = "הת" ; C1C2=""; C2C3 ="י"; C3="ו"}; -titC1C2C3 = { C1 = "tt" ; C1C2=""; C2C3 =""; C3=""}; -titC1C2C3i = { C1 = "tt" ; C1C2=""; C2C3 =""; C3="y"}; -titC1C2C3o = { C1 = "tt" ; C1C2=""; C2C3 =""; C3="w"}; -titC1C2C3nah = { C1 = "tt" ; C1C2=""; C2C3 =""; C3="nah"}; +titC1C2C3 = { C1 = "תת" ; C1C2=""; C2C3 =""; C3=""}; +titC1C2C3i = { C1 = "תת" ; C1C2=""; C2C3 =""; C3="י"}; +titC1C2C3o = { C1 = "תת" ; C1C2=""; C2C3 =""; C3="ו"}; +titC1C2C3nah = { C1 = "תת" ; C1C2=""; C2C3 =""; C3="נaה"}; -yitC1C2C3 = { C1 = "y" ; C1C2=""; C2C3 =""; C3=""}; -yitC1C2C3u = { C1 = "y" ; C1C2=""; C2C3 =""; C3="w"}; +yitC1C2C3 = { C1 = "י" ; C1C2=""; C2C3 =""; C3=""}; +yitC1C2C3u = { C1 = "י" ; C1C2=""; C2C3 =""; C3="ו"}; -hoC1C2C3= { C1 = "ho" ; C1C2=""; C2C3 =""; C3=""}; -hoC1C2C3a= { C1 = "ho" ; C1C2=""; C2C3 =""; C3="h"}; -hoC1C2C3u = { C1 = "ho" ; C1C2=""; C2C3 =""; C3="w"}; +hoC1C2C3= { C1 = "הo" ; C1C2=""; C2C3 =""; C3=""}; +hoC1C2C3a= { C1 = "הo" ; C1C2=""; C2C3 =""; C3="ה"}; +hoC1C2C3u = { C1 = "הo" ; C1C2=""; C2C3 =""; C3="ו"}; eC1C2C3 = { C1 = "a" ; C1C2=""; C2C3 =""; C3=""}; -niC1C2C3 = { C1 = "n" ; C1C2=""; C2C3 =""; C3=""}; +niC1C2C3 = { C1 = "נ" ; C1C2=""; C2C3 =""; C3=""}; -taC1C2aC3 = { C1 = "t" ; C1C2=""; C2C3 =""; C3=""}; -taC1C2eC3i = { C1 = "t" ; C1C2=""; C2C3 =""; C3="y"}; -taC1C2eC3o = { C1 = "t" ; C1C2=""; C2C3 =""; C3="w"}; -taC1C2aC3nah = { C1 = "t" ; C1C2=""; C2C3 =""; C3="nh"}; +taC1C2aC3 = { C1 = "ת" ; C1C2=""; C2C3 =""; C3=""}; +taC1C2eC3i = { C1 = "ת" ; C1C2=""; C2C3 =""; C3="י"}; +taC1C2eC3o = { C1 = "ת" ; C1C2=""; C2C3 =""; C3="ו"}; +taC1C2aC3nah = { C1 = "ת" ; C1C2=""; C2C3 =""; C3="נה"}; -yaC1C2aC3 = { C1 = "y" ; C1C2=""; C2C3 =""; C3=""}; -taC1C2aC3 = { C1 = "t" ; C1C2=""; C2C3 =""; C3=""}; -yaC1C2aC3u = { C1 = "y" ; C1C2=""; C2C3 =""; C3="w"}; -taC1C2aC3nah = { C1 = "t" ; C1C2=""; C2C3 =""; C3="nh"}; +yaC1C2aC3 = { C1 = "י" ; C1C2=""; C2C3 =""; C3=""}; +taC1C2aC3 = { C1 = "ת" ; C1C2=""; C2C3 =""; C3=""}; +yaC1C2aC3u = { C1 = "י" ; C1C2=""; C2C3 =""; C3="ו"}; +taC1C2aC3nah = { C1 = "ת" ; C1C2=""; C2C3 =""; C3="נה"}; -C1uC2aC3 = { C1 = "" ; C1C2="w"; C2C3 =""; C3=""}; -C1uC2aC3nu = { C1 = "" ; C1C2="w"; C2C3 =""; C3=""}; +C1uC2aC3 = { C1 = "" ; C1C2="ו"; C2C3 =""; C3=""}; +C1uC2aC3nu = { C1 = "" ; C1C2="ו"; C2C3 =""; C3=""}; -C1uC2aC3ti = { C1 = "ht" ; C1C2="w"; C2C3 =""; C3="ti"}; -C1uC2aC3t = { C1 = "ht" ; C1C2="w"; C2C3 =""; C3="t"}; -C1uC2aC3tem= { C1 = "ht" ; C1C2="w"; C2C3 =""; C3="tM"}; -C1uC2aC3ten = { C1 = "ht" ; C1C2="w"; C2C3 =""; C3="tN"}; +C1uC2aC3ti = { C1 = "הת" ; C1C2="ו"; C2C3 =""; C3="תi"}; +C1uC2aC3t = { C1 = "הת" ; C1C2="ו"; C2C3 =""; C3="ת"}; +C1uC2aC3tem= { C1 = "הת" ; C1C2="ו"; C2C3 =""; C3="תם"}; +C1uC2aC3ten = { C1 = "הת" ; C1C2="ו"; C2C3 =""; C3="תן"}; } diff --git a/lib/src/hebrew/ResHeb.gf b/lib/src/hebrew/ResHeb.gf index e9da4af47..2024d8deb 100644 --- a/lib/src/hebrew/ResHeb.gf +++ b/lib/src/hebrew/ResHeb.gf @@ -121,13 +121,13 @@ oper } ; replaceLastLet : Str -> Str = \c -> - case c of {"P" => "p" ; "M" => "m" ; "N" => "n" ; "Z." => "Z" ; "K" => "k"; _ => c} ; + case c of {"ף" => "פ" ; "ם" => "מ" ; "ן" => "נ" ; "ץ" => "צ" ; "ך" => "כ"; _ => c} ; Num, Ord : Type = {s : Case => Str; n : Number} ; Det : Type = {s : Gender => Str ; n : Number ; sp : Species; isDef : Bool} ; -- defH : Str -> Str = \cn -> --- case cn of {_ => "h" + cn} ; +-- case cn of {_ => "ה" + cn} ; insertObj : NP -> VP -> VP = \np,vp -> let @@ -135,7 +135,7 @@ oper in { s = vp.s; obj = case of - { => "At" ++ nps.obj; + { => "את" ++ nps.obj; _ => nps.obj } ; s2 = vp.s2; pred = vp.pred; @@ -171,7 +171,7 @@ oper getRoot : Str -> Root = \s -> case s of { C1@? + C2@? + C3 => {C1 = C1 ; C2 = C2 ; C3 = C3} ; - _ => Predef.error ("cannot get root from" ++ s) + _ => Predef.error ("caננoת גeת רooת fרoמ" ++ s) } ; diff --git a/lib/src/hebrew/StructuralHeb.gf b/lib/src/hebrew/StructuralHeb.gf index 53a05e2c6..3232409ea 100644 --- a/lib/src/hebrew/StructuralHeb.gf +++ b/lib/src/hebrew/StructuralHeb.gf @@ -7,8 +7,8 @@ concrete StructuralHeb of Structural = CatHeb ** this_Quant = { s = table { - Sg => table { Masc => "hzh" ; Fem => "hzAt" } ; - _ => table {_ => "hAlh" } + Sg => table { Masc => "הזה" ; Fem => "הזאת" } ; + _ => table {_ => "האלה" } }; sp = Def ; @@ -19,8 +19,8 @@ concrete StructuralHeb of Structural = CatHeb ** that_Quant = { s = table { - Sg => table { Masc => "hhwA" ; Fem => "hhyA" } ; -- that - _ => table {_ => "hhN" } -- those + Sg => table { Masc => "ההוא" ; Fem => "ההיא" } ; -- that + _ => table {_ => "ההן" } -- those }; sp = Def ; @@ -29,25 +29,25 @@ concrete StructuralHeb of Structural = CatHeb ** }; - he_Pron = mkPron "hwA" "Awtw" "slw" Masc Sg Per3 ; - i_Pron = mkPron "Any" "Awty" "sly" Masc Sg Per1 ; --both fem and masc nom, acc, gen - it_Pron = mkPron "zh" "" "" Masc Sg Per3 ; - she_Pron = mkPron "hyA" "slh" "slh" Fem Sg Per3 ; - they_Pron = mkPron "hM" "slhM" "slhM" Masc Pl Per3 ; -- add Fem in extra - we_Pron = mkPron "AnHnw" "Awtnw" "lnw" Masc Pl Per1; --both fem and masc - youSg_Pron = mkPron "At" "slK" "slK" Fem Sg Per2 ; -- add Masc in extra - youPl_Pron = mkPron "AtN" "slkN" "slkN" Fem Pl Per2 ; --- youPol_Pron = mkPron "AtN" "" "" Fem Sg Per2 ; + he_Pron = mkPron "הוא" "אותו" "שלו" Masc Sg Per3 ; + i_Pron = mkPron "אני" "אותי" "שלי" Masc Sg Per1 ; --both fem and masc nom, acc, gen + it_Pron = mkPron "זה" "" "" Masc Sg Per3 ; + she_Pron = mkPron "היא" "שלה" "שלה" Fem Sg Per3 ; + they_Pron = mkPron "הם" "שלהם" "שלהם" Masc Pl Per3 ; -- add Fem in extra + we_Pron = mkPron "אנחנו" "אותנו" "לנו" Masc Pl Per1; --both fem and masc + youSg_Pron = mkPron "את" "שלך" "שלך" Fem Sg Per2 ; -- add Masc in extra + youPl_Pron = mkPron "אתן" "שלכן" "שלכן" Fem Pl Per2 ; +-- youPol_Pron = mkPron "אתן" "" "" Fem Sg Per2 ; - above_Prep = mkPrep "mOl" False; - after_Prep = mkPrep "AHry" False; - by8agent_Prep = mkPrep "Ol ydy" False ; + above_Prep = mkPrep "מעל" False; + after_Prep = mkPrep "אחרי" False; + by8agent_Prep = mkPrep "על ידי" False ; --by8means_Prep = mkPrep "" False ; - there_Adv = mkAdv "sm" ; - there7to_Adv = ss "lsm" ; - there7from_Adv = ss "msm" ; + there_Adv = mkAdv "שמ" ; + there7to_Adv = ss "לשמ" ; + there7from_Adv = ss "משמ" ; somewhere_Adv = ss ""; --- now_Adv = ss "Oksyw"; +-- now_Adv = ss "עכשיו"; - but_PConj = ss "Abl" ; + but_PConj = ss "אבל" ; }