From 6a7b028c22f45040f0620b7545a2c1f4ec3af39e Mon Sep 17 00:00:00 2001 From: Mario Lang Date: Fri, 19 Feb 2010 19:03:53 +0100 Subject: [PATCH] Imported Upstream version 1.43 --- ChangeLog | 161 +-- dictsource/af_list | 222 +++- dictsource/af_rules | 1965 +++++++++++++----------- dictsource/cs_list | 32 +- dictsource/da_list | 61 +- dictsource/da_rules | 1164 +++++++++----- dictsource/de_list | 160 ++- dictsource/de_rules | 165 ++- dictsource/dict_log | 166 +-- dictsource/dict_phonemes | 234 +-- dictsource/en_list | 110 +- dictsource/en_rules | 942 ++++++------ dictsource/eo_list | 16 +- dictsource/es_rules | 1 + dictsource/fr_list | 192 ++- dictsource/fr_rules | 200 ++- dictsource/hi_list | 29 +- dictsource/hi_rules | 14 +- dictsource/hu_list | 1082 +++++++++++-- dictsource/hu_rules | 1271 +++++++++++++--- dictsource/id_list | 22 +- dictsource/id_rules | 14 +- dictsource/jbo_list | 19 +- dictsource/jbo_rules | 6 +- dictsource/nci_list | 25 + dictsource/nci_rules | 90 ++ dictsource/no_list | 65 +- dictsource/no_rules | 12 +- dictsource/pl_list | 6 +- dictsource/pt_list | 166 ++- dictsource/pt_rules | 1474 +++++++++--------- dictsource/ro_list | 371 ++++- dictsource/ro_rules | 641 ++++---- dictsource/ru_list | 4 + dictsource/sk_list | 16 +- dictsource/sk_rules | 2 +- dictsource/ta_list | 294 ++++- dictsource/ta_rules | 868 ++++++++++- docs/commands.html | 23 +- docs/dictionary.html | 19 +- docs/index.html | 46 +- docs/phontab.html | 273 +++- espeak-data/af_dict | Bin 74925 -> 79205 bytes espeak-data/ca_dict | Bin 4212 -> 4212 bytes espeak-data/config | 9 - espeak-data/cs_dict | Bin 7798 -> 7798 bytes espeak-data/cy_dict | Bin 3541 -> 3541 bytes espeak-data/da_dict | Bin 5327 -> 8646 bytes espeak-data/de_dict | Bin 19322 -> 19947 bytes espeak-data/el_dict | Bin 4585 -> 4585 bytes espeak-data/en_dict | Bin 87069 -> 87916 bytes espeak-data/eo_dict | Bin 4746 -> 4746 bytes espeak-data/es_dict | Bin 5309 -> 5312 bytes espeak-data/fi_dict | Bin 4567 -> 4567 bytes espeak-data/fr_dict | Bin 19363 -> 20316 bytes espeak-data/grc_dict | Bin 3390 -> 3390 bytes espeak-data/hbs_dict | Bin 7404 -> 7404 bytes espeak-data/hi_dict | Bin 5696 -> 5860 bytes espeak-data/hu_dict | Bin 5916 -> 22257 bytes espeak-data/hy_dict | Bin 2469 -> 2469 bytes espeak-data/id_dict | Bin 3083 -> 3099 bytes espeak-data/is_dict | Bin 5566 -> 5566 bytes espeak-data/it_dict | Bin 48870 -> 48870 bytes espeak-data/jbo_dict | Bin 2051 -> 2065 bytes espeak-data/ku_dict | Bin 2277 -> 2277 bytes espeak-data/la_dict | Bin 3911 -> 3911 bytes espeak-data/lv_dict | Bin 12558 -> 12574 bytes espeak-data/mbrola_ph/fr1_phtrans | Bin 1852 -> 1924 bytes espeak-data/mbrola_ph/id1_phtrans | Bin 868 -> 892 bytes espeak-data/mk_dict | Bin 4948 -> 4948 bytes espeak-data/nci_dict | Bin 0 -> 1534 bytes espeak-data/nl_dict | Bin 4124 -> 4124 bytes espeak-data/no_dict | Bin 3735 -> 4234 bytes espeak-data/pap_dict | Bin 2148 -> 2148 bytes espeak-data/phondata | Bin 355256 -> 359288 bytes espeak-data/phondata-manifest | 729 --------- espeak-data/phonindex | Bin 30256 -> 16412 bytes espeak-data/phontab | Bin 36460 -> 26080 bytes espeak-data/pl_dict | Bin 40458 -> 40498 bytes espeak-data/pt_dict | Bin 14970 -> 15288 bytes espeak-data/ro_dict | Bin 24961 -> 28243 bytes espeak-data/ru_dict | Bin 5519 -> 5541 bytes espeak-data/sk_dict | Bin 8898 -> 8898 bytes espeak-data/sq_dict | Bin 3222 -> 3222 bytes espeak-data/sv_dict | Bin 9508 -> 9508 bytes espeak-data/sw_dict | Bin 3072 -> 3072 bytes espeak-data/ta_dict | Bin 2527 -> 18544 bytes espeak-data/tr_dict | Bin 4783 -> 4783 bytes espeak-data/vi_dict | Bin 4855 -> 4855 bytes espeak-data/voices/!v/klatt | 4 + espeak-data/voices/!v/klatt2 | 4 + espeak-data/voices/!v/klatt3 | 4 + espeak-data/voices/!v/m1 | 17 +- espeak-data/voices/!v/m7 | 35 +- espeak-data/voices/da | 2 +- espeak-data/voices/en/en | 4 +- espeak-data/voices/en/en-us | 4 +- espeak-data/voices/hu | 4 + espeak-data/voices/no | 2 +- espeak-data/voices/test/jbo | 1 + espeak-data/voices/test/nci | 7 + espeak-data/zh_dict | Bin 41834 -> 41834 bytes espeak-data/zhy_dict | Bin 1556 -> 1556 bytes platforms/big_endian/README | 6 +- platforms/big_endian/espeak-phoneme-data.c | 84 +- platforms/big_endian/phondata-manifest | 747 +++++++++ platforms/windows/espeakedit/ReadMe.txt | 7 +- platforms/windows/espeakedit/espeakedit.dsp | 4 +- platforms/windows/espeakedit/sample.ico | Bin 0 -> 1078 bytes platforms/windows/espeakedit/src/speech.h | 3 +- platforms/windows/espeakedit/src_copy/speech.h | 1 + platforms/windows/make_espeak.iss | 28 +- platforms/windows/make_espeakedit.iss | 7 +- platforms/windows/windows_cmd/src/speech.h | 3 +- platforms/windows/windows_dll/src/speech.h | 2 + platforms/windows/windows_sapi/src/speech.h | 3 +- platforms/windows/windows_sapi/version.rc2 | 10 +- src/Makefile | 2 +- src/compiledict.cpp | 130 ++- src/debug.h | 2 +- src/dictionary.cpp | 399 +++-- src/espeak.cpp | 121 ++- src/espeak_command.cpp | 4 +- src/intonation.cpp | 10 +- src/klatt.cpp | 175 ++- src/klatt.h | 28 +- src/numbers.cpp | 736 +++++++--- src/phoneme.h | 32 +- src/phonemelist.cpp | 332 ++--- src/readclause.cpp | 465 +++++-- src/setlengths.cpp | 33 +- src/speak.cpp | 10 +- src/speak_lib.cpp | 44 +- src/speak_lib.h | 5 +- src/speech.h | 6 + src/synth_mbrola.cpp | 23 +- src/synthdata.cpp | 833 ++++++++--- src/synthesize.cpp | 403 ++++-- src/synthesize.h | 149 ++- src/tr_languages.cpp | 331 ++--- src/translate.cpp | 346 +++-- src/translate.h | 142 ++- src/voice.h | 1 + src/voices.cpp | 66 +- src/wave_sada.cpp | 6 +- src/wavegen.cpp | 30 +- 146 files changed, 12515 insertions(+), 6723 deletions(-) mode change 100644 => 100755 dictsource/id_rules create mode 100755 dictsource/nci_list create mode 100755 dictsource/nci_rules mode change 100755 => 100644 dictsource/ro_list mode change 100755 => 100644 dictsource/ro_rules mode change 100644 => 100755 dictsource/zh_list delete mode 100755 espeak-data/config create mode 100644 espeak-data/nci_dict delete mode 100644 espeak-data/phondata-manifest create mode 100644 espeak-data/voices/!v/klatt create mode 100644 espeak-data/voices/!v/klatt2 create mode 100644 espeak-data/voices/!v/klatt3 create mode 100644 espeak-data/voices/test/nci create mode 100644 platforms/big_endian/phondata-manifest create mode 100755 platforms/windows/espeakedit/sample.ico diff --git a/ChangeLog b/ChangeLog index bea35f7..2463e5c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,42 @@ + + +espeak 1.43 + +New format for phoneme definitions, including conditional statements for more flexibility. + +Added voice variants which use the Klatt synthesizer rather than the eSpeak synthesizer: klatt, klatt2, klatt3 + +Fixes to the Klatt synthesizer. +Updated phoneme data for use in the Klatt synthesizer. + + +Allow optional .txt filename suffix for *_rules and *_list files. + +HTML tags should not insert a space when they are removed. This could cause a break inside a word (eg. , ). + +Fixes to correctly recognise space as a thousands separator in some languages. + + + + +eSpeak 1.42 + +Improvements to languages including Hungarian, Portuguese, Tamil + +Changes to intonation when announcing punctuation (--punct option). + +Recognise key names in and allow translation +into the current language. + +*_list files, added attribute $hasdot for abbreviations. The rule only applies +if the word is followed by a dot. + +SSML (as used by Speech Dispatcher), fix problems where a tag after a dot meant +that end-of-sentence and ordinal numbers were not recognized correctly. + + + + eSpeak 1.41 Added language: da Danish @@ -64,125 +103,3 @@ Reduced pause when announcing punctuation characters. Add voice variant: "fast" to allow experimentation with faster speaking speeds. Removed the use of C++ Classes. - - - - -eSpeak 1.39 - -Fix for crash with some SSML tags. - -Minor language improvements: French, English/US - -Fix missing phoneme translations for mbrola French voice. - - -eSpeak 1.38 - -Language improvements include: -English/US, French, Afrikaans. - -Added support for mbrola Brazilian voices br1, br3, br4. - -Pitch changes now work for mbrola voices in SAPI5 version. - -Various minor bug fixes. - - -eSpeak 1.37 - -Added build options for pulseaudio and sada sound systems. - -Bug fixes: -Fixed crash on some very long words. -Fixed crash when saying "ligature A E". - -Added support for mbrola Spanish voices es1, es2. - -Fixed letter names lang=it 'v' 'x' - - -eSpeak 1.36 - -Windows SAPI5 version, allow top speed of 390 wpm. - -Improvements to Polish. -Fix error with mbrola Croatian "cr1" voice. - -Fix: $textmode in *_list files, allow translation to a word which is also in the *_list file. - - -eSpeak 1.35 - -Fixed: Languages ru, el, zhy, not speaking English words. - -eSpeak 1.34 - -Minor bug fixes. -1. Fixed French word "à". -2. Fixed byte-order problem with *_dict files on big-endian processors. - -eSpeak 1.33 - -1. Bug fix: Prefixes containing non-ascii characters. - -2. Bug fix: *_dict file and mbrola translation files on big-endian processors. - -3. Add --voices=mbrola to list the mbrola voices. - -4. Reduce echo when announcing punctuation. - -5. Treat echo amplitude=0 as no echo, even if an echo delay is set. - - -eSpeak 1.32 - -1. Added languages: - ta (Tamil) - tr (Turkish) - ku (Kurdish) - es-la (Latin American Spanish variant) - id (Indonesian, no feedback yet). - -2. Improved languages including, Spanish, French, Mandarin - -3. Speak character; will speak the names of all accented letters up to Unicode U+17F, if the accent names are defined for the current language. - -4. Speak punctuation, and speak character, will speak the character name in English if it's not defined for the current language. If it's not defined for English then it speaks its Unicode character number. - -5. espeak --voices; mbrola voices are listed only if a language is specified. - -6. Fixed bug in pronunciation of words which are defined in *_list files with $textmode (end-of-word indicator was missing). - -7. Fixed bad pitch intonation when speaking punctuation. - -8. Allow language switching during phoneme text input (eg. [[_^_EN hEloU _^_FR]] ) - -9. Tone languages (Mandarin), indicate emphasis by increasing the pitch range. - -10. Fixed bug where the language remains changed if speech is cancelled while speaking a word in a temporary language. - -11. Removed punctuation pauses from the end of text, unless the espeakENDPAUSE flag is set in espeak_Synth(). - -12. SSML. Don't speak text within . - -13. Fixes to SSML voice selection. - -14. SSML. Fixed crash when has an unrecognised voice name. - -15. SSML. Fixed, &nnn; character codes could cause the following text to be mis-read. - -16. Fixed bug, to allow use with mbrola voices on big-endian processors. - -17. Fixed segfault when wordgap feature is used. - -18. "speak" program, don't terminate when an empty sentence is found. - -19. Fixed bug in *_rules files; letter-groups (eg .L01) were not correctly recognised. - -20. Event list callback: Fixed audio position of a vowel when it follows a voiced consonant. Ensure that enough space is allocated for the event list when espeak_Initialize() is called with a small buffer size. Fixed the word length information when multibyte characters are used. - -21. Added "consonants" attribute to voice files, to adjust the strength of consonants. - -22. RISC_OS version. Implement --voices (list voices). Disable "breath" attribute in voice files because it causes a floating-point crash. - diff --git a/dictsource/af_list b/dictsource/af_list index d804aec..f1f65c3 100755 --- a/dictsource/af_list +++ b/dictsource/af_list @@ -84,6 +84,7 @@ z zEd ú $accent û $accent ü $accent +ý $accent _cap h'o@flEt@r _?? s@mb'o@l @@ -198,8 +199,8 @@ _dpt 'pWnt _roman rum'eIns@ // ordinal numbers -_0de d@ -_0ste st@ +_#de d@ +_#ste st@ _1o _'e@r _2o tw'e@ _3o d'&:r @@ -218,19 +219,24 @@ albanië alb'A:ne@:@- algerië alx2'e@re@:@- amanzimtoti $4 antwerpen antv&rp@n +avignon _^_FR babilon babilOn bangladesj baNglad'ES +barcelona bars@l'o@na barkly _^_EN bellevue b&lvju: bermuda $2 bethlehem bEt_liEm boedapest budapEst boekarest bukarEst +bogotá bOgOt'A: bolivië bul'Ivi:@ bonnievale _^_EN bordeaux bOrd'@U +boston _^_EN brittanje $2 brooklyn _^_EN +(buenos aires) bwEnOs_'aIrEs burundi bur'undi caledon kalidOn carolina karul'ina @@ -246,13 +252,17 @@ colesberg ko@lsb&rx2 constantia $2 christiana kr@stij'A:na damaskus d@maskWs +denemarke de@n@mark@ djakarta dZak'arta doebaai $2 duitswes dYytsv'Es ermelo &rm@lo@ franschhoek frA~nsh'uk +fraserburg freIz@rbWrx2 gadara x2@dA:ra galilea x2al@l'i:a +gdansk g@-dansk +genève Z@nE:v germiston _^_EN getsémané x2Ets'e@mani gonubie g@nu:bi @@ -265,9 +275,11 @@ groblersdal x2rObl@rsd'al havana hav'ana hermon $1 hirosjima hiruS'ima +ingwavuma iNgwav'u:ma israel IsraI:l italië it'A:li;@ jeffreysbaai dZEfrisb'AI +junín x2un'in kalafong kalaf'ON kanada kanad%a kanaän kA:nA:an @@ -280,11 +292,13 @@ kongo kONgu knysna neIsna kuruman kuruman kwa kwa $u $only // KwaZulu, etc. +kwazulu kwaz'ulu // Kwazulu (lowercase z) lady _^_EN // Lady Grey/Lady Smith ladybrand leIdibr'ant laingsburg leInsbWrx2 lesotho l@sutu limpopo l@mpo@po@ +lockerbie _^_EN (los angeles) lOs_'andZ@li:z macedonië mas@d'o@ni@ madagaskar madax2'askar @@ -301,14 +315,22 @@ moorreesburg mur'e@sbWrx2 (thaba nchu) tab'A:||ntSu europa Y@r'o@pa nigel _^_EN +nineve nIn@fi +oberammergau o@b@r'am@rgaU +oklahoma @Ukl@h'@Uma outeniekwa @Ut@n'ikwa oxford _^_EN +palermo pal'&rmu pelindaba p&l@nd'A:ba +perú p@ru +piketberg p@kEtb&rx2 portugal pOrtyx2al potchefstroom pOtSIfstr'o@m +rhône _^_FR richardsbaai ritS@dsb'AI robertson _^_EN -sahara sah'A:ra +salvador salvadO:r +santiago santi;'A:gu secunda s@kunda senekal se@n@kal seychelle seIS'&l@ @@ -320,7 +342,9 @@ springs _^_EN $capital sunnyside _^_EN suriname syrin'A:m@ swellendam $3 +tankwa taNkwa tokio to@kiu +trafalgar traf'algar tunisië $2 turkye $2 ulundi ul'undi @@ -331,8 +355,10 @@ viëtnam vj'Etnam wallonië val'o@ni@ washington _^_EN wellington wEliNt@n +wimbledon _^_EN wolseley wulsli uganda ug'anda +uruguay urugwaI zimbabwe zI:mb'ab_wE zulu zulu // Kwazulu-Natal @@ -344,6 +370,7 @@ ackerman ak@rman adam adam adriaan A:drijan adrie A:dri +agnes _^_EN albertus alb'&rtWs alfred _^_EN allah %alA: @@ -351,26 +378,38 @@ amelia am'i:lija annalet anal'Et André 'andreI annette an'Et +anthonie ant'o@ni antoinette antun'Et +archimedes arx2im'e@dEs +aristoteles arist'o@t@lEs +arthur _^_EN +badenhorst bA:d@nhOrst barbara bA:b@ra basson $2 bea bi:ja +belcher _^_EN benade b@nA:di benjamin bEndZ@m@n bennett bEn@t bertha b&rta bester b'Est@r +betjie bEici betsie bEtsi beyers beI@rs blignault blIx2n@Ut blomerus blum'e@rWs +blum blum botha bo@ta bouwer b@U@r +braham brA:m brian _^_EN bredenkamp bre@d@nkamp bruwer bruw'&:r caesar siz@r + cameron _^_EN carl kA:r@L +carlyle _^_EN +carol _^_EN casanova kasan'o@va cecil sEs@l cecile s@si:l @@ -380,9 +419,12 @@ charles _^_EN charlie tSA:li charmaine SA:m'eI:n chopin S%OpA~ +claire _^_EN +clark _^_EN conradie $2 chris krIs christo krIstu +christof krIstOf christoffel kr@stOf@l christiaan krIstiA:n christian krIstian @@ -392,11 +434,12 @@ christine kr@st'i:n cindy sIndi coetzee kuts'e@ cronjé krOnj'e@ +cussons kas@ns cynthia _^_EN dalene dal'e@n -daniël d'A:ni:@l -#zzz +danielle dani;'&l darwin _^_EN +daniël d'A:ni:@l david _^_EN (da vinci) da||v'intSi debora d@bo@ra @@ -408,7 +451,9 @@ derick dErik deventer d'e@v@nt@r diana dij'A:na donaldson _^_EN +dostojewski dOstOj'Evski du $u +duncan daNk@-n (du pisanie) du||pis'A:ni (du plessis) du||pl@s'i (du plooy) d@||ploI @@ -423,19 +468,22 @@ elmien $2 elsabe &ls@bi elsabé &ls@bi emmarentia Emar'e~nSja +engelbrecht EN@lbr&x2t erasmus $2 ernest _^_EN -esegiël is'e@x2i:@l +esegiël is'e@x2i: @l estelle %ist&l etienne Eti@n eugene judZ'i:n eugène yZ'En farao fA:ro@ ferreira f@r&:r@ -filemon f'il@mOn +filemon f'il@mOn fischer fiS@r +flaubert _^_FR +floris $1 +fouché fuS'e@ fourie fur'i -francina $2 francois franSwa françois frA~nsw'A: gabriël x2A:bri@l @@ -444,10 +492,15 @@ george _^_EN georgina dZO:dZ'ina gerhard x2&rart gerhardus $2 +gertie gI:ti gertruida $2 +gilbert _^_EN gloria glO:ria +gordon _^_EN grange x2rA:nsi +greta gre@ta grové x2ruv'e@ +gulliver _^_EN gustav gustaf guy _^_EN hamlet _^_EN @@ -461,12 +514,13 @@ henry _^_EN herklaas $1 herkules $1 hilde hild@ +ibsen ibs@n ilse 'ilz@ ingrid iNgr@d isabel is@b&l iskariot isk'ariOt jaco jaku -jacques ZA:k + jakomina jakum'ina james _^_EN jane _^_EN Jean ZA~n $capital @@ -474,11 +528,17 @@ jesebel je@s@b&l jimmy _^_EN joan _^_EN joey dZ@Ui +johl jo@l jones _^_EN jordaan $2 +joris $1 josef jo@s@f +josephina jo@s@f'ina +josé _^_ES +juan x2wan juanita juan'ita julia _^_EN + khayyam kaj'am kelvin _^_EN kim _^_EN $capital krige krix2@ @@ -488,18 +548,26 @@ langenhoven laN@nho@f@n lasarus lA:s@r%Ws lategan lA:t@x2an le l@ $only +leana li'A:na leandra li'andra leipoldt lAIpOlt leonardo liu:n'ardu leonie li'o@ni levi le@fi +lewies l@vis liesbet lisbEt +loubser l@UpS@r louis luI louise luw'i:z -lukas l'ukas +lucretia lukr'i:Sja +lukas lukas +lulu lulu +mabalêl mabal'&l +mabel _^_EN mackintosh _^_EN madelene mad@l'e@n mbeki mbE:ki +madelene mad@l'e@n magdalena $3 malan mal'an malherbe mal'&rb@ @@ -514,11 +582,14 @@ marius mA:riWs marlene marl'e@:n marlise marl'i:s martha marta +marthinus mart'inWs +martiens $2 martin m'A:rt@n mary _^_EN mathilda mat'Ilda matteus mat'i:Ws matthee mat'e@ +mattheüs mat'i:Ws matthéüs mat'i:Ws maureen _^_EN mefistofeles mEfist'o@f@l@s @@ -537,6 +608,7 @@ morné mOrn'eI mostert m'Ost@rt mouton mut'On mozart mo@tsart +myburgh meIbWrx2 naomi na_'o@mi napoleon nap'o@liOn natasha n%at'aSa @@ -544,16 +616,25 @@ naudé nOd'e@ neil _^_EN nelson _^_EN niklaas niklA:s +olga Olga ontong OntON +patrick _^_EN +petoors p@to@rs phillips fIl@ps pierre p'e@r petronella pe@trun'&la petrus pe@trWs phoebe fi:bi picasso pik'asu +pinokkio pin'Oki;u +pretorius pr@to@riWs +pythagoras pit'A:x2o@ras +quijote kix2'OtE quixote kix2'OtE rachmaninoff rax2m'aninOf rademeyer rA:d@meI@r +rall rA:l +raymond _^_EN rebekka r@bEka reinette r@nEt renette r@nEt @@ -561,7 +642,9 @@ renée r@neI retha re@ta retief r@tif rhodes _^_EN +riekert rik@rt robert _^_EN +robin _^_EN ronel run'&l rossouw r@s@U rousseau r@s@U @@ -570,6 +653,7 @@ rupert rup@rt salomo sA:l@mo@ samuel sA:my@l sandra sandra +sappho sapfu schalk sk'alk scheepers ske@p@rs schmidt Smit @@ -580,12 +664,16 @@ schutte skWt@ sebastian s@bastian servaas s@rfA:s shakespeare _^_EN +sheila Si:la sigmund sigmunt sophia suf'i:ja sophie _^_EN stephan ste@fan stephanus st@fA:nWs +stevenson _^_EN strauss straUs +stockenström stOk@nstro@m +stuart _^_EN suzanne suz'A:n suzette suz'Et tania tanja @@ -593,13 +681,15 @@ telemann te@l@man terblanche t@rblA:nS theo tiu theron tr'On -timotheus t@m'o@tiWs +thessalonicense tEsalo@nis'E:ns@ thys teIs +timotheus t@m'o@tiWs toerien $2 totius to@SiWs trudie trudi versfeld f&rsf< veronica _^_EN +victor _^_EN victoria _^_EN viljoen $2 villiers vIli@rs @@ -607,6 +697,7 @@ vincent _^_EN violet _^_EN $capital visagie fis'A:x2i william _^_EN +wilson _^_EN yolande jul'and@ yvonne iv'On zyl seIl @@ -622,9 +713,11 @@ tony t@Uni trichardt trix2A:rt vera ve@ra verwey f@rveI +virginia _^_EN vivaldi viv'aldi viviers v@v@je@ wilhelm v@lh&l@-m +williston _^_EN khumalo kum'A:lu zuma zu:ma @@ -636,32 +729,38 @@ checkers tSEk@rs chrysler kraIsl@r citroên s@trun ferrari f@rA:ri +isuzu is'u:zu martini mart'i:ni naspers nasp&rs peugeot pW:Z@U (pick n pay) p,ik||@n||p'eI +porsche pOrS@ port pOrt $1 +prestik prEstik rover _^_EN +sesotho s@s'u:tu +sorbonne _^_FR sotho su:tu -thessalonicense tEsalo@nis'Ens@ toyota $2 venda vEnda +vicks viks volvo vOlvu wimpy wImpi -// some Bible names -levitikus $2 -deuteronomium dY@t@ro@n'o@miWm -josua j'o@Sia -jesaja $2 -jeremia j%e@r@m'ia -hosea hus'i:a -amos 'A:mOs -obadja o@b'atja -miga m'ix2a -habakuk h'abakWk -sefanja s@f'anja -sagaria sax2ar'ia -maleagi $3 + +// Some Bible names +amos 'A:mOs +deuteronomium dY@t@ro@n'o@miWm +habakuk h'abakWk +hosea hus'i:a +jeremia j%e@r@m'ia +jesaja $2 +josua j'o@Sia +levitikus $2 +maleagi $3 +miga m'ix2a +obadja o@b'atja +sagaria sax2ar'ia +sefanja s@f'anja // article @@ -810,10 +909,11 @@ algaande $2 alge alx2@ algehele alx2@h,e@l@ allegro al'Egru +allergene $3 almiskie $3 alom al_'Om alreeds $2 -alternatiewe $4 +altemit $3 amelee am@le@ amen A:mEn anale an'A:l@ @@ -824,6 +924,7 @@ aspris $2 asseblief as@bl'if assessore $3 attraksie $2 +aversie av'&rsi babelaas bab@lA:s barrikade $3 @@ -840,11 +941,13 @@ bewe be@v@ bewend be@v@nt bewering b@ve@rIN bomaat bo@mA:t +bordegoed bO:rd@x2ut boskaas $2 bostaande b'o@stA:nd@ bourgeois _^_FR bourgeoisie _^_FR briewemes briv@mEs + bêretyd b&:r@teIt cabernet kab@rn'eI camembert kam@mb'&:r @@ -853,44 +956,57 @@ capita kapita casino kas'i:n@U cedille s@dIl@ charisma kar'Isma -clichés kliS'eI:s cliché kliS'eI: +clivia klIvija +cognac kOn^ak +confetti $2 crescendo kr@SEndu +crimpelene kr@mp@li:n dadelik dA:d@lIk +dagorde dax2_Ord@ +daisy deIzi darem dar@m dekade dEk'A:d@ dekreling dEkre@l@N deurentyd dy@r@nteIt deurgaans $1 deurkruis $2 +deurry dY@rreI deurstaan $2 deurstraalde $2 dikwels dIkv@ls diplomasie d@plo@mas'i +disleksie $2 doktore $2 doyen dO:j'En dubbelken dWb@lkEn dusver dWsf&r +edelagbare $3 eenkeer $1 efesiër if'e@si@r +effata Ef'A:ta effense Ef@ns@ eks Eks ekself %&ks'&lf elders &ld@rs +elementale El@mEnt'A:l@ elite il'i:t encore A~NkO:r enige e@nIx2@ eone $2 era e@ra erger &rg@r +ergering &rg@r@N espeak i:;spi:k (et cetera) Ets'Et@ra euro Y@ru +ewentwil e@v@ntv@l exodus Eks'o@dWs fakture $2 +fetakaas fEtakA:s figuur f@x2yr filippense f@l@pEns@ finalis $3 @@ -901,12 +1017,17 @@ forte fOrt@ g'n x2In gaandeweg x2A:nd@v&x2 garages g@rA:dZ@s +gebrokener x2@bro@k@n@r gee x2e@ geen x2e@n geldelike x2&ld@l@k@ +gelerendheid x2@le@r@ntheIt genade $2 genesis x2e@n@s@s //gesamentlik x2@sA:m@ntl@k +gentleman _^_EN +germolene dZI:m@l'i:n +gewellys x2e@v@lleIs gladiator x2ladi'A:tOr globale x2lo@b'A:l@ gooi x2OI @@ -920,6 +1041,7 @@ handtertjie hant&:rci hanou hA:n@U hardop hart?Op heeltemal he@lt@mal +heimat haImat hek h&k hekke h&k@ helaas he@l'A:s @@ -944,6 +1066,7 @@ impromptu impr'Omptu inagneming @nax2ne@m@N indien Indin $verb induna ind'u:na +infame @nfA:m@ ingevolge $3 inkatha iNk'A:ta inkluis $2 @@ -952,6 +1075,7 @@ intens @nt'Ens intensiteit $4 ironieë irun'i:@ +jantwak jantw'ak jawoord jA:vo@rt jupiter jupit@r @@ -959,12 +1083,16 @@ kafee kaf'e@ kameraderie kam@rA:d@r'i katswink katsv@nk kaviaar kavi'A:r +kennisvaardig $1 klaasvakie $2 +klimeid klImeIt knapsekêrel knaps@k&:r@l kolossense kOl@s'e~ns@ komaan kOmA:n +konfyttertjie kOnf'eIt&:rci konkawe kOnk'A:v@ konte $1 +kopaar kOp_A:r kopiereg kup'ir&x2 korswel kOrsv@l kotiljons kOt@lj'o~ns @@ -978,8 +1106,11 @@ libido l@bidu lokaas lOk_A:s londense lOnd@ns@ lord _^_EN +luidop lYyt_Op +lykwaak leIkvA:k macaroni makar'o@ni +macho matS@U madame mad'A:m madamoiselle _^_FR maskering mask'e@r@N $only @@ -987,7 +1118,6 @@ massaal $2 massale $2 meegee me@x2e@ memorabilia mEmOrab'ilija -memoriam mEm'o@riam mercedes $2 meregebied me@r@x2@bit merlot m&rl'o@ @@ -1017,13 +1147,16 @@ nalatigheid nA:l'A:t@x2eIt namate $2 negeer n@x2e@r negering n@x2e@r@N +negester ne@x2@st&r netjies nE:icis netjiese nEicis@ netsowel nEtso@v&l nikswerd nIksv&:rt nimmermeer $1 nirvana n@rvA:na +nogeens nOx2_e@ns normale nOrm'A:l@ +nousedae n@Us@dA: numeri nWm@ri oeuvre W:vr@ @@ -1033,6 +1166,7 @@ ommekeer Om@ke@r omrede $2 omtrent Omtr'Ent onbegrip $1 +onbruik $1 onderrig On@r'Ix2 $verb ondersoek $3 $verb onderweg $3 @@ -1049,6 +1183,7 @@ ongeloof $1 ongelyk $1 ongemak $1 ongerief $1 +ongeriefie $1 ongewens $1 ongewensde $3 ongewoons $1 @@ -1071,6 +1206,7 @@ oorleef $2 oorsee $2 oorsese $2 oorval $2 $verb +oranjepers o@r'anj@p&:rs oudsher @Utsh&r pandemonium pand@m'o@niWm @@ -1081,23 +1217,31 @@ parkie $1 parte $1 patos pA:tOs patriotisme patri|ut'Ism@ +pedaledemping p@dA:l@dEmp@N penorent pEno@rEnt per p@r $only persent p@rsEnt petite p@tit +pikanienie pikan'ini pinotage pinut'A:Z pirouette p@ru:'Et +plaasjaap plA:sjA:p plasenta plas'Enta +poinsettia pOIns'Etia +potpourri pOtpur'i primate $2 +profetes prOf@t'Es (pro forma) pro@||f'Orma rebelleer r@b@le@r rededele re@d@de@l@ regie r@Zi: +rekent re@k@nt renaissance rEn@s'A~ns retoriek r@tur'ik rimpeling rImp@l@N rinkink $2 +rondeel $2 rooipers roIp&:rs roterende rut'e@r@nd@ rottenes rOt@nEs @@ -1105,6 +1249,7 @@ rukkerig rWk@r@x2 ruspes rWsp@s rymelary reIm@lar'eI +saint sInt $u salami sal'A:mi salute sal'yt@ samelewing sA:m@l,e@v@N @@ -1113,6 +1258,7 @@ sedertdien $3 sektore $2 sinagoge s@n@x2o@x2@ senatore s@nat'o@r@ +siesta si;'Esta singenot sInx2@nOt sir _^_EN skepsele skEps@l@ @@ -1132,8 +1278,13 @@ sonop sOn_Op sonore sun'o@r@ sover so@f&r staccato $2 +sterwens st&rv@ns stilswye $1 +strydros streIt_rOs +subiet sWb'it suburbia sWb'Wrbija +swangerswaar swaN@rswA:r +swetterjoel $3 tanga taNga tango taNx2u @@ -1142,12 +1293,16 @@ tequila t@ki:la terdeë $2 terug t@-rWx2 tesaam t@sA:m +tesourus t@s@UrWs tevrede t@fre@d@ +thula tu:la toegee tux2e@ toereken ture@k@n +tornado $2 totale tut'A:l@ totsiens $2 tragiek trax2'ik +tsoenami tsun'A:mi uitdaging YydA:x2@N uiteraard Yyt@r_'A:rt @@ -1165,11 +1320,14 @@ veraf f&r_af verafgeleë f&rafx2@le@@ verby f@rbeI verdere f&rd@r@ -vererger f@r&rg@r ver f'&:r +verderaan f&:rd@r_A:n +vereduifie fe@r@dYyfi verg f&rx2 vergeleë f&:rx2@l,e@@ vergete f@rx2e@t@ +verkeerdom f@rke@rt_Om +verlangste f@rlaNst@ vermy $2 verre f&:r@ verregaande f&r@x2'A:nd@ @@ -1180,7 +1338,10 @@ verste f&rst@ verte f&rt@ verweg f&:rv&x2 via via +voelentheid ful@ntheIt volheid $1 +volpunte $1 +volspoed $1 volswanger $1 volte $1 voluit fOl_Yyt @@ -1205,5 +1366,6 @@ weerklink $2 weggewens v&x2@v'E:ns welaf v&l_af weleer v&l_'e@r +wentaktiek $1 wysgere veIsx2e@r@ diff --git a/dictsource/af_rules b/dictsource/af_rules index 0efffba..ced95c0 100755 --- a/dictsource/af_rules +++ b/dictsource/af_rules @@ -1,12 +1,12 @@ //maintainer: Willem van der Walt -// email: wvdwalt@csir.co.za + // email: wvdwalt@csir.co.za // tel: +27 12 8413996 // Meraka Institute, CSIR //With contributions by Christo de Klerk // 2-letter groups for: -// aa, an, be, ge, ka, ko, me, on, oo, re, st, te +// aa, an, ba, be, de, ee, en, ge, in, ka, ko, ma, me, mi, mo, on, oo, op, pa, pe, pr, re, se, st, te, tr, ui, ve, vo, we .group a @@ -52,11 +52,14 @@ adole (ssen %ad%o@l@ // fix stress and vowel sounds: adolessent/-e/-adolessensie ad (vies %at // move default stress: advies/-brief/-komitee and many similar + af (gunstig %af // move default stress: afgunstig/-e + aga (pant %ag%a // fix g sound and stress: agapant/-e and compounds C) agie A:x2i a (gitA %a // fix a sound: agitasie/(ge)agiteer - agte (los %ax2t@ // move default stress: agtelosig/-e/-heid + agte (losig %ax2t@ // move default stress: agtelosig/-e/-heid agter (dogt %ax2t@r // move default stress: agterdogtig and derivatives agtereen (volg %ax2t@r_%e@n // move default stress: agtereenvolgend/-e/-ens + agter (losig %ax2t@r // move default stress: agterlosig/-e/-heid agter (oor %ax2t@r_ // move default stress: agteroor/-buig/-druk/-val, etc. &) agtig 'ax2t@x2 // this string almost always carries stress on a a (gurkie %a // fix stress and a sound: agurkie/-s and compounds @@ -69,6 +72,7 @@ @@@smokkel) ary %ar%eI // default stress: diamant-/drank-/dwelm-/goud-/kokaïensmokkelary, etc. amarula %am%arul%a // fix stress and a sounds: amarula and compounds a (ment %a // shorten a sound: perkament/testament and compounds + arends A:r@nts_ // fix e sound: arendsoog/-kloue/-nes argen (tA %arx2@n // move default stress: Argentinië/Argentyns/-e a (riA 'A: // akwarium/barium/estuarium/herbarium/seminaria a (ristokr %a // shorten 1st a: aristokrasie/-kraat/-krate/-kraties @@ -78,8 +82,9 @@ C%C) asie A:si // restore default stress: bok-/dikmelkkasie and similar oub) asie A:si // restore default stress: oubasie/-s @form) asie A:si // restore default stress to compounds ending in -formasie: graniet-/grond-/rotsformasie, etc. + gl) asie A:si // restore default stress: wyn-/sjampanjeglasie, etc. pl) asie A:s%i // restore default stress: gemeenplasies/gemeenskapsplasies and similar - Csp) asie A:s%i // restore default stress: vloer/kantoorspasie, etc. + @sp) asie A:s%i // restore default stress: vloer/kantoorspasie/weggooispasie, etc. Cst) asie A:si // restore default stress: brandweer/spoorwegstasie and similar AAst) asie A:si // default stress: polisie/radio/televisie/uitsaaistasie, etc. aspek %aspEk // fix stress and e sound: aspek/-te/-tief and compounds @@ -116,6 +121,8 @@ @C) a (tiewe %a // fix a sound: konserwatiewe/putatiewe and many similar _arC) ad (A 'A:d // Arcadia/arkadia/arkade/armada ai aI + aine (_ _^_FR // words ending in aine are French: Verlainee/migraine, etc. + @) aire (_ _^_FR adre (K %adrE // fix last e sound of adres as last part of compounds adrena (li %adr@n%a // fix stress and vowel sounds: adrenalien and compounds al (baster %al // move default stress: albaster and compounds @@ -128,9 +135,11 @@ alge (ryn %alx2@ // move default stress: Algeryn/-e/-s alia A:l%i%a // fix stress and a sound: alias/-se/(inter )alia _) ali (krA al%i // fix vowel sounds: alikreukel/alikruik/alikruk + al (jander %al // move default stress: aljander and compounds alkohol alk%u%Ol // fix o sounds and drop h: alkohol/-is/-iste/-isme alkohol (ieK %alk%uho@l // fix stress and 2nd o sound: alkoholies/-e _) alle (C al@ // alledaags/e/allerhande + alle (mint %al@ // move default stress: allemintig/-e _) a (llooi %a // move default stress: allooi(metaal/-silwer, etc.) alma (nak %alm%a // move default stress: almanak/-ke and compounds alogie alux2'i // genealogie/mineralogie and similar @@ -145,6 +154,7 @@ _k) a (nA %a //kanon and others apart %apart // fix stress: (bus-/klein)apartheid + aphro (dit %afr%u // fix stress and ph and o sounds: Aphrodite/-dities _) a (po %a // apollo/apostel apo (krieC %ap%u // fix stress and vowel sounds: apokrief/-iewe a (politi %A: // lengthen a sound: apolitiek/apolities/-e @@ -168,7 +178,9 @@ are (olA %ar%i // fix and e sound: areola/-s ar (gaï %ar // move default stress: argaïes/-e arge (tip %arx2@ // move default stress: argetipe/argetipies/-e + arg (list %arx2 // move default stress: arglistig/-e/-heid ar (moedig %ar // move default stress: armoedig/-e/-heid + arm (salig %ar@-m // move default stress: armsalig/-e/-heid/-ste _) arte (ri %arte@ // fix stress and e sound: arterie/-ë/-s _) asbes %asbEs // fix stress and e sound: asbes and many compounds a (siel %a // shorten a sound and move default stress: asiel and compounds @@ -189,15 +201,18 @@ C) afel (@ A:f@l // compounds starting with tafel/ontrafeling/uitrafeling _) a (ffA %a // move default stress: affêre and compounds/affekteer a (fflik %a // move default stress: affliksie/-s + affo (dil %af%u // fix stress and o sound: affodil/-le affro (nt %afr%O // fix stress: affronteer/-tasie afgee (+ 'afx2e@ // see rule: _) afge (@P4 afx2@ _) afge (@P4 'afx2@ // stress on 1st slb afgryslik %afx2reIsl@k // move default stress: afgryslik and derivatives vs. afgrys/-e af (hank %af // move default stress: afhanklik/-e/-heid, etc. + _) af (kerig %af // move stress: afkerig/-e/-heid _) af (komstig %af // move default stress: afkomstig afrik (aan %afr%ik // exception to af prefix and move stress to end afrikane (K %afr%ikA:n@ // move stress to end: Afrikaner and compounds afrika A:frika //Stress and 1st a sound: Afrika and compounds: Afrikatale/-state... + afro (dit %afr%u // alternate spelling: Afrodite/-dities af (sigte %af // move default stress: afsigtelik/-e/-heid af (skuw %af // move default stress: afskuwelik and derivatives vs afsku afsonderl %afsOn@rl // stress, avoid af_ prefix and -lik suffix: afsonderlik/-e/-heid @@ -207,6 +222,7 @@ afwesig %afve@s@x2 // to steer clear of pre- and suffixes af (wagten %af // move default stress: afwagtend/-e agenda %ax2End%a // fix stress and 1st a sound: agenda/-s/-punt, etc. + age (rend %ax2e@ // fix stress and vowel sounds: agerend/-e a (gonie %a // fix 1st a sound and move default stress: agonies/-e agonie (_N %ax2%uni // move stress to end: agonie agter (bak %ax2t@r // fix stress: agterbaks/-e/-heid @@ -261,6 +277,7 @@ arre (stA %ar@ // arrestasie/arresteer arro (g %ar%u // arrogant/-e/arrogansie ar (seen %ar + arse (na %ars@ // move default stress: arsenaal/arsenale and compounds arte (fak %art@ // move default stress: artefak/-te ar (tikel %ar // stress: artikel and compounds artiku %art%ik%y // stress and vowel sounds: artikulasie/artikuleer @@ -287,6 +304,7 @@ @) atories %at'o@ris // stress on -ories: diktatories/organisatories/resperatories, etc. atrium A:triWm // fix a sound: atrium and compounds atro (fie %atr%u // fix stress and o sound: (spier)atrofie + attrib (u %atr@b // move default stress: attribuut/bute/attributêr K) au @U // trauma/-ties/Aucamp/Paul/-a/-us auer aU@r //Sauer etc. fixed au and e sounds in compounds. augustus %Ox2WstWs @@ -314,6 +332,7 @@ aan (grensen %A:n // move default stress: aangrensend/-e aan (grypend %A:n // fix stress: aangrypend/-e aan (hangig %A:n // move default stress: aanhangig vs. aanhang + aan (hank %A:n // move default stress: aanhanklik/-e/-heid aan (houden %A:n // move default stress: aanhoudend/-e aan (lok %A:n // move default stress: aanloklik/-heid aan (lok_N A:n // restore default stress: aanlok @@ -331,6 +350,7 @@ aan (stAAC %A:n // stress on 2nd slb.: aanstootlik/aansteeklik aan (stAAC_N A:n // stress on 1st slb.: aanstoot/aansteek aan (tasb %A:n // stress: (on)aantasbaar/-bare + _) aantel A:nt&l // fix e sound: aantel/-lery aantreklik %A:ntr&kl@k // move default stress: aantreklik/-heid aan (trek_N A:n // restore default stress: aantrek aan (vaar %A:n // aanvaar/de/baar @@ -399,36 +419,6 @@ b (b b (_N p b (eentjie++ b // exception to "bee" rule: beentjie/-s and compounds - bagasie b@x2A:si // shorten 1st a: bagasie and compounds - @) baarlik b'A:rl@k // move default stress: wonderbaarlik/-e/-heid/-ste - bajone (t b%aj%unE // fix stress and vowel sounds: bajonet/-te and compounds - bakate (l b%ak@t& // fix stress and vowel sounds: bakatel/-le/-letjie - baken bA:k@n // fix e sound: afbakening and compounds - bakte (ri b%akte@ // fix stress and e sound: bakterie/-ë - _) bam (boes b%am // move default stress: bamboes/-e/bamboesfluit... - ba (nalA b%a // fix stress and 1st a sound: banale/banaliteit - band (Alier b,and // fix stress and d sound: band(e/o)lier/-e - band (A bant // fix t sound: bandomslag/-ontwerp/-opname - band (e band // fix d sound: bandeverkoper moterbande etc. - band (iet b%and // fix stress and d sound: bandiet/-e and compounds - ba (nier b%a // move default stress: banier/-e and compounds - ban (ket b%aN // move default stress: banket/-te/-saal, etc. - ban (kier b%aN // move default stress: bankier/-s and compounds - ban (krot b%aN // move default stress: bankrot and derivatives - barberton bA:b@rt%On // fix stress and a sound: Barberton/-lelies/-pad - @) ba (ren b'A: // onrusbarend/opsienbarend and derivatives - ba (retK b%a // move default stress and shorten a sound: baret/-te - ba (riton ba // shorten a sound: bariton and compounds - barok bar''Ok_ // fix stress and a sound: barok/-instrumente/-agtig - baro (meter bar%u // fix a and o sounds: barometer and compounds - ba (ron b%a // fix stress and a sound: baron/-ne and compounds - _) ba (sa b%a fix stress and 1st a sound: basalt and compounds - ba (sieli b%a // fix stress and 1st a sound: basielie/-kruit, etc. - basotho b%asut%u // fix stress and vowel sounds: Basotho/-0ponie and similar - basi (s bA:s@ // basis and compounds - bastille b%asti:l // Bastille and compounds like Bastilledag - batal (jon b%at%al // shorten 1st a sound, moved stress: bataljon and compounds - ba (tik b%a // fix stress and a sound: batik/-doek/-kuns/-werk bbe (rr b@ // fix e sound: rubberrand/-ranke/-ring/-roller, etc. bobbe (j b%Ob@ //fix stress for bobbejaan and friends bo (grond bo@ // fix 1st o sound: bogronds/-e @@ -453,42 +443,13 @@ _) byge (@P4 b'eIx2@ by (kom@ b%eI // bykomende/bykomstige - badjie baIci - - baba bA:ba - baba (tjie bA:baI // fix 2nd a sound: babatjie/-s - _) bad (A bat_ // shorten a sound, pause: bad-/afloop/artikel/olie/oord/uitloop - baklei b@kl'eI // baklei/er - _) bak (o bak_ // fix a sound and stress: bakoor/bakore - balaklava b%al%aklA:v%a // fix stress, a and v sounds: balaklava and compounds - balaklawa b%al%aklA:v%a // fix stress and a sounds: balaklawa and compounds - ba (lans b%a // move default stress - balan (seer b%al%an // move stress to -eer - ba (ldadig b%a // move default stress: baldadig and derivatives - balhor b%alho@r // move default stress: balhorig and derivatives - ba (ljaar b%a // move default stress: baljaar and derivatives - balju b%aljy // move default stress: balju and compounds - ba (lkon b%a // move default stress: balkon and compounds - ballade b%alA:d@ // move default stress: ballade and compounds - baller (inA b%al@r // move default stress: ballerina/-o and compounds - balle (t b%alE // move default stress: ballet and compounds - ball (etjie+ bal // restore default stress: balletjie/-s - ba (llon b%a // move default stress: ballon and compounds - ballo (t b,alO // move default stress: ballotasie/balloteer - balsem bals@m // correct e sound in derivatives like balseming - bara (k bar'a - bar (bA b%ar // barbaar/barbare and derivatives/barbier and compounds - basi (lisk b%as@ // fix vowel sounds: basilisk/-e and compounds - bastion bastiOn // -tion not English: bastion/-s and compounds - _) bate b''A:t@ // fix stress and e sound: batefinansiering/-portefeulje and many others - batte (ry b%at@ // move default stress: battery/-e and compounds: batterysuur... - bibli (oC b@bl%i:% // biblioteek and compounds/biblioteke/bibliofiel/bibliografie... bidd bId // biddag/aanbidding _) bid bIt_ // biduur _) bi (ga b%i // bigamie/-s/-e bikini b@kini // move default stress: bikini and compounds bil (j b@l // move default stress: biljet/-te/biljart/biljoen and compounds + billi (k bIl@ // prevent ll: (on)billik/-e/-heid binne bIn@ // binnekom/binnelandse bisan (tyn b%is%an // move default stress: Bisantyns/-e bi (sar b%i // move default stress: bisar/-re @@ -498,9 +459,11 @@ bla (tant bl%a // shorten 1st a and move default stress: blatant/-e/-heid _) blik (A blIk_ // fix i sound: blikaspaai/blikemmer/-s/blikoopmaker/-s/blikoor/blikore bloe (ddors@ bl%u // bloeddorstig and derivatives, but bloeddors + bloed (skendig bl%ut // move default stress: bloedskendig/-e bloed (stol bl%ut // move default stress: bloedstollend/-e _) blo (kka bl%O // move default stress: blokkade/-s and compounds _) blo (kkeer bl%O // move default stress: (ge)blokkeer/-der, etc. + blom (akker blOm_ // fix O sound, pause: blomakker/-s and compounds blon (dine bl%On // move default stress: blondine/-s bly (moed bl%eI // move default stress: blymoedig/-e/-heid bo (botie b%u // fix stress and 1st o sound: bobotie and compounds @@ -513,12 +476,15 @@ bo (he b%u // fix stress: boheems/boheme bok (ooi bOk_ // bokooi/e/ribbokooi/boerbokooi _) bongo bONgu // fix g and o sounds: bongo and compounds: bongotromme + bonsmara b%OnsmA:r%a // move default stress: bonsmarabees/-bul/-koei bosch (_ bOs // Rondebosch/Stellenbosch bo (tanie b%o@ // stress on 2nd slb.: botanies/-e bota (nie_N b%o@t%a // stress on 3rd slb.: botanie + _) bota (niCA bo@t''A: // fix stress: botanikus/botanici boulevard bul@vard // boulevard/-s _) bowe b''o@v@ // fix e sound in compounds: boweaards/bowemaans/bowetoon _) breda br@dA: // move default stress: (van )Breda/Bredasdorp + breidel breId@l // fix e sound: (on)gebreidelde _) briewe (C br''iv@ // fix stress and e sound: briewekolom/-literatuur/-redakteur/-tas bril (jant br@l // move default stress: briljant/-e/-heid/-ste bro (mi br%o@ // fix stress: bromide/bromied(papier)/silwerbromide/ied @@ -542,6 +508,68 @@ by (voorb b%eI// move default stress bywoordeli b%eIvo@rd@l@ // move default stressa: bywoordelik/-e +.group ba + bagasie b@x2A:si // shorten 1st a: bagasie and compounds + @) baarlik b'A:rl@k // move default stress: wonderbaarlik/-e/-heid/-ste + bajone (t b%aj%unE // fix stress and vowel sounds: bajonet/-te and compounds + bakate (l b%ak@t& // fix stress and vowel sounds: bakatel/-le/-letjie + baken bA:k@n // fix e sound: afbakening and compounds + bakte (ri b%akte@ // fix stress and e sound: bakterie/-ë + _) bam (boes b%am // move default stress: bamboes/-e/bamboesfluit... + ba (nalA b%a // fix stress and 1st a sound: banale/banaliteit + band (Alier b,and // fix stress and d sound: band(e/o)lier/-e + band (A bant // fix t sound: bandomslag/-ontwerp/-opname + band (e band // fix d sound: bandeverkoper moterbande etc. + band (iet b%and // fix stress and d sound: bandiet/-e and compounds + ba (nier b%a // move default stress: banier/-e and compounds + ban (ket b%aN // move default stress: banket/-te/-saal, etc. + ban (kier b%aN // move default stress: bankier/-s and compounds + ban (krot b%aN // move default stress: bankrot and derivatives + barberton bA:b@rt%On // fix stress and a sound: Barberton/-lelies/-pad + @) ba (ren b'A: // onrusbarend/opsienbarend and derivatives + ba (retK b%a // move default stress and shorten a sound: baret/-te + ba (riton ba // shorten a sound: bariton and compounds + barok bar''Ok_ // fix stress and a sound: barok/-instrumente/-agtig + baro (meter bar%u // fix a and o sounds: barometer and compounds + ba (ron b%a // fix stress and a sound: baron/-ne and compounds + _) ba (sa b%a fix stress and 1st a sound: basalt and compounds + ba (sieli b%a // fix stress and 1st a sound: basielie/-kruit, etc. + basotho b%asut%u // fix stress and vowel sounds: Basotho/-0ponie and similar + basi (s bA:s@ // basis and compounds + bastille b%asti:l // Bastille and compounds like Bastilledag + batal (jon b%at%al // shorten 1st a sound, moved stress: bataljon and compounds + ba (tik b%a // fix stress and a sound: batik/-doek/-kuns/-werk + badjie baIci + baba bA:ba + baba (tjie bA:baI // fix 2nd a sound: babatjie/-s + _) bad (A bat_ // shorten a sound, pause: bad-/afloop/artikel/olie/oord/uitloop + bad (r bat // fix d sound: (swem)badrand/badroom + bahama b%ahA:m%a // fix 1st a sound and stress: Bahama/-s and compounds + baklei b@kleI // baklei/er + _) bak (o bak_ // fix a sound and stress: bakoor/bakore + balaklava b%al%aklA:v%a // fix stress, a and v sounds: balaklava and compounds + balaklawa b%al%aklA:v%a // fix stress and a sounds: balaklawa and compounds + ba (lans b%a // move default stress + balan (seer b%al%an // move stress to -eer + ba (ldadig b%a // move default stress: baldadig and derivatives + balhor b%alho@r // move default stress: balhorig and derivatives + ba (ljaar b%a // move default stress: baljaar and derivatives + balju b%aljy // move default stress: balju and compounds + ba (lkon b%a // move default stress: balkon and compounds + ballade b%alA:d@ // move default stress: ballade and compounds + baller (inA b%al@r // move default stress: ballerina/-o and compounds + balle (t b%alE // move default stress: ballet and compounds + ball (etjie+ bal // restore default stress: balletjie/-s + ba (llon b%a // move default stress: ballon and compounds + ballo (t b,alO // move default stress: ballotasie/balloteer + balsem bals@m // correct e sound in derivatives like balseming + bara (k bar'a + bar (bA b%ar // barbaar/barbare and derivatives/barbier and compounds + basi (lisk b%as@ // fix vowel sounds: basilisk/-e and compounds + bastion bastiOn // -tion not English: bastion/-s and compounds + _) bate b''A:t@ // fix stress and e sound: batefinansiering/-portefeulje and many others + batte (ry b%at@ // move default stress: battery/-e and compounds: batterysuur... + .group be _) be (_ b@ // words broken at end of line: be- be (amp b@? // fix e sound in compounds ending in beampte @@ -611,6 +639,7 @@ @) bewys b@veIs // "be" in rybewys/lisensiebewys/geboortebewys bee (+ be@ @) beer (_ b'e@r // absorbeer/inhibeer, etc. + %Ca) beer be@r // restore default stress: pappa-/mammabeer teddie) beer be@r // restore default stress ys) beer be@r // restore default stress bede (Cf b@d& // bederf/bedelf @@ -639,6 +668,8 @@ beter b'e@t@r beties be@tis // fix e sounds: diabeties/-e betlehe (m bEtl%i%E // fix stress and vowel sounds: Betlehem/-mer + bewe (knie be@v@ // fix 1st e sound and stress: beweknie/-ë + bewe (lip be@v@ // fix 1st e sound and stress: bewelip/-pe bewe (rasie be@v@ // fix e sounds: bewerasie/-siekte @@ -660,6 +691,7 @@ chemika (li x2%e@m%ikA: // for compounds of chemikalieë cholera ko@l@ra_ // fix e sound: cholera/-epidemie and similarcompounds cholesterol k%OlEst@-r%Ol // cholesterol and many compounds + chore (ogra k%Or%i // fix stress and vowel sounds: choreografie and derivatives ch (l k // chloor and compounds ch (ro k chat _^_EN @@ -672,6 +704,7 @@ chirurg (ie_N S@r%Wrx2 // stress to end: chirurgie _) ci (prA si // fix i sound: Ciprus/Ciprioties/-e coke k@Uk // coke/cokebottel/cokeblikkie and similar + colombi (a@ k%Ol%Omb%i // fix stress and o sounds: Colombiaan/-ane/-aanse corne (li kOrn''e@ // move default stress: Cornelia/Cornelis/Cornelius cy (_ _^_EN // words ending in cy are English chin (e S%in //chinees, chinese @@ -690,79 +723,8 @@ daniël dA:ni@l // fix stress: Daniël(skuil) dani (gh d'A:n@ // -hoedanigheid/hoedanighede/onderdanigheid @) dant d'ant // dant takes stress: kommandant/pruimedant - de (flasi d%e@ // fix e sound: deflasie(beleid)/deflasionêr/deflasionisties - de (gradA d,e@ // fix e sound: degradasie/degradeer/-ering - de (hidr d%e@ // fix stress and e sound: (ge)dehidreer/dehidrasie - @) d (eis t_ // fix d sound, insert pause: skuldeiser/grondeise and many compounds - de (kaan d@ // fix stress and e sound: dekaan/-skap - de (kane d@ // fix stress and 1st e sound: (universiteits)dekane - _) de (klass de@ // deklassifikasie/gedeklassifiseer - de (klinA d%E // fix 1st e sound: deklinasie/deklineer/-nering and compounds - de (krimina d%e@ // fix e sound: (ge)dekriminaliseer/dekriminalisering, etc. - de (laan d@ // fix e sound: tweede-/derde-/vierdelaan... - kun) dele (K d@lE // fix e sounds: Aardryks-/wiskundeles/-se, etc. - onder) dele (@ de@l@_ // fix e sound: onderdelebedryf/-pakhuis, etc. - voor) dele (@ de@l@_ // fix e sound: voordelefonds and similar - _) dele (gA d@l@ // fix stress and e sounds: delegeer/delegasie - @) de (ment d@ // fix e sound: amendement/bombardement/rendement - de (moCr d%E // demokraat/demokrasie/-ë/demokraties/demografie - demone d%imo@n@ // fix stress and vowel sounds: demone and compounds, eg. demonegeloof - de (moon d%i // fix stress and e sound: demoon and compounds - dekade (n dEkad'E - dekade (s dEk'A:d@ - dekant (_ d@kant //try fix suidekant - de (kre d@ // fix stress and 1st e sound: dekreet/dekrete - _) deli (ka d%El%i // delikaat/delikate - delika (tess d%El%ik%a // move default stress: delikatesse/-s - deli (rium d@lI // fix stress and vowel sounds: delirium and compounds - - @) dend (er d@nd // beduidender/behoudender - _) den (dri d%En // dendriet/-e/dendrities/-e - @) dend (ste d@nt // beduidendste/behoudendste - &) de (ne_ d@ // fix penultimate e sound: af-/uitgetredenes/aangehoudenes and similar - _) denim d''En@m // fix e sound in denim and compounds - &) denis d@n@s // geskiedenisboek/kultuurgeskiedenis/belydenis/beduidenis - denk dENk // fix e sound: bronsgedenkbeeld/nadenke/teenbedenking/vrydenker - denken (d d''ENk@n // fix stress and e sound: anders-/edel-/na-/vry-/weldenkend - @) dente (@ dEnt@ // fix connecting e in compounds like studenteoptog/-opvoering - skan) dina d@n'A: //skandinawiese etc. - deodo (rant d%i%ud%u // fix vowel sounds and stress: deodorant/-e and compounds - de (press d%i // depressie/depressief/depressiewe - de (puta d%E // fix e sound: deputasie/-s and compounds - @) derd (_ d@rt // verouderd/afgesonderd/gevorderd - _) derde (K d&:rd@ // fix 2nd e sound: derdemag/derdepartyversekering and similar - twee) derde d&:rd@ // fix e sounds: tweederdemeerderheid/-deel - _) der (duiC d%&r // move default stress: derduisende/derduiwel - @C) derm (K d&r@-m // fix e sound of derm in compounds: nersdermklier/slukdermsiekte, etc. @) dderd (_ d@rt // ontredderd, se rule: dd d - _) derge d&rx2@ // dergelik/-e - desibel dEsib&l // fix vowel sounds: desibel/-s - de (skun d%E //deskundig/e in compounds - _) des (po d%Es // move default stress: despoot/despote - _) destabili (s d%e@st%ab%il%i // fix vowel sounds: destabilisasie/-seer/-sering - de (strukt d%e@ // fix e sound: destruktief/destruktiewe - deto (nA d%Et%u // fix e and o sounds and stress: detonasie/detoneer/detonering - deur (aar d%y@r_ // move default stress: deuraar/-de - deur (bo d%Y@r // move default stress: deurboor/deurborende - deur (dag d%Y@r // move default stress: (on)deurdag/-te/-theid - deur (drenk d%y@r // move default stress: deurdrenk/-te - deur (dring@ d%y@r // move default stress: deurdringend/-e - deur (grond d%y@r // move default stress: (on)deurgrond/-elik/-e/-heid - deur (leef d%y@r // move default stress: deurleef/-de - deur (lop@ d%y@r // move default stress: deurlopend/-e - deur (lugt d%y@r // move default stress: deurlugtig/-e/-heid - deur (priem d%Y@r // move default stress: deurpriem/-de - deur (reis d%Y@r // move default stress: deurreis - deur (sigt d%y@r // move default stress: deursigtig/-e - deur (skynA d%Y@r // move default stress: deurskynend/-e - deur (skynde d%Y@r // move default stress: deurskynde - deur (soek d%Y@r // move default stress: deursoek/-ing - deurspek d%y@rspEk // fix stress and 2nd e: deurspek/-te - deur (trapt d%y@r // move default stress: deurtrapte/-s - deur (waaid d%Y@r // move default stress: deurwaaid/-e - deur (weeC d%y@r // move default stress: deurweef/deurweek/-te - deur (winter d%y@r // move default stress: deurwinter/-de - dewe (tK d@vE // fix stress and vowel sounds: Groepsgebiedewet/Dewetsdorp/-hof + @) d (eis t_ // fix d sound, insert pause: skuldeiser/grondeise and many compounds dge (_ _^_EN // words ending in -dge are English: Cambridge/Hambidge... dia (C d%i%a // diabeet/diafragma/diagnose/dialek/dialoog/diamant diaken d%iA:k@n // diaken and compounds @@ -772,12 +734,14 @@ digi (ta d%ix2%i // move default stress: digitaal/digitale di (gK dI // force default stress: GEDIG/-TE/digbundel/digvorm, etc. digtere (K d@x2t@rE // move default stress: digteres/-se + dik (vell d@k // move default stress: dikvellig/-e/-heid dilemma d@lEma // dilemma and compounds dimen (si d@mEn // fix stress and 1st i sound: (ontwikkelings)dimensie, etc./-dimensioneel/-ele di (namie d%i // move default stress: dinamies/-e dina (miek d%in%a // fix stress and a sound: dinamiek and compounds dina (miet d%in%a // stress to 3rd slb.: dinamiet and compounds dina (stie d%in%a // move default stress: dinastie/-ë + skan) dina d@n'A: //skandinawiese etc. di (nee d@ // fix stress and i sound: dinee and compounds dingaan d@NgA:n // fix stress and g sound: Dingaan(sdag) @) d (inhou t_ // fix d sound: bloed-/goud-/saad-/standaard-/woordinhoud @@ -790,39 +754,23 @@ dis (koers d@s // move default stress: diskoers/-e diskre (s d@skrE // fix stress and e sound: diskresie/diskresionêre _) dis (kre d@s // move default stress: diskreet/-heid/-ste/diskrete + _) dis (kussA d@s // move default stress: diskussie/-s/diskusseer dis (loja d@s // move default stress: dislojaal/-lojale/-lojaliteit _) dis (oP3 d@s // disorganisasie/disoriënteer dis (pu d@s // move default stress: dispuut/dispute distro (fie d@str%u // fix stress and o sound: (spier)distrofie, etc. divide (nd d@v@dE //dividende etc. - d (_N t // + d (_ t // dj c // palatal stop _) dj dZ // regional: djy/djou/djulle, etc. - d (_dN // next word starts with d, drop the d - deloos d@lo@s - delos d@lo@s - @) dge (_ _^_EN //words ending in dge is English -// &C) dele (_ de@l@ _) dames d'A:m@s // numerous compounds with dames kandi) date (C dA:t@ // fix e sound: kandidatelys/-te/-poel - de (bA d@ // debat/-te/debakel/waardebepaling - deba (tteer d@b%a // move default stress to end: debatteer - debi (te d%Eb%i // fix stress and e sound: debiteer/debiteur/debitering - debu (ta d%Eb%y // fix stress and e sound: debutant/-e and compounds - debu (te@ d%Eb%y // fix stress and e sound: debuteer/debutering - debuut d@byt // debuut/-bundel/-vertoning - dee (moedig d%e@ // move default stress: deemoedig/-e/-er/-ste/-heid/-ing - desember d%e@sEmb@r digers d@x2@rs - departe (ment d@p%art@ - deposito d@po@situ // stress and vowel sounds: deposito and compounds - depot (_ dEp%u // fix vowel sounds, drop t: (bus-/goedere)depot/-s, etc. - detail d'i:teIl - detai (lleer d%i:t%eI // fix stress: (ge)detailleer(d/-e) di (ssi d@ // move default stress: dissipel/-s + dissipel (in d@s%ip@l // fix stress and e sound: dissipelin/-ne dissipline (K d@s@plin@ // fix stress and e sound: dissipline/-s/dissiplinebeleid, etc. distri (bu d@str@ // distribusie/distribueer and compounds _) dis (t d@s // stress: distrik/-te and compounds/distansie/distinksie/distorsie/distraksie @@ -871,9 +819,11 @@ @) d (roos t // fix d sound: draadrooster/maand-/strand-/veldroos @) d (rose_ t // fix d sound: maand-/strand-/veldrose @) d (rosie t // fix d sound: maand-/strand-/veldrosie/-s + _) drukke (ry dr%Wk@ // move default stress: drukkery and compounds @) d (t // drop d: breedte/handtekening/rondte/rondtrek... du (et d%u:w // fix stress and -ue-sound: (klavier)duet/-te, etc. @n) d (uit t_ // fix d sound and insert short break: enduit/handuit and similar + verby) dw dw // fix d sound: verbydwarrel/-dwaal/-dwing dwelm (_ dw&l@-m // fix d and e sounds in compounds like wonderdwelm dw (erg dw // fix d sound: tuindwerg/-e/-ie @) dwes tv'Es // noordwes/te/lik/e suidwes/te/lik/e @@ -884,12 +834,106 @@ du (pliC du // duplikaat/dupliseer duvet d%uveI: // duvet/-s/duvetoortreksel, etc. +.group de + de (flasi d%e@ // fix e sound: deflasie(beleid)/deflasionêr/deflasionisties + de (gradA d,e@ // fix e sound: degradasie/degradeer/-ering + de (hidr d%e@ // fix stress and e sound: (ge)dehidreer/dehidrasie + de (kaan d@ // fix stress and e sound: dekaan/-skap + de (kane d@ // fix stress and 1st e sound: (universiteits)dekane + _) de (klass de@ // deklassifikasie/gedeklassifiseer + de (klinA d%E // fix 1st e sound: deklinasie/deklineer/-nering and compounds + de (krimina d%e@ // fix e sound: (ge)dekriminaliseer/dekriminalisering, etc. + de (laan d@ // fix e sound: tweede-/derde-/vierdelaan... + kun) dele (K d@lE // fix e sounds: Aardryks-/wiskundeles/-se, etc. + onder) dele (@ de@l@_ // fix e sound: onderdelebedryf/-pakhuis, etc. + voor) dele (@ de@l@_ // fix e sound: voordelefonds and similar + _) dele (gA d@l@ // fix stress and e sounds: delegeer/delegasie + @) de (ment d@ // fix e sound: amendement/bombardement/rendement + de (moCr d%E // demokraat/demokrasie/-ë/demokraties/demografie + demone d%imo@n@ // fix stress and vowel sounds: demone and compounds, eg. demonegeloof + de (moon d%i // fix stress and e sound: demoon and compounds + dekade (n dEkad'E + dekade (s dEk'A:d@ + dekant (_ d@kant //try fix suidekant + de (kre d@ // fix stress and 1st e sound: dekreet/dekrete + _) deli (ka d%El%i // delikaat/delikate + delika (tess d%El%ik%a // move default stress: delikatesse/-s + deli (rium d@lI // fix stress and vowel sounds: delirium and compounds + delphinium d%&lfini;Wm // fix stress and ph sound: delphinium and compounds + + @) dend (er d@nd // beduidender/behoudender + _) den (dri d%En // dendriet/-e/dendrities/-e + @) dend (ste d@nt // beduidendste/behoudendste + &) de (ne_ d@ // fix penultimate e sound: af-/uitgetredenes/aangehoudenes and similar + _) denim d''En@m // fix e sound in denim and compounds + &) denis d@n@s // geskiedenisboek/kultuurgeskiedenis/belydenis/beduidenis + denk dENk // fix e sound: bronsgedenkbeeld/nadenke/teenbedenking/vrydenker + denken (d d''ENk@n // fix stress and e sound: anders-/edel-/na-/vry-/weldenkend + @) dente (@ dEnt@ // fix connecting e in compounds like studenteoptog/-opvoering + deodo (rant d%i%ud%u // fix vowel sounds and stress: deodorant/-e and compounds + de (press d%i // depressie/depressief/depressiewe + de (puta d%E // fix e sound: deputasie/-s and compounds + @) derd (_ d@rt // verouderd/afgesonderd/gevorderd + _) derde (K d&:rd@ // fix 2nd e sound: derdemag/derdepartyversekering and similar + twee) derde d&:rd@ // fix e sounds: tweederdemeerderheid/-deel + _) der (duiC d%&r // move default stress: derduisende/derduiwel + @C) derm (K d&r@-m // fix e sound of derm in compounds: nersdermklier/slukdermsiekte, etc. + _) derge d&rx2@ // dergelik/-e + @) de (rosie t_%e@ // fix e sound, pause: winderosie/tyderosie and similar + desibel dEsib&l // fix vowel sounds: desibel/-s + de (skun d%E //deskundig/e in compounds + _) des (po d%Es // move default stress: despoot/despote + _) destabili (s d%e@st%ab%il%i // fix vowel sounds: destabilisasie/-seer/-sering + de (strukt d%e@ // fix e sound: destruktief/destruktiewe + deto (nA d%Et%u // fix e and o sounds and stress: detonasie/detoneer/detonering + deur (aar d%y@r_ // move default stress: deuraar/-de + deur (bo d%Y@r // move default stress: deurboor/deurborende + deur (dag d%Y@r // move default stress: (on)deurdag/-te/-theid + deur (drenk d%y@r // move default stress: deurdrenk/-te + deur (dring@ d%y@r // move default stress: deurdringend/-e + deur (grond d%y@r // move default stress: (on)deurgrond/-elik/-e/-heid + deur (leef d%y@r // move default stress: deurleef/-de + deur (lop@ d%y@r // move default stress: deurlopend/-e + deur (lugt d%y@r // move default stress: deurlugtig/-e/-heid + deur (priem d%Y@r // move default stress: deurpriem/-de + deur (reis d%Y@r // move default stress: deurreis + deur (sigt d%y@r // move default stress: deursigtig/-e + deur (skynA d%Y@r // move default stress: deurskynend/-e + deur (skynde d%Y@r // move default stress: deurskynde + deur (soek d%Y@r // move default stress: deursoek/-ing + deurspek d%y@rspEk // fix stress and 2nd e: deurspek/-te + deur (trapt d%y@r // move default stress: deurtrapte/-s + deur (waaid d%Y@r // move default stress: deurwaaid/-e + deur (weeC d%y@r // move default stress: deurweef/deurweek/-te + deur (winter d%y@r // move default stress: deurwinter/-de + dewe (tK d@vE // fix stress and vowel sounds: Groepsgebiedewet/Dewetsdorp/-hof + de (bA d@ // debat/-te/debakel/waardebepaling + deba (tteer d@b%a // move default stress to end: debatteer + debi (te d%Eb%i // fix stress and e sound: debiteer/debiteur/debitering + debu (ta d%Eb%y // fix stress and e sound: debutant/-e and compounds + debu (te@ d%Eb%y // fix stress and e sound: debuteer/debutering + debuut d@byt // debuut/-bundel/-vertoning + dee (moedig d%e@ // move default stress: deemoedig/-e/-er/-ste/-heid/-ing + desember d%e@sEmb@r + deloos d@lo@s + delos d@lo@s +// &C) dele (_ de@l@ + + departe (ment d@p%art@ + deposito d@po@situ // stress and vowel sounds: deposito and compounds + depot (_ dEp%u // fix vowel sounds, drop t: (bus-/goedere)depot/-s, etc. + detail d'i:teIl + detai (lleer d%i:t%eI // fix stress: (ge)detailleer(d/-e) + .group e e e@ e (C E CAC) e (CC @ // fix e sound: nalatenskap/wapenstilstand CAC) e (C% E // beesfilette/nougesette/onderbesette/voortgesette blind) e (C@ @ // fix e sound in compounds like: blindekol/-mol/-wese + pous) e (C @ // fix e sound: pousebrood/-klok/-tyd, etc. + vreugd) e (C @ // fix e sound: vreugdefees/-klokkies/-lied/-tyd... + vriend) e (C @ // fix e sound: vriendepaar/-woorde juwel) e (C @ // fix e sound: juwelekissie and similar compounds fontein) e (C @_ // fix e sound: Fonteinesirkel/-wisselaar, etc. kening) e (@ @ // fix e sound: rekeningeklerk/-navraag and similar @@ -901,6 +945,7 @@ @C) e (aCC @_ // fix e sound: doodseise-/manne-/ongevalle-/troepeafdeling/slakkeafval/handearbeid C) e (marie @ //anemarie, lisemarie etc. n) eke (_ @k@ //anneke Heineke etc. + eku (menie %Ek%y // fix stress and e sound: ekumenies/-e @k) e (raad @ // fix e sound: lekeraadslid/praktykeraad CACp) e (rl @ // fix e sound: werperligte/wimperloos CAC) e (rr @ // fix e sound: koperring/-rooi/nederryn/somerreën/-rok/superrealis/syferrekenaar... @@ -909,6 +954,7 @@ lat) eres @r@s //lateres fp) ers (_ &rs // fix e sound: dof-/gif-/olyf-/tydskrifpers, etc. bloup) ers &:rs // fix e sound: bloupers + iew) ers (ter @rs // fix e sound: (l)iewerster treil) e (rC @ // fix e sound: (vis)treilerkaptein/-wrak and similar compounds dehands) e (C@ @ // fix e sound: tweedehandsemotorhandelaar/-winkel, etc. goeder) e (@ @ // fix e sound: goederekapitaal/-kantoor/-loods/-mark/-omset/-reg @@ -920,6 +966,7 @@ naald) e (C @ // fix e sound: naaldekoker/-kussing/-werk, etc. noord) e (C @ // fix e sound: noordewind and compounds Colw) e (C @ // fix e sound: golweslag/wolwedans + bolw) e (rk_ & // exception to above: fix e sound: bolwerk and compounds ros) e (CA @ // fix e sound: rosegeur/roseweg slang) e (C @ // fix e sound: slangebesweerder/-diens/-draer/-gebroedsel/-kuil/-teelt speld) e (C @ // fix e sound: speldekop/-kussing/-punt, etc. @@ -983,31 +1030,6 @@ @C) e (lke_ & // fix e sound: many compounds ending in -elke: blomkelke, etc. uiC) e (K+ @ // fix e sound in wrds like: bruidegom/druipeling/duinebesie/duisendpoot/kruisement... yd) e (l @ //ydel e sound in compounds verydeling - &C) e (nbArg @ // fix e sound: Blankenberg/Edenburg/Elsenburg/Hartzenberg/Katzenberg/Neurenberg/Witsenberg - ng) e (nd @ // fix e sound: dringends/dwingends/deurdringender - &k) e (ne_ @ // fix penultimate e sound: beskonkene/-s/gebrokene/uitgewekene/versonkene - sk) e (ne_ e@ // fix penultimate e sound: hakskene and any compounds - &s) e (ne_ @ // fix penultimate e sound: aangewesene/gekosenes/genesene/herresene/toegewesene/ - enge (l EN@ // Engeland/Engelsman/Engelssprekend/hengelklub/mengeldrankie/-moes - enjin Enj@n // fix e sound of compounds with -enjin: diesel-/agterenjin, etc. - boord) e (ns @ // fix e sound: boordens(te)vol - CAC) e (nsieeC %E // fix e sound: differensieel/eksponensieel/konfidensieel/differensieer - CAC) e (nsiëC %E // fix e sound: differensiële/eksponensiële/konfidensiële - l) ens (_ E:ns // fix e sound: kamaralens/wyehoeklens/kontaklens and similar - l) ense (_ E:ns@ // plurals: kamaralense/wyehoeklense/kontaklense - AAl) ens (_ @ns // fix e sound: meulens and compounds - ensemble _%A~nsA~mb@L // (kamer-/klavier)ensemble - vaCk) e (nC @ // fix e sound: Valkenburg/varkensgras/-kos, etc. - vel) ens (_ @ns // fix e sound: vervelens - vull) ens (_ @ns // fix e sound: vullens and compounds - @k) e (nskap @ // fix e sound: dronkenskap and derivatives - pot) e (nC E // fix e sound: potensieel/potensiële - Cp) ens (+ Ens // fix e sound: beespens/grootpens/melkpens/sikspens/skaappens/varkpens/trippens/vaalpens - Cp) ense (le_ Ense@ // fix penultimate e sound of compounds ending in -pensele: skilder/puntpensele, etc. - Copp) ens @ns // fix e sound: hartkloppens/pasoppens/skoppens - ensiklope %Ens%ikl%up@ // fix stress and vowel sounds: ensiklopedie and compounds - entoesia %Ent%us%ia // move default stress: entoesias/-te/-me - entrepre (ne %A~ntr@pr@ // fix stress and vowel sounds: entrepreneur/-s and compounds C) e (pad @ // fix e sound: (af/op)draandepad/hasepad C) e (pan @ //fix e sound: instrumentepaneel/kolepan/liefdepand @C) eps (+ Eps // fix e sound: biseps/triseps and similar @@ -1016,7 +1038,6 @@ Cd) e (tr @ // fix e sound: teveldetrekking/vreugdetraan/voogdetrust/waardetrust @k) e (tt@+ E // menseketting/etikette sp) e (lonk @ // spelonk/rowerspelonk/spelonkagtig etc. - _k) e (ndh =E // but bekendheid/onbekendheid @C) e (rh @ //donkerheid/kweperheining/nywerhede/pantserhemp/klapperhaar/suikerhandel/hamerhou p) e (talje @ // fix stress and 1st e sound: petalje and compounds l) e (moen @ //fix lemoen and compounds @@ -1057,7 +1078,7 @@ ekse (llenC %Eks@ // fix 2nd e sound: eksellensie/-s/eksellent/-e ekspli (siet %Ekspl@ // fix stress and i sound: eksplisiet/-e _) ekster (K Ekst@r // restore default stress: ekster/-s and compounds - _) ekstern %Ekst&r@-n + _) ekstern %Ekst&r@-n ekstre (mis %Ekstr@ // move default stress: ekstremis/-te/-ties ekstra (K Ekstra // ekstra/-s ekstro (ver %Ekstr%u // fix stress and o sound: ekstrovers/-e/-vert @@ -1066,33 +1087,6 @@ eun) eri (n @r'I // fix stress and e sound: sigeunerin/-ne/-netjie hal) e (rC@ @ // uithalerperd/-skut/-speler and similar C) e (ndh =@ //asemrowendheid/beduidendheid/doeltreffendheid/dringendheid/voortvarendheid... - u) eel 'e@l // words ending in ueel take stress on last slb - @) eer (N 'e@r // this string most often has stress - h) eer e@r // words containing heer take default stress: allesoorheersende - gel) eer e@r // words containing geleer take default stress: regsgeleerde - @k) eer e@r // words containing keer take default stress, except for: - ik) eer 'e@r // abdikeer/kommunikeer, etc. - AAl) eer e@r // restore default stress: evange-/evolusie-/seekoeilieleer, etc. - Aol) eer 'e@r // fix stress: rioleer/gelanseoleer/-de/gepetioleer - oriënt) eer e@r // default stress: beroepsgeoriënteerd and similar - Cm) eer e@r // words containing meer preceded by consonant take default stress: bergmeer/strandmeer, etc. - rm) eer 'e@r // but not words like: alarmeer/gereformeerd/transformeer - sf) eer e@r // sfeer at end of compounds does not take stress: atmosfeer, etc. - sk) eer e@r // words kontaining skeer take default stress: af/glad/kort/raakgeskeer - AACl) eer e@r // default stress: aanleer/dwaalleer/klimaatleer/laerskoolleerling/staanleer/toonleer - gl) eer e@r // restore default stress: dagleerling and similar - kl) eer e@r // restore default stress: dakleer/kerkleer/klankleer/vakleerling/varkleer - nl) eer e@r // restore default stress: kernleerplan and compounds - rl) eer e@r // move default stress: agterleer/burgerleer/kelderleer/solderleer - sl) eer e@r // words containing sleer take default stress: seemsleer/volstruisleer - ep) eer e@r // default stress: (harde-/wilde-)peer and compounds - Cs) eer e@r // words containing seer (meaning pain) take default stress - ks) eer 'e@r // annekseer/indekseer/lakseer/takseer and their compounds - ss) eer 'e@r // but many words cont. sseer take stress: adresseer, etc. - Cv) eer e@r // stress: (hoender/volstruisveer/dryfveer - AAv) eer e@r // restore default stress: pouveer/makouveer/horlosieveer/kraaiveer/rooiveer - w) eer e@r // stress may vary in words containing weer: lugafweer/donderweer - u) eer 'e@r // aktueer/konstrueer/salueer, etc. effek (K %ifEk // move default stress and fix e sound: effek/-te/-tief/rimpeleffek eienaardig %eI@nA:rd@x2 // move default stress: eienaardig/-ste @) ein (dig 'eIn // nimmereindige/nimmereindigend @@ -1119,23 +1113,11 @@ C) elwers ''&lv@rs // fix e sounds: delwersdorp/-drome/-kamp/-komitee/-lisensie/sigselwers C) ema (_ e@ma // words ending in ema: compounds of skema/tema emfi (seem %Emf%i // move default stress: emfiseem and compounds - C) enaar @nA:r // eienaar/lessenaar - C) enier @n'i:r // kruidenier/spysenier/valkenier/Renier - C) enheid @nheIt // opgewondenheid/bedorwenheid and many similar - _) enorm e@n'Or@_m // enorm/-s, pronunc. of rm - _) enorm (A %e@nOrm // enorme/enormiteit, pronunc. of rm and stress - _) enkel ENk@l // enkelbaan/enkelbed; many compounds - @C) eny (_ @n'eI // words ending in eny have stress on y + ooi) e (ntjie // drop e in nooientjie/-s and compounds d) e (fi E  &w) e (f @ // fix e sound: wolwefluite/krewefuik C) e (kant+ @ // buitekant/noordekant/landsekant/gladdekantvyl/hawekantoor @C) e (kodeK @ // fix e sound: kudde-/module-/morsekode/-s - ee e@ - eetjie e@ici // tweetjies/hanetreetjie - eedjie e@ici // kleedjie/tafelkleedjie/altaarkleedjie - eeu iu: - eeue iu:@ // fix e sound: leeueaandeel/eeuelang/eeueoud/skreeuerig - ee (uu e@_ // split ee/uu, eu not diphthong: tweeuur and compounds ei eI ey eI eu Y@ @@ -1147,11 +1129,11 @@ &C) e (uu @_ // split e/uu, eu not diphthong: seweuur and similar eë e@ // e deelteken-e &) e (_ @ - m) e (nis @ // geheimenis(vol)/verdoemenis C) e (toe_ @ // binnetoe/buitetoe e (gK & @C) e (groep @ // fix e sound: beelde-/vriendegroep _) ega (l %e@x2A: // stress: egalig/-e + egosentrie %e@x2%usEntri // fix stress and o sound: egosentries/-e _) e (gipt %e@ // move default stress: Egipte/Egiptenaar/Egipties C) ektomie 'Ektumi // histerektomie/vasektomie &) elik (ing @l@k // verduideliking/s/vergoddeliking/verstedeliking @@ -1194,13 +1176,11 @@ gesp) e (ld & // fix e sound: aanmekaargespeld/-e and similar Csp) e (ls & // fix e sound: jakkalspels/penspels/lamspels and similar elagtig @l'ax2t@x2 // beuselagtig/e/heid/buffelagtig... - ener (gi %En@r // energie/energiek/e - ele (ment El@ // element/e/klankelement + element %El@mEnt // element/e/klankelement m) e (lend @ // murmelend/wriemelende m) e (ling @ // versameling/insameling/stameling &C) e (lrA @ // fix e sound: // kreukelrig/kriewelrig/kronkelrig/wankelrig/wankelry and similar @w) e (lsyn & // fix e sound: dierewelsyn and similar - _) eni (g 'e@n@ // enigeen/enigiemand/enigiets/eniggebore/enigermate C) e (ltjie @ // eltjie always @lki _) epilep Ep@l'Ep // epilepsie/epilepties/e @@ -1220,32 +1200,16 @@ emalje %e@malj@ // fix stress and e sounds: emalje and compounds _) em (ble %Em // move default stress: embleem/embleme em (pir %Em // move default stress: empiries/-e - enemmel %in&m@l // fix stress and vowel sounds: enemmel/-beker/-bord - eners e@n@rs // fix 2nd e sound: enerse/enersheid - _) enig (ma %EnIx2 // stress and e sound: enigma/-ties/-e - enkel (voudi %Enk@l // move default stress: enkelvoudig/-e lei) er (s @r // leierskap/leiersgroep/leierskursus/leiersposisie... in) er (A 'e@r // kombinering/verkleinering... ff) er (@ @r // keffertjie/koffersleutel/offerande/opoffering stoff) er (A 'e@r // exception to rule: ff) er (@ @ C) eres @r'Es // ...onderwyseres + @dans) ere (K @rE // fix stress: beroeps-/waaierdanseres/-se/-sie, etc. C) eress @r'Es // onderwyseresse/-sie &) e (m_ @ &l) e (m_ E // compounds ending in lem n) erie (_ @r'i //masjinerie and compounds stress and e sound - @Cp) e (n_ E// balpuntpen/koorspen/vulpen and similar - @Cp) e (nne E // plurals of the above/-pennetjie - breip) e (n E // fix e sound in breipen/-ne - &) e (n_ @ - &) e (nC_ @ - &) e (nde_ @ // fix penultimate e sound: sinkende/drinkende/klinkende - &) e (ndeC_ @ // fix penultimate e sound: helpendes/sterwendes/blinkender, etc. - sk) e (nd E // fix e sound: lyk/grafskend(er) and similar - endel (_ End@l // fix e sound: deurgrendel/toegrendel, etc. - &) e (ng_ E - @f) e (nis @ //erfenis/kultuurerfenis/verderfenis - ooi) e (ns @ // fix e sound: compounds starting with nooiens - ooi) e (ntjie // drop e in nooientjie/-s and compounds &) e (r_ @ &) ers (_ @rs @@ -1266,10 +1230,10 @@ _rasp) e (r @ // fix e sound in rasper- compounds: raspertong/-vyl, etc./rasperend werp) e (rsA @ // fix e sound: ontwerpersolie/-sonbril/-uitrusting lew) e (ns @ - &d) e (r@+ @ // not initial or final syllable + &d) e (r@++ @ // not initial or final syllable skuld) erke _&rkE // fix e sound: skulderkentennis/-erkenning @C) e (reë @ // fix e sound: geelperskereën/tropereën, etc. - @d) e (rnst+ & // but fix e sound in doodernstig/-e + @d) e (rnst++ & // but fix e sound in doodernstig/-e &t) e (r@ @ Cit) e (ring e@ // fix final e sound in compounds like begrotingsmonitering iënt) e (r@n e@ // fix e sound: lewensoriëntering/-rende @@ -1280,25 +1244,11 @@ eska (pade %Esk@ // fix stress and a sound: eskapade/-s and compounds essen (si %isEn // fix e sounds: essensie/essensieel/essensiële komp) e (t@ @ // kompetisie/s/uitklopkompetisie/inkompetensie - een (drag@ %e@n // eendrag has stress on 1st slb, but eendragtig and similar on 2nd - een (malig %e@n // move default stress: eenmalig/-e/-heid - een (parig %e@n // move default stress: eenparig/-e/-heid - _) een (stemm %e@n // move default stress: eenstemmig/-e/-heid - _) een (sy %e@n // move default stress: eensydig/-e/-heid - _) een (ton %e@n // move default stress: eentonig - een (Cjie e@:iN // eendjie/Leentjie/steentjies - een (vorm %e@n // move default stress: eenvormig/-e/-heid - _) een (voud@ %e@n // stress on 2nd slb: eenvoudig, but on 1st: eenvoud - eerbied (A e@rb'id // eerbiedig/ing - eerbiedw %e@rb%itv // eerbiedwaardig/eerbiedwekkend - _) eerw %e@rv // stress: eerwaarde - entjie (+ EiNci - &k) entjie iNci // fix -entjie sound: bakentjie/dekentjie/kuikentjielakentjie/tekentjie, etc. edjie 'E:ici &) etjie (+ ici Cn) etjies Eicis // kraaknetjies/hipernetjies nn) etjies icis // kannetjies/mannetjies/pennetjies, etc. - &) elikheid (_S8 @l@keIt // vriendelikheid/duidelikheid + &) elikheid @l@keIt // vriendelikheid/duidelikheid/gemoedelikheid epi (deC %Ep%i // epidemie/-s/-e/epidermies/epidermis &K) erig @rIx2 @@ -1314,7 +1264,7 @@ _) este (t %Este@ // fix stress and vowel sounds: esteties/-e/estetika hip) e (r @ _) er (b &r' // erbarm/ing - erke (n %&rkE // fix stress and e sounds: erken/-ning/(self)erkende + erke (n+ %&rkE // fix stress and e sounds: erken/-ning/(self)erkende m) erke (nd &rk@ // kenmerkend/-e p) erke (nd &rk@ // beperkend/-e w) erke (nd &rk@ // (mede/terug)werkend/-e @@ -1322,8 +1272,12 @@ &) ere (_ @r@ @l) ere (_ e@r@ // fix e sound: staanlere/toonlere sw) ere (_ e@:r@ // fix e sound: pitswere and similar compounds + @C) erp (_ &rp // fix e sound: wol-/syserp and similar + @C) erpe (_ &rp@ // fix e sound: wol-/syserpe and similar + @C) erpie (_ &rpi // fix e sound: wol-/syserpie/-s @) ery (_+ @reI // oorlopery, etc. @) ery (e_ @reI // fix 2nd e sound: delwerye and similar + _) es (karp %Es // move default stress: eskarp/-e and compounds eti (ket %Et%i // shorten e sound and move stress: etiket/-te etikette (rA %Et%ik%Ete@ // fix e sound: etiketterend/-ering C) e (waar @ // fix e sound: bate-/portefeulje-/toegevoegdewaarde/benedewaarts @@ -1333,18 +1287,6 @@ evolus EvOl'ys // evolusie/devolusie/revolusie C) ewy (C @veI // alewyn/compounds of brandewyn/sekondewyser _op) e (n @ - C) ensie (K 'Ensi // many words ending in stressed ensie(s) - m) ensie (K e~ns%i // words ending in -mensie/-s mostly take default stress: ontwikkelingsdimensies - ensiem (_ _%Ensim // fix stress: (lewer)ensiem - ensiem (e_ _%Ensim // fix stress: (lewer)ensieme - C) ensies 'Ensis // forensiese - @) enswaar (dig @nsv'A:r // noemenswaardige/bejammerenswaardig - @C) ent (K 'Ent // orent/student/presidentsrede - @C) ent (e_ 'Ent // plurals of some of the above - en) ent (_ Ent // restore default stress: koppenent/voetenent - pr) ent (++ Ent // default stress for compounds of prent/-e - pr) entjie E:iNk%i //fix prentjie - @s) ent (rA Ent // winkelsentrum/studentesentrum, etc. @C) er (tyd @r // tegelykertyd/kindertyd/indertyd, but spertyd _) etens 'e@t@ns // etenstyd/klok/tafel/uur pann) e (C @ //pannekoek and friends @@ -1352,6 +1294,7 @@ elaar @lA:r //wandelaar, twyfelaar etc. oord) elaar e@lA:r //beoordelaar and oordelaar/friends C) ewel (A e@v@l // prewelend/wrewelig/newelig/beneweling + ewewig (tig %e@v@vIx2 // move default stress: ewewigtig/-e d) e (mons E% r) e (digering E som) e (r @ //someraand and others. @@ -1371,10 +1314,6 @@ ou) e (a @_ // fix e sound: vroueafdeling/-arbeid/-er C) e (v @ //kleibevattend/stasiebevelvoerder/skadevergoeding -// The following are experimental nasalisation of ens - gr) ens e~ns - m) ens (++ e~ns - w) ens e~ns @sam) e (ns_ @ //fix eksamens @nem) e (ns_ @ //fix words ending in nemens _mens) e @ //mense at start of compounds @@ -1391,7 +1330,6 @@ wild) e (kA @ //wilde in compounds with k wildekomkommer etc. will) e (C @ //willem, willemse etc./willekeur pp) e (C@+ @ // flapperend/snippermandjie/dopperkerk/poppekas... - &) e (nk_ E // but kersgeskenk/verjaardaggeskenk @ks) e (mC @ // bliksems and compounds/bebliksemde/boksemdais @) e (spel_ @ //gebarespel/kleurespel/klokkespel/parespel/poppespel/samespel/snarespel ar) e (sse_ 'E // bibliotekaresse/sekretaresse @@ -1417,6 +1355,7 @@ Ceuw) e (l @ //gesneuwelde heuwelhang etc. v) e (nno@+ @ //vennoot and friends _) euro (pe %Y@r%o@ // stress: Europees/Europese + ev (entue %iv // fix e and v sounds: eventueel/-ele _) ewe (red %e@v@ // move default stress: (on)eweredig/-e/-heid ex (+ _^_EN // words containing ex are English al) ex (and %Ekz //alexanderbaai, alexandria etc. @@ -1426,6 +1365,133 @@ ey (_ _^_EN // Wrds ending in -ey are English: Jeffrey and similar +.group ee + ee e@ + eetjie e@ici // tweetjies/hanetreetjie + eedjie e@ici // kleedjie/tafelkleedjie/altaarkleedjie + eeu iu: + eeue iu:@ // fix e sound: leeueaandeel/eeuelang/eeueoud/skreeuerig + ee (uu e@_ // split ee/uu, eu not diphthong: tweeuur and compounds + u) eel 'e@l // words ending in ueel take stress on last slb + @) eer (N 'e@r // this string most often has stress + h) eer e@r // words containing heer take default stress: allesoorheersende + gel) eer e@r // words containing geleer take default stress: regsgeleerde + @k) eer e@r // words containing keer take default stress, except for: + ik) eer 'e@r // abdikeer/kommunikeer, etc. + AAl) eer e@r // restore default stress: evange-/evolusie-/seekoeilieleer, etc. + Aol) eer 'e@r // fix stress: rioleer/gelanseoleer/-de/gepetioleer + @Cl) eer e@r // restore default stress in compounds like windpompleer + oriënt) eer e@r // default stress: beroepsgeoriënteerd and similar + Cm) eer e@r // words containing meer preceded by consonant take default stress: bergmeer/strandmeer, etc. + rm) eer 'e@r // but not words like: alarmeer/gereformeerd/transformeer + sf) eer e@r // sfeer at end of compounds does not take stress: atmosfeer, etc. + sk) eer e@r // words kontaining skeer take default stress: af/glad/kort/raakgeskeer + AACl) eer e@r // default stress: aanleer/dwaalleer/klimaatleer/laerskoolleerling/staanleer/toonleer + gl) eer e@r // restore default stress: dagleerling and similar + kl) eer e@r // restore default stress: dakleer/kerkleer/klankleer/vakleerling/varkleer + nl) eer e@r // restore default stress: kernleerplan and compounds + rl) eer e@r // move default stress: agterleer/burgerleer/kelderleer/solderleer + sl) eer e@r // words containing sleer take default stress: seemsleer/volstruisleer + ep) eer e@r // default stress: (harde-/wilde-)peer and compounds + Cs) eer e@r // words containing seer (meaning pain) take default stress + ks) eer 'e@r // annekseer/indekseer/lakseer/takseer and their compounds + ss) eer 'e@r // but many words cont. sseer take stress: adresseer, etc. + Cv) eer e@r // stress: (hoender/volstruisveer/dryfveer + AAv) eer e@r // restore default stress: pouveer/makouveer/horlosieveer/kraaiveer/rooiveer + Cev) eer e@r // restore default stress: duiwe-/haneveer + w) eer e@r // stress may vary in words containing weer: lugafweer/donderweer + u) eer 'e@r // aktueer/konstrueer/salueer, etc. + @) eerdheid 'e@rtheIt // fix stress: geraffineerdheid/ongedissiplineerdheid, etc. + een (drag@ %e@n // eendrag has stress on 1st slb, but eendragtig and similar on 2nd + een (malig %e@n // move default stress: eenmalig/-e/-heid + een (parig %e@n // move default stress: eenparig/-e/-heid + _) een (stemm %e@n // move default stress: eenstemmig/-e/-heid + _) een (sy %e@n // move default stress: eensydig/-e/-heid + _) een (ton %e@n // move default stress: eentonig + een (Cjie e@:iN // eendjie/Leentjie/steentjies + een (vorm %e@n // move default stress: eenvormig/-e/-heid + _) een (voud@ %e@n // stress on 2nd slb: eenvoudig, but on 1st: eenvoud + eerbied (A e@rb'id // eerbiedig/ing + eerbiedw %e@rb%itv // eerbiedwaardig/eerbiedwekkend + _) eerw %e@rv // stress: eerwaarde + + +.group en + &k) ene (_ @n@ // fix penultimate e sound: beskonkene/-s/gebrokene/uitgewekene/versonkene + sk) ene (_ e@n@ // fix penultimate e sound: hakskene and any compounds + &s) ene (_ @n@ // fix penultimate e sound: aangewesene/gekosenes/genesene/herresene/toegewesene/ + enge (l EN@ // Engeland/Engelsman/Engelssprekend/hengelklub/mengeldrankie/-moes + enjin Enj@n // fix e sound of compounds with -enjin: diesel-/agterenjin, etc. + ence (K+ _^_EN // words containing ence are English: Spencer/silencer, etc. + l) ens (_ E:ns // fix e sound: kamaralens/wyehoeklens/kontaklens and similar + l) ense (_ E:ns@ // plurals: kamaralense/wyehoeklense/kontaklense + AAl) ens (_ @ns // fix e sound: meulens and compounds + ensemble _%A~nsA~mb@L // (kamer-/klavier)ensemble + vel) ens (_ @ns // fix e sound: vervelens + vull) ens (_ @ns // fix e sound: vullens and compounds + @k) en (skap @n // fix e sound: dronkenskap and derivatives + pot) en (C En // fix e sound: potensieel/potensiële + Cp) ens (+ Ens // fix e sound: beespens/grootpens/melkpens/sikspens/skaappens/varkpens/trippens/vaalpens + Cp) ense (le_ Ense@ // fix penultimate e sound of compounds ending in -pensele: skilder/puntpensele, etc. + Copp) ens @ns // fix e sound: hartkloppens/pasoppens/skoppens + ensiklope %Ens%ikl%up@ // fix stress and vowel sounds: ensiklopedie and compounds + entoesia %Ent%us%ia // move default stress: entoesias/-te/-me + entrepre (ne %A~ntr@pr@ // fix stress and vowel sounds: entrepreneur/-s and compounds + &C) en (bArg @n // fix e sound: Blankenberg/Edenburg/Elsenburg/Hartzenberg/Katzenberg/Neurenberg/Witsenberg + ng) en (d @n // fix e sound: dringends/dwingends/deurdringender + boord) en (s @n // fix e sound: boordens(te)vol + CAC) en (sieeC %En // fix e sound: differensieel/eksponensieel/konfidensieel/differensieer + CAC) en (siëC %En // fix e sound: differensiële/eksponensiële/konfidensiële + vaCk) en (C @n // fix e sound: Valkenburg/varkensgras/-kos, etc. + _k) en (dh =En // but bekendheid/onbekendheid + C) enaar @nA:r // eienaar/lessenaar + C) enare (_ @nA:r@ // fix e sound: towenare and similar + C) enier @n'i:r // kruidenier/spysenier/valkenier/Renier + C) enheid @nheIt // opgewondenheid/bedorwenheid and many similar + _) enorm e@n'Or@_m // enorm/-s, pronunc. of rm + _) enorm (A %e@nOrm // enorme/enormiteit, pronunc. of rm and stress + _) enkel ENk@l // enkelbaan/enkelbed; many compounds + @C) eny (_ @n'eI // words ending in eny have stress on y + m) en (is @n // geheimenis(vol)/verdoemenis + ener (gi %En@r // energie/energiek/e + enemmel %in&m@l // fix stress and vowel sounds: enemmel/-beker/-bord + eners e@n@rs // fix 2nd e sound: enerse/enersheid + _) enig (ma %EnIx2 // stress and e sound: enigma/-ties/-e + enkel (voudi %Enk@l // move default stress: enkelvoudig/-e + @Cp) en (_ En // balpuntpen/koorspen/vulpen and similar + @Cp) enn (e En // plurals of the above/-pennetjie + breip) en En // fix e sound in breipen/-ne + &) en (_ @n + &) en (C_ @n + &) en (de_ @n // fix penultimate e sound: sinkende/drinkende/klinkende + &) en (deC_ @n // fix penultimate e sound: helpendes/sterwendes/blinkender, etc. + sk) en (d En // fix e sound: lyk/grafskend(er) and similar + endel (_ End@l // fix e sound: deurgrendel/toegrendel, etc. + &) eng (_ EN + @f) en (is @n //erfenis/kultuurerfenis/verderfenis + ooi) en (s @n // fix e sound: compounds starting with nooiens + _) eni (g 'e@n@ // enigeen/enigiemand/enigiets/eniggebore/enigermate + entjie (+ EiNci + &k) entjie iNci // fix -entjie sound: bakentjie/dekentjie/kuikentjielakentjie/tekentjie, etc. + C) ensie (K 'Ensi // many words ending in stressed ensie(s) + m) ensie (K e~ns%i // words ending in -mensie/-s mostly take default stress: ontwikkelingsdimensies + ensiem (_ _%Ensim // fix stress: (lewer)ensiem + ensiem (e_ _%Ensim // fix stress: (lewer)ensieme + C) ensies 'Ensis // forensiese + @) enswaar (dig @nsv'A:r // noemenswaardige/bejammerenswaardig + @C) ent (K 'Ent // orent/student/presidentsrede + @C) ent (e_ 'Ent // plurals of some of the above + en) ent (++ Ent // restore default stress: koppenent/-e/voetenent/-e + pr) ent (++ Ent // default stress for compounds of prent/-e + pr) entjie E:iNk%i //fix prentjie + @s) ent (rA Ent // winkelsentrum/studentesentrum, etc. + &) en (k_ EN // but kersgeskenk/verjaardaggeskenk +// The following are experimental nasalisation of ens + gr) ens e~ns + m) ens (++ e~ns + w) ens e~ns + + .group f f f f (f @@ -1439,6 +1505,7 @@ fa (nati f%a // fix stress and a sound: fanaties/-e fan (fare f%an // move default stress: fanfare/-s fanta (sA f%ant%a // fantaseer/fantasie + _) fan (to f%an // move default stress: fantoom/fantome fari (seër f%ar%i // fix stress and a sound: Fariseër/-s farma (seut f%arm%a // move default stress: farmaseut/-e/-ies/-ika fasade f%asA:d@ // fix stress and 1st a sound: fasade/-s and compounds @@ -1451,6 +1518,7 @@ feite feIt@ // fix 2nd e sound: feitebepaling/-bevinding/-bron/-fout/-kennis/-lik @) fel (end f@l // betwyfelend/skuifelend/weifelend @) fel (ing f@l // betwyfeling/skuifeling/weifeling + fe (minA f%E // fix e sound: feminis/-me/-te/-ties fenom (e f@n%Om // fix stress and vowel sounds: fenomeen/-ene fenomen (A@ f@n%Om@n // fix stress and vowel sounds: fenomenaal/-ale/fenomeneel/-ele fero (mo f%Er%u // fix stress and vowel sounds: feromoon/feromone @@ -1479,6 +1547,8 @@ _) fok (o fOk_ // fix o sound, insert short break: fokop/fokof folio fo@li_u // fix o sounds: folio and compounds fondue f%Ondy // fix stress and ue sound: fondue and compounds + fone (tiek f%o@n@ // fix e sound: fonetiek and compounds + fone (tie f%une@ // fix stress and o sound: foneties/-e @) fonie fun'i // kakofonie/simfonieorkes/telefonie @) fonies f'o@nis // fix stress: simfoniese/polifonies/telefonies @) fonie (s@@ fun'i // fix stress: simfonieseisoen and similar @@ -1494,11 +1564,14 @@ foto fo@tu fotoge (nie f%o@t%ux2e@ // fix stress and e sound: fotogenies/-e fo (togra fo@ // move default stress: fotograaf and similar + foto (sta f%o@t%u // move default stress: fotostaat/fotostate and derivatives fra (giel fr%a // fix stress and a sound: fragiel/-e + fran (Cina fr%an _) fran (CisCA fr%an // fix stress and a sound: Fransiskus/Franciscus/Francisca frangi (pani fr%aN%i // fix stress: frangipani and compounds fre (kwen fr%i // fix stress and 1st e sound: frekwensie/-s and compounds freud frOId // Freud/Freudiaans/-e + frikkade (l fr@k@d& // fix stress, a and e sounds: frikkadel/-le front (A@ fr%Ont // fix stress and e sound: konfronterend/-e/konfrontering fru (str fr%W // move default stress: frustrerend/-e fung (e f%WNx2 // fungeer/fungerende/fungering @@ -1519,6 +1592,8 @@ gal (joen x2%al // move default stress: galjoen/-e and compounds gamie (_ x2am'i // bi-/mono-/poligamie, etc. gamies x2'A:mis // bi-/mono-/poligamies/-e + @) gans x2A~ns // nasalise a: berggans/kolgans/-e + gans (C x2A~ns // nasalise a: gansveer/-vere and similar compounds ga (riep x2%a // fix stress and a sound: Gariep(dam) gar (n x2%ar // move default stress: garnaal/garnale/garneer/garnering and compounds garni (soen x2%arn%i // fix stress: garnisoen and compounds @@ -1541,6 +1616,7 @@ gim (naK x2@m // move default stress: gimnas/-te gimna (siA x2@mnA: // move default stress and lenghthen a sound: gimnasium/gimnasia glans x2lans // glans not nasalised: glans/-ende/-papier, etc. + glas (a x2las_ // shorten a sound, short pause: glasafskorting/-albaster/-apparaat... glas (o x2las_ // fix a sound and short break: glasoog/-ogie/-oë/-opaal/-oppervlakte gletser x2l''Ets@r // fix 2nd e sound: gletserbeweging/-meer/-vorming/vergletsering, etc. glise (rien gl@s@ // fix stress and g and vowel sounds: gliserien(-salf/-suur) @@ -1556,6 +1632,7 @@ _) goewer x2%uv@r // move default stress: goewerneur and compounds A) gogie (_ x2ux2'i // demagogie/pedagogie A) gogies x2'o@x2is // demagogies/-e/pedagogies/-e + gomag (tig x2Om_%ax2 // fix o sound and stress, pause: gomagtig/-e/-heid A) goog (_ x2'o@x2 // demagoog/pedagoog gor (dyn x2%Or // move default stress: gordyn and compounds go (rilla g%u // fix g and o sounds: gorilla and compounds @@ -1593,6 +1670,7 @@ grotere x2ro@t@r@ // fix vowel sounds and stress: grotere/-s guerrilla g@r'Ila guillotine g%il%utin // guillotine and compounds + gus (ooi x2Ws_ // fix u sound, pause: gusooi/-e guttu (ra x2%Wt%W // move default stress: gutturaal/gutturale gésel x2e@s@l // fix stress and e sounds: (ge)gésel/-ing @@ -1627,6 +1705,7 @@ ge (kg x2& // fix stress and e sound: gekgeskeer ge (kk x2& ge (kh x2& + geklede x2@kle@d@ // fix e sound: wit-/swart-/groengeklede ge (kt x2& // fix e sound: gektalery gekw (ord x2&kv // fix stress, e and w sounds: gekwordens/gekwording genade x2@nA:d@ // correct 2nd e in compounds: genadedood, etc. @@ -1656,7 +1735,7 @@ bur) ger g@r gee (+ x2e@ geër (_ x2e@@r // oorgeër/pasaangeër - gees (drift x2%e@s // move default stress: geesdriftig and derivatives + gees (drifti x2%e@s // move default stress: geesdriftig and derivatives @) gegee =x2@x2e@ gegewens x2@x2e@v@ns // fix e sounds in many compounds: agtergrond-/fossielgegewens/-versameling gei (+ x2eI // geil and derivatives/geiser/geit/-e @@ -1674,12 +1753,16 @@ ge (ome x2i //geometries etc. gesels x2@s&ls A) ge (tjie x2i // fix e sound: (graad)negetjie/-s + geves (_ x2@fEs // prevent Eng. translation: hout-/staalgeves, etc. + geweer x2@ve@r // restore default stress: geweerhout/-sport/-staander @C) gewens x2@ve~ns .group h h h h (h + @A) h (_ // drop final h after vowel: (Su)Sarah and similar + _) half (geP4 h'alf // fix e sound in halfgetem(de), etc. half (kro@ h%alf // move default stress: halfkroon/halfkrone half (een h%alf_ // move default stress in this and following time expressions: halfeen/-vergadering half (twee h%alf @@ -1710,18 +1793,58 @@ hard (ste hart // restore default stress: (ge)hardste/-s harle (kyn h%arl@ // fix stress and e sound: harlekyn/-e and compounds harmo (nie h%arm%u // fix stress and o sound: harmonie/-ë + harmonies harm'o@nis // fix stress (dis-/en-/fil-)harmonies/-e har (poen h%ar // move default stress: harpoen/-e and compounds @) hartig h'art@x2 // barmhartig/lighartigheid/lighartig... hart (roer h%art // move default stress: hartroerend/-e/-ste hart (stogte_ h%art // move default stress: hartstogtelik hart (stogte_N hart // restore default stress: hartstogte ha (we hA: // fix stress and a sound: hawearbeider/lewendehaweafdeling + hia (sint h%ij%a // fix stress: hiasint/-e and compounds + _) hi (bis h%i // move default stress: hibiskus/-se and compounds + higië (nA h%ix2%ie@ + himne himn@ // fix i sound: himne/-s and compounds + hin (doe hin // fix i sound: Hindoe and compounds + hinke (pink h@Nk@ // fix e sound and stress: (ge)hinkepink/hinkepinkend/-e + hip (noCA h%ip // hipnose/hipnoties/hipnotiseer + hiper (bo h%ip@r // fix stress: hiperbool/-bolies/-e + _) hipo (@P4 hipu // hipo = prefix: hipodermies/-dermus/-staties, etc. + hister (e hist@r // histerektomie + hister (i hist'e@r // histerie/histeries + hi (sto h%i // fix stress and i sound: histories/histologie + histri (on h%istr%i // 1st i sound and stress: histrionies/-e/histrionisme/-isties + hitler hitl@r // Hitler in compounds like Hitlersnorretjie + hiëna h%ie@:na // fix stress and vowel sounds: hiëna(lag/mannetjie/wyfie...) + hiërar (gie_N h%i@r%ar // move default stress: hiërargie + hiër (argie h%i@r // stress on 1st a: hiërargies/-e + hiëro (glie h%i@r%u // fix stress and vowel sounds: hiëroglief/-gliewe + A) hle (_ =LE // Nguni words and names ending in -hle: Enhlalakahle/Hlalanikahle/malahle/Phahle + _) hobo ho@bu // fix o sound in compounds: hobokonsert/-musiek/-solo/-sonata/-speler + hoender hun@r // drop d: hoender and many compounds + hoeve (r h%uf& // fix stress and e sounds: hoever(re) + hoeveelh (e h%ufe@lh // move default stress: hoeveelheid/-hede + hof (A hOf_ // fix o, pause: hofaansoek/-amptenaar/-etiket/-interdik/-ordonnans/-uitspraak/-ure... + hof (ie ho@f // but: (blom-/water)hofie/-s, etc. + hong (a h%ONx2 // Hongaar/Hongare/Hongaarse + ho (nneur h%O // move default stress: honneurs/-graad, etc. + hoog (dra h%o@x2 // stress: hoogdrawend and derivatives + hoog (moedig h%o@x2 // move default stress: hoogmoedig/-e/-heid + horison (ta h%o@r%is%On // move default stress: horisontaal/horisontale + hor (los h%Or // horlosie and compounds + hor (mo h%Or // move default stress: hormoon/hormone and compounds + horri (bA h%Or%i // move default stress: horribaal/horribale/horribile + hote (l h%ut& // fix stress and o sound: hotel and compounds + huis (houd_ h%Yys // move default stress: huishoudelik/-e/-heid + hu (meur h%y // stress: humeur/-ig + +.group he he (bre h%i // fix stress and 1st e sound: Hebreër/-s heeren (grac he@r@n // fix eng sounds: Heerengracht/-straat heerser he@rs@r // fix e sound in compounds: heersers(drang/geslag/klas/mag/ras/volk) heet (hoofdi h%e@t // move default stress: heethoofdig/-e/-heid heide (C heId@ // heidene/heidense/heidendom/heidekind/Heidelberg hekse (C hEks@ // fix 2nd e sound in compounds starting with hekse: heksebrousel, etc. + _) hek (ta h%Ek // move default stress: hektaar/hektare held (haft h%< // move default stress: heldhaftig/-e/-heid hel (din h%&l // move default stress: heldin/-ne/-netjie _) hele (K he@l@ // hele/helend/heler @@ -1751,7 +1874,6 @@ hermafro (di h%&rm%afr%u // move default stress: hermafrodiet/-e _) her (manK h&r // restore default stress: Herman(n) herme (lyn h%&rm@ // fix stress and 2nd e sound: hermelyn and compounds - he (roïe h%e@ // fix e sound, no pause: heroïes/-e hero (ïen h%e@r%uw // fix stress and vowel sounds: heroïen and compounds he (rrie h& // restore default stress: herrie and compounds @@ -1767,55 +1889,23 @@ &) hede (_ he@d@ he (g h& heid (_S4 heIt - herinner h&r'In@r // herinner/-ing/-e|s + herinner h%&rIn@r // herinner/-ing/-e|s hetero (@@P6 h%Et@-r%u // fix stress and vowel sounds: many compounds: heteroseksueel/-ele/-aliteit, etc. hex (C hEks // prevent English translation: Hex(rivier)vallei - hia (sint h%ij%a // fix stress: hiasint/-e and compounds - _) hi (bis h%i // move default stress: hibiskus/-se and compounds - higië (nA h%ix2%ie@ - himne himn@ // fix i sound: himne/-s and compounds - hin (doe hin // fix i sound: Hindoe and compounds - hinke (pink h@Nk@ // fix e sound and stress: (ge)hinkepink/hinkepinkend/-e - hip (noCA h%ip // hipnose/hipnoties/hipnotiseer - hipoder (mA h%ip%ud&r // fix stress and vowel sounds: hipodermies/-dermus - hister (e hist@r // histerektomie - hister (i hist'e@r // histerie/histeries - hi (sto h%i // fix stress and i sound: histories/histologie - histri (on h%istr%i // 1st i sound and stress: histrionies/-e/histrionisme/-isties - hitler hitl@r // Hitler in compounds like Hitlersnorretjie - hiëna h%ie@:na // fix stress and vowel sounds: hiëna(lag/mannetjie/wyfie...) - hiërar (gie_N h%i@r%ar // move default stress: hiërargie - hiër (argie h%i@r // stress on 1st a: hiërargies/-e - hiëro (glie h%i@r%u // fix stress and vowel sounds: hiëroglief/-gliewe - A) hle (_ =LE // Nguni words and names ending in -hle: Enhlalakahle/Hlalanikahle/malahle/Phahle - _) hobo ho@bu // fix o sound in compounds: hobokonsert/-musiek/-solo/-sonata/-speler - hoeve (r h%uf& // fix stress and e sounds: hoever(re) - hoeveelh (e h%ufe@lh // move default stress: hoeveelheid/-hede - hof (A hOf_ // fix o, pause: hofaansoek/-amptenaar/-etiket/-interdik/-ordonnans/-uitspraak/-ure... - hof (ie ho@f // but: (blom-/water)hofie/-s, etc. - hong (a h%ONx2 // Hongaar/Hongare/Hongaarse - ho (nneur h%O // move default stress: honneurs/-graad, etc. - hoog (dra h%o@x2 // stress: hoogdrawend and derivatives - hoog (moedig h%o@x2 // move default stress: hoogmoedig/-e/-heid - horison (ta h%o@r%is%On // move default stress: horisontaal/horisontale - hor (los h%Or // horlosie and compounds - hor (mo h%Or // move default stress: hormoon/hormone and compounds - horri (bA h%Or%i // move default stress: horribaal/horribale/horribile - hote (l h%ut& // fix stress and o sound: hotel and compounds - huis (houd_ h%Yys // move default stress: huishoudelik/-e/-heid - hu (meur h%y // stress: humeur/-ig + .group i i i i (C I i (CA i + ô) i (K %i // i unstressed: ou-/jongnôi tax) i (@ %i // fix i sound: taxidrywer/-staanplek/-staking/minibustaxistelsel iaal (_K i'A:l // aal normally stressed in words like bilabiaal/koloniaal, etc. iale (_ i'A:l@ // al normally stressed in words like bilabiale/koloniale, etc. iber (i@ %ibe@r // Siberië/Siberiese/Iberiese @) ic (_ _^_EN // Words ending in -ic are English ie i - tr) ie (_ 'i //stress on trie at word end + tr) ie (_N 'i //stress on trie at word end ieë (K i:@ // knieë/vlieë/spieël/-tjie ie (uu i // split ie/uu, eu not diphthong: drieuur and similar ss) ief (_ 'if // move default stress: aggressief/massief/obsessief/progressief, etc. @@ -1824,14 +1914,6 @@ h) i (dro i //hidro in compounds h) i (drA %i // fix stress and i sound: hidreer/hidrasie _) i (ko %i // move default stress: ikoon/ikone - _) in (aCemP2 'In_ //inasem/inademing, etc. - C) in (asem _@n // fix i sound, pause: rookinaseming and similar - self) in (C@ _@n // selfingenome/-nheid/selfinkeer, etc. - _) in (a@P2 In // inakkuraat/inaktief/inaktiwiteit - _) inbe (lC Inb%& // fix e sound in compounds like inbelprogram - _) in (oe In_ // fix i sound, pause: inoefen/-oes and derivatives - invest (eer @nv%Est // fix stress, v and e sounds: investeer/-der - investe (r@ @nv%Este@ // fix e sound: (kapitaal)investering/investerende _) iese (C ,is@ // iesegrimmig and derivatives ieterma (g %it@rm%a // fix stress and a sound: ietermagô ieus i'Y@s // this ending always takes stress @@ -1859,50 +1941,7 @@ illu (strA %il%W // fix i sound: illustreer/illustrering/illustrasie _) immi (grA @m@ // fix stress and i sounds: immigrant/-e and compounds _) i (mmu %i // fix stress and i sound: immuun/immune/immuniteit - _) inder (C @nd@r // inderdaad/inderhaas/indertyd - _) indel (C Ind&l // fix e sound: indelf/indelwe/indelwing - indi (a@ @nd%i // fix stress: Indiaan/Indiane - in (dien @n //indienstreding/indiensopleiding/indiensplasing - indis (kr @nd@s // stress: indiskreet/-e/indiskresie/-s - in (doena @n // move default stress: indoena/-s - indwing Indw@N // fix d sound: indwing/-ing - in (een @n // ineengedoke/ineengekrimp/ineenstorting and many similar - _) in (ent ''In_ // fix stress, i sound, pause: inent/-ing - infan (ti @nf%an // fix stress: infantiel/-e - in (fek @n // move default stress: infeksie/-s and compounds - infor (ma @nf%Or // move default stress: informant/-e/informasie - in (formeP2 'In // fix e sound: informele - in (halig @n // move default stress: inhalig/-e/-heid - in (hegten @n // move default stress: inhegtenisname/-neming/-s - inisi (A %in%iS%i // fix stress and s sound: inisiasie/inisieer/inisieel/-ële/inisiatief - inisie @n'is%i // fix definisie etc. - inisi (eA %in%iS%i // fix inisieer etc. - in (kenn @n // move default stress: inkennig/-e/-heid i (nneemba @ // move default stress: (on)inneembaar/-bare/-baarheid - insek (A InsEk_ // fix e sound, pause: insekeier/-etend/-eter/-oog/-orde - insek (u @ns@k // but: insekuriteit and compounds - insi (dent @ns@ // insident/e/insidentjie - in (skik @n // move default stress: inskiklik and derivatives - in (skrip @n // move default stress: inskripsie/-s - in (spek @n // move default stress: inspeksie/-s and compounds - in (stan @n // move default stress: instandhouding/instansie/-s - insti (tu @nst@ // fix stress and 2nd i sound: instituut/-tute and compounds - inte (gre @nt@ move default stress: integrerend/-e - integ (ri @nt&x2 // fix e sound: integriteit and compounds - inter (nasio @nt@r // fix stress: internasionaal/-nale - inter (nerin @nt@r // move default stress: internering and compounds - inter (niK @nt@r // move default stress: internis/-te and compounds - in (tiem @n // move default stress: intiem/e - intimi (dA @nt@m@ // intimidasie/intimideer - _) intro (C @ntr%u // fix stress and o sound: introduksie and compounds/introspeksie/-tief/-we - intuï @nt%u:i // fix stress and u sound: intuïsie/-tief/-tiewe - ingrypen @nx2reIp@n // move default stress and correct 1st e in ingrypender - innemen @ne@m@n // move default stress and correct 2nd e in innemendste - intrige @ntrix2@ // intrige/-s; fix 2nd i sound - intrig (e@ @ntr%ix2 // stress and vowel sounds: intrigeer/intrigerende/intrigering - innuendo @ny:|'End@U // innuendo('s) - invalide @nv%alid@ // stress and v sound: invalide and compounds - in (werkingCC @n // move default stress: inwerkingstelling and compounds/inwerkingstelling C) ie (r i: //ier long in most cases, exceptions below: g) ie (rig i // short ie: gierig/-e/-heid @@ -1925,13 +1964,6 @@ ieu iu ij (C eI - _) ingee (+ 'Inx2e@ // se rule: _) inge (@P4 @nx2@ - _) inge (@P4 'Inx2@ // prefix inge always has stress on 1st slb - inge (wing 'Inx2e@ // see rule: _) inge (@P4 @nx2@ - @C) inge (_ @N@ - ing (s IN // begrotingsrede/ontvangslokaal/geringste - _) ing (@ 'Inx2 // ingaan/ingang/ingiet/ingly/ingroei/ingreep... - ingang _Inx2aN // ingang/hoofingang/ingangsprotaal &) ige (_ Ix2@ @C) iger (CA @x2@r // twintiger-/dertiger-/veertigerjare, etc. &) iges (_ Ix2@s @@ -1945,23 +1977,15 @@ impala %impA:la // fix stress and vowel sounds: impala and compounds impera (tA@ @mp%Er%a // fix vowel sounds: imperatief/-tiewe/-tories/-e impo (te @mp%u // fix stress and o sound: impotent/impotensie - &) ing (_ @N - @) in (gryp @n // split n/g: staatsingryping and similar @C) igend (_ @x2@nt // bevredigend/beangstigend... @C) igende @x2@nd@ // bevredigende/beangstigende... C) iging @x2@N m) i (nister @ //fix first i sound in minister in some compounds - indjie IiNci - intjie IiNci idjie Iici itjie Iici ighei (d @x2eI // kleinigheidjie iana i'A:na - indivi @nd@v@ // individu/individuele and others - indiwi @nd@v@ // indiwidu/indiwiduele and others - _) in (erC @n // fix i sound: inert/inersie - in (heems @n // move default stress: inheems/-e/-heid/verinheemsing &C) ikend @k@nt // grinnikend/runnikend/sanikend &C) ikende @k@nd@ // grinnikende/runnikende/sanikende ingenieur @nx2@n'y@r @@ -1977,17 +2001,27 @@ _) ira (C %ira // fix stress: Irak/Iran/Iranees/-nese/Iraki ity (_N _^_EN @) igering ix2'e@r@N - instruks @nstr'Wks // instruksie/s (stress) - instrukt @nstr%Wkt // instrukteur/s/instrukteer (stress) iër (A i'e@r // kopiëring/subsidiërende + narC) i (ssus 'I // move default stress: Nar(c/s)issus + @n) iek (_ 'ik // uniek/compounds + @n) iek (e_ 'ik // unieke/compounds + @kn) iek (_ ik // but piekniek + @t) iek (_ 'ik // antiek/etiek/taktiek + krit) iek ik // restore default stress where -kritiek last in compounds: kunskritiek, etc. + @t) iek (e_ 'ik // antieke... + @tr) iek (_ 'ik // eksentriek/metriek + @tr) iek (eK 'ik // eksentrieke/metrieke/eksentrieker/eksentriekes + sp) i (oen %i // spioen/spioenasie and compounds + ironie (_N irun'i // stress to end, but don't break ironies + i (ronie %i // stress on 2nd slb.: ironies/- + fn) is (A @s_ // fix i sound: begrafnisete/-ondernemer/-onkoste nn) is (A @s_ // fix i sound, pause: kennisoordrag/vonnisooreenkoms/-oplegging, etc. AC) is (_ 'Is // aktivis/humanis/kommunis/pianis/solis/violis/kompromis AAm) is (_ @s // restore default stress: dassiemis/Karoomis/koeimis/seemis @Cem) is (_ Is // default stress: dodemis/duiwemis/hondemis/môremis/perdemis, etc. bloem) is 'Is // but: bloemis/-te - narC) i (ssus 'I // move default stress: Nar(c/s)issus pub) is (_ @s // restore defaultstress: pubis, excep. to: AC) is (_ en) is (K @s // stress: beduidenis/bekentenis/gevangenis, etc. kris) i (K @ // fix stress: krisis and compounds/krisisse @@ -1999,18 +2033,6 @@ @C) isties 'Istis // kommunisties/liberalisties/humanisties @) iseer is'e@r // analiseer/kategoriseer @) iseren (d is'e@r@n // analiserend/kategoriserend - @n) iek (_ 'ik // uniek/compounds - @n) iek (e_ 'ik // unieke/compounds - @kn) iek (_ ik // but piekniek - @t) iek (_ 'ik // antiek/etiek/taktiek - krit) iek ik // restore default stress where -kritiek last in compounds: kunskritiek, etc. - @t) iek (e_ 'ik // antieke... - @tr) iek (_ 'ik // eksentriek/metriek - @tr) iek (eK 'ik // eksentrieke/metrieke/eksentrieker/eksentriekes - sp) i (oen %i // spioen/spioenasie and compounds - ironie (_N irun'i // stress to end, but don't break ironies - i (ronie %i // stress on 2nd slb.: ironies/- - @) iseur is'Y@r // adviseur/narkotiseur @) i (sering i C) isie 'isi // ambisie/ammunisie/komposisie/ammunisiekis @@ -2034,10 +2056,82 @@ ié '!i // pronounce dié/nié, etc. with stress C) i (ësta %i // fiësta/siësta +.group in + _) in (aCemP2 'In_ //inasem/inademing, etc. + C) in (asem _@n // fix i sound, pause: rookinaseming and similar + self) in (C@ _@n // selfingenome/-nheid/selfinkeer, etc. + _) in (a@P2 In // inakkuraat/inaktief/inaktiwiteit + _) inbe (lC Inb%& // fix e sound in compounds like inbelprogram + _) in (oe In_ // fix i sound, pause: inoefen/-oes and derivatives + invest (eer @nv%Est // fix stress, v and e sounds: investeer/-der + investe (r@ @nv%Este@ // fix e sound: (kapitaal)investering/investerende + _) inder (C @nd@r // inderdaad/inderhaas/indertyd + _) indel (C Ind&l // fix e sound: indelf/indelwe/indelwing + indi (a@ @nd%i // fix stress: Indiaan/Indiane + in (dien @n //indienstreding/indiensopleiding/indiensplasing + indis (kr @nd@s // stress: indiskreet/-e/indiskresie/-s + in (doena @n // move default stress: indoena/-s + indwing Indw@N // fix d sound: indwing/-ing + in (een @n // ineengedoke/ineengekrimp/ineenstorting and many similar + _) in (ent ''In_ // fix stress, i sound, pause: inent/-ing + infan (ti @nf%an // fix stress: infantiel/-e + in (fek @n // move default stress: infeksie/-s and compounds + infor (ma @nf%Or // move default stress: informant/-e/informasie + in (formeP2 'In // fix e sound: informele + in (halig @n // move default stress: inhalig/-e/-heid + in (hegten @n // move default stress: inhegtenisname/-neming/-s + inisi (A %in%iS%i // fix stress and s sound: inisiasie/inisieer/inisieel/-ële/inisiatief + inisie @n'is%i // fix definisie etc. + inisi (eA %in%iS%i // fix inisieer etc. + in (kenn @n // move default stress: inkennig/-e/-heid + insek (A InsEk_ // fix e sound, pause: insekeier/-etend/-eter/-oog/-orde + insek (u @ns@k // but: insekuriteit and compounds + insi (dent @ns@ // insident/e/insidentjie + in (skik @n // move default stress: inskiklik and derivatives + in (skrip @n // move default stress: inskripsie/-s + in (spek @n // move default stress: inspeksie/-s and compounds + in (stan @n // move default stress: instandhouding/instansie/-s + insti (tu @nst@ // fix stress and 2nd i sound: instituut/-tute and compounds + inte (gre @nt@ move default stress: integrerend/-e + integ (ri @nt&x2 // fix e sound: integriteit and compounds + inter (nasio @nt@r // fix stress: internasionaal/-nale + inter (nerin @nt@r // move default stress: internering and compounds + inter (niK @nt@r // move default stress: internis/-te and compounds + in (tiem @n // move default stress: intiem/e + intimi (dA @nt@m@ // intimidasie/intimideer + _) intro (C @ntr%u // fix stress and o sound: introduksie and compounds/introspeksie/-tief/-we + intuï @nt%u:i // fix stress and u sound: intuïsie/-tief/-tiewe + ingrypen @nx2reIp@n // move default stress and correct 1st e in ingrypender + innemen @ne@m@n // move default stress and correct 2nd e in innemendste + intrige @ntrix2@ // intrige/-s; fix 2nd i sound + intrig (e@ @ntr%ix2 // stress and vowel sounds: intrigeer/intrigerende/intrigering + innuendo @ny:|'End@U // innuendo('s) + invalide @nv%alid@ // stress and v sound: invalide and compounds + in (werkingCC @n // move default stress: inwerkingstelling and compounds/inwerkingstelling + _) ingee (+ 'Inx2e@ // se rule: _) inge (@P4 @nx2@ + _) inge (@P4 'Inx2@ // prefix inge always has stress on 1st slb + inge (wing 'Inx2e@ // see rule: _) inge (@P4 @nx2@ + @C) inge (_ @N@ + ing (s IN // begrotingsrede/ontvangslokaal/geringste + _) ing (@ 'Inx2 // ingaan/ingang/ingiet/ingly/ingroei/ingreep... + ingang _Inx2aN // ingang/hoofingang/ingangsprotaal + &) ing (_ @N + @) in (gryp @n // split n/g: staatsingryping and similar + indjie IiNci + intjie IiNci + indivi @nd@v@ // individu/individuele and others + indiwi @nd@v@ // indiwidu/indiwiduele and others + _) in (erC @n // fix i sound: inert/inersie + in (heems @n // move default stress: inheems/-e/-heid/verinheemsing + instruks @nstr'Wks // instruksie/s (stress) + instrukt @nstr%Wkt // instrukteur/s/instrukteer (stress) + + .group j j j j (j ja (broer jA: // fix a sound: jabroer/-s + _) jack _^_EN // English: Jack/-ie/-son _) jag (A j''ax2_ // fix stress and a sound: jagavontuur/-ekspedisie/-entoesias/-eskader/-instink... jag (end jA:x2 // but long a in jagend/-e and compounds jag (er jA:x2 // long a in jager and compounds @@ -2046,6 +2140,7 @@ _) ja (CobA j%a // fix stress and a sound: Jacoba/Jacobus/Jakobus jacaranda j%ak%ar'anda //jacaranda and compounds jakaranda j%ak%ar'anda //jakaranda and compounds + jakob (regop j%A:k%Op // move default stress: jakobregop/-pies and similar jakopewer j%ak%Ope@v@r_ // fix stress and vowel sounds: jakopewer/-oë jaloe (sie j%al%u // stress: jaloesie/beroepsjaloesie _) jan (C@ j%an // fix stress and n sound: janfiskaal/janfrederik/jangroentjie/janrap/jansalie @@ -2090,6 +2185,7 @@ kelende (_ k@l@nd@ kkelend (_ k@l@nt kkelende (_ k@l@nd@ + kelkie (wyn k%&lk%i // move default stress: kelkiewyn/-e kelner k&ln@r // fix 2nd e sound in compounds like kelnerbaadjie, etc. kelner (in k%&ln@r // move default stress: kelnerin/-ne/-netjie ke (nnAK kE // fix e sound: boek-/markkenner/-kennis @@ -2103,6 +2199,7 @@ flik) kerkers k@rk&:rs // fix e sounds: flikkerkers/-e weder) ker (A k'e@r // wederkerend/wederkerig bottel) kers k&:rs // fix e sound: bottelkers/-e + @) ker (sie_ k&r // fix e sound: koekkersies and similar compounds kete (l ke@t@ // fix e sounds: stookketel/ketelmaker and many similar compounds _) keuse k''Y@s@ // fix connecting e sound in compounds starting with keuse kiaat k%i;A:t // move default stress: kiaat and compounds @@ -2129,6 +2226,7 @@ klawerses kl%A:v@rsEs // fix stress and last e sound: klawerses klawer (t kl%A:v@r // move default stress: klawertwee/-tien klawer (v kl%A:v@r // move default stress: klawervier/-vyf/-vrou + klawer (veld klA:v@r // restore default stress: klawerveld/-e kleinse (rig kl%eInse@ // fix stress and e sound: kleinserig/-e/-heid klein (sieli kl%eIn // move default stress: kleinsielig/-e/-heid _) kamele kam'e@l@ // kamele teenoor skamele @@ -2147,6 +2245,7 @@ klip (A klIp_ // fix i sound: klipalbaster/-altaar/--uil/leiklipolie klou (sule kl%@U // move default stress: klousule/-s kklere =kl'e@r@ + kners (_ kn&rs // fix e sound: blikners/tande(ge)kners, etc. knip (A knIp? // knipogie/geknipoog/ _) krag (A kr''ax2_ // kragaanleg/-eenheid/-installasie/-onderbreking/-opwekker kra (gie krA: // but: kragie/-s @@ -2156,6 +2255,7 @@ kreme (tart kr@m@ // fix stress and e sounds: kremetart and compounds _) kre (o kr%i // fix stress and e sound: Kreool/Kreole/Kreoolse _) kre (pe@ kr@ // fix stress and 1ste sound: krepeer/-krepering + kriewe (l kriv@ // fix e sound: kriewelend/kriewelkous/-krapper/-siekte... krimi (nA kr@m@' // krimineel/kriminele/diskrimineer kri (oel kr%i // move default stress: krioel and derivatives kri (sant kr@ // move default stress: krisant/-e @@ -2260,13 +2360,16 @@ kartets k%artEts // fix stress and e sound: kartets/-e and compounds kar (ton k%ar // move default stress: karton and compounds _) kar (ve k%ar // move default stress: karveel/karvele + kar (ven kar // restore default stress: karvenster and compounds kar (ver kar // restore default stress: karverkoper/-verhuurder, etc. kar (wats k%ar // move default stress: karwats and compounds kar (wei k%ar // move default stress: karwei and derivatives + kar (wy k%ar // move default stress: karwysaad and compounds ka (sarm k%a // move default stress: kasarm and compounds kaserne k%as&rn@ // move default stress, fix 1st e sound: kaserne and compounds kaske (nade k%ask@ // fix stress and e sound: kaskenade/-s and compounds _) ka (sta k%a // move default stress: kastaiing and compounds + kasta (njet k%ast%a // move default stress: kastanjet/-te and compounds _) ka (ste@ k%a // move default stress: kasteel/kastele and compounds ka (sty k%a // move default stress: kasty/-der/-ding kasse (t k%asE // fix stress and e sound: kasset/-te and compounds @@ -2298,6 +2401,7 @@ ko (kon k%u // fix 1st o sound and move default stress: kokon and compounds kol (jan k%Ol // move default stress: koljander and compounds ko (lom k%u // fix stress and 1st o sound: kolom/-me and compounds + kol (wyn k%Ol // move default stress: kolwyntjie and compounds komati (K k%umA:t%i // fix stress and vowel sounds: Komati(poort and other compounds) kombers k%Omb&:rs // fix stress and e sound: kombers/-e/dons-/lappieskombers, etc. ko (mete k%u // fix stress and 1st o sound: komete and compounds @@ -2307,6 +2411,7 @@ kommissie k%umis%i //kommissie alone and in compounds _) ko (pie@ k%u // kopiereg/kopieë koe (rA k%u // koerier/koerasie/koerant and compounds + koe (rend ku // restore default stress: koerend/-e ko (ra k%u // fix stress and o sound: koraal/korale and compounds korrek k%urEk //korrek and derivatives korrektiewe k%Or%Ektiv@ // fix stress and vowel sounds: korrektiewe(toesig, etc.) @@ -2327,6 +2432,7 @@ kolo (sK k%ulO // move default stress and fix 1st e sound: kolos/-se kombuis k%OmbYys // stress: kombuis/kombuistafel/sopkombuis ko (medi k%u // move default stress, correct o sound + komedi (ant k%um%id%i // fix stress and vowel sounds: komediant/-e _) ko (miek k%u // fix stress and o sound: komieklik/-e/-heid komi (tee k%Om@ komkommer k%OmkOm@r // move default stress: komkommer/-slaai, etc. @@ -2371,7 +2477,7 @@ _) kontras k%Ontras // move default stress: kontras/-te/kontrasteer kontrasep k%Ontr%asEp // fix stress and e sound: kontrasepsie and derivatives kontrover (s k%Ontr%uv&r // o and v sounds: kontroversie/kontroversieel - _) kop (o kOp? // fix o sound: koponder/koponderstebo/kopomdraai/kopoperasie + kop (o kOp? // fix o sound: koponderstebo/kopomdraai/kopoperasie/gryskoponderwyser/poenskopolifant kopu (lA k%Op%y // fix o sound: kopulasie/kopuleer and derivatives _) kor (dA k%Or // kordaat/kordon ko (rint k%u // fix stress and o sound: korint/-e and compounds @@ -2410,6 +2516,7 @@ lang (werp l%aN // move default stress: langwerpig/-e/-heid lank (moe l%aNk // move default stress: lankmoedig/-e/-heid _) lan (sA l%an // move default stress: lanset/-te/lanseer/-ering/lansier + _) lapa (K lA:pa // fix words like lapakombuis lapar (otomi l%ap%ar // fix stress and a sounds: laparotomie _) lapel l%ap'&l //lapelwapen etc. lapel (_ l%ap'&l //baadjielapel etc. @@ -2432,7 +2539,9 @@ _) lende lEnd@ // lendelam/lendene/compounds of lende lening le@n@N // banklening/sorgverlening/hulpverlening... lepe (ll le@p@ // fix 2nd e sound in compounds: lepellê, etc. - @C) les (K lEs // aanvangsles/geskiedenislesse/musiekles/koffiefles + @C) les (K lEs // aanvangsles/musiekles/koffiefles + @C) lesse (_ lEs@ // fix e sound of words ending in lesse: sanglesse/geskiedenislesse, etc. + ie) les (_ lEs // fix e sound: biologie-/geografie-/anatomieles @) less (_ _^_EN // English words ending in -less in Afrikaans text: harmless/motherless, etc. @l) le (sC@ l@ // fix e sound: getallestelsel/gevallestudie/novelleskrywer @@ -2461,6 +2570,7 @@ likke (wa l@k@ // move default stress: likkewaan/likkewane &) likste (_S6 l@kst@ li (kwid l%i // fix 1st i sound: (ge)likwideer/likwidasie/likwiditeit + lini (aal l@n%i // fix stress and 1st i sound: liniaal(tjie) and compounds litera (t l@t@r%a // literatuur/literature/literatore, but literbottel liter (A l@t@r // fix i sound: literêr/-e/alliterasie _) li (mi l@ // fix stress and 1st i sound: limiet/-e/limitasie/limiteer @@ -2477,7 +2587,7 @@ loboto (mie l%ub%Ot%u // fix stress and o sounds: lobotomie lo (ja l%u // fix stress and o sound: lojale/lojaliteit lo (kalA l%u // fix stress and o sound: lokale/ontvangslokale, etc. - lom (bardie l%Om // move default stress: Lombardies/-e + lom (bardA l%Om // move default stress: Lombardies/-e/Lombarde _) lore (C@ lo@r@ // fix e sound: verloregaan/verloregoederekantoor/Verlorerivier _) losge (@P5 l'Osx2@ _) losies l%us'is //losies at start always means "to stay" @@ -2499,6 +2609,7 @@ lusern l%us&:r@n // fix stress and vowel sounds: lusern and many compounds lus (o lWs_ // fix u sound: eetlusopwekker/lusoord/lusopening, etc. @) lusti (g l'Wst@ // move default stress: strydlustig/lewenslustig and many similar + luther lyt@r // fix vowel sounds, drop h: Luther/-s/-se lyk (moed l%eIk // move default stress: gelykmoedig/-e/-heid lyk (nam l%eIk // move default stress: gelyknamig/-e @@ -2506,6 +2617,21 @@ .group m m m m (m +// mc _^_EN // The mac names does not work + CA) mme (C m@ + CA) mme (tjie mi // lemmetjie/stemmetjie and similar + @) mpel (A mp@l // bewimpeling/dompelaar/strompeling + murmel mWrm@l // fix e sound in compounds like murmelgeluid + museum m%ysY@m // move default stress + musiek m%Wsik + musi (C mysi' // musikant/musikus/musici + muskadel m%Wsk%ad&l // fix stress and a and e sounds: muskadel/-druif/-wyn, etc. + muskel (jaat m%Wsk@l // move default stress: muskeljaat/-kat and compounds + muske (tier m%Wsk@ // move default stress: musketier/-s + mymer meIm@r // fix e sound: mymerend/mymering/mymeraar + môre (@ mO:r@ // HAT: all compounds starting with môre- take stress on 1st slb. + +.group ma @) marie (_ m%ar'i //names ending in marie fix a and stress. mari (tiem m%ar@ // fix stress and vowel sounds: maritiem/-e macedo (nA m%as@do@ // fix stress and vowel sounds: Macedonië/Macedóniër/-s @@ -2530,6 +2656,7 @@ ma (kriel m%a // move default stress: makriel/-e maksi (ma@ m%aks%i // move default stress: maksimaal/-male &) mal (_S3 mal + mala (giet m%al%a // fix stress and a sounds: malagiet and compounds malaria mal'A:ria mal (gas m%al // move default stress: Malgas/-se/-sies malles (_ mal@s // fix e sound: (mags)malles and similar @@ -2544,6 +2671,7 @@ mani (ak m%A:n%i // fix stress and 1st a sound: maniak/-ke and compounds manier m@ni:r //manier and compounds manifes manifEs // fix vowel sounds: manifes and compounds/manifestasie/manifesteer + mani (ku m%an%i // fix stress and a sound: manikuur and compounds manipu m%an%ip%y // fix stress and a sound: manipuleer/manipulering/manipulasie manji (fie m%anj@ // fix stress and i sound: manjifiek/-e man (moe m%an // move default stress: manmoedig/-e/-heid @@ -2561,14 +2689,15 @@ marmer marm@r_ // fix e sound: marmerbeeld/-blad and many others marmo (set m%arm%u // fix stress and o sound: marmoset/-te mar (sje m%ar // move default stress: marsjeer and derivatives - mas (biek m%as // move default stress: masbieker/-s + ma s (biek m%as // move default stress: masbieker/-s masjien m@Sin // masjien and many compounds + masji (na@ m%aS%i // move default stress: masjinaal/-ale maskara m%askA:r%a // move default stress: maskara and compounds masker mask@r // fix e sound: maskerafdruk/-agtig/ontmaskering masker (ade m%ask@r // move default stress: maskerade/-s maso (chis m%as%u // fix vowel sounds: masochis/-te/-ties/-e/-isme mastekto (m m%astEkt%u // fix stress and vowel sounds: mastektomie and compounds - matemati (CA m%at@m%at%i // fix stress and vowel sounds: matematikus/-ci + mate (mati m%at@ // fix vowel sounds: matematies/-e/matematika materi (A@ m%at%e@r%i // materiaal/materiale/materiële/materieel materie (+ m%ate@r%i // stress and vowel sounds: materie and many compounds ma (tesis m%a // fix stress and 1st a sound: matesis and compounds @@ -2577,21 +2706,99 @@ ma (trikK mA: // lengthen a sound: matriks/-e @) matig m'A:t@x2 // doelmatig/gelykmatig/regmatig; matig takes stress in compounds mayonnaise m%eIj%uneI:z // mayonnaise and compounds -// mc _^_EN // The mac names does not work - CA) mme (C m@ - CA) mme (tjie mi // lemmetjie/stemmetjie and similar + + +.group me + medalje m@dalj@ // medalje/bronsmedalje/medaljewenner + medal (jon m@d%al // fix stress and e sound: medaljon/-s and compounds + _) mede (@P4 m'e@d@ + mede (doë m%e@d@ // move default stress: mededoë/-nd + _) mede (ly m%e@d@// move stress + mede (plig m%e@d@ // move stress: medepligtige + media mi:di:ja, // compounds of media + medisi (na@ m%Ed@s%i // fix stress and vowel sounds: medisinaal/-nale + medi (tA m%Ed%i // fix e sound: mediteer/meditering/meditasie + medite (rre m%Ed%it@ // fix stress and vowel sounds: mediterreens/-e + me (dium mi: // fix e sound + _) me (duC m@ // fix stress and e sound: medulla/medusa + mee (doë m%e@ // move default stress + meerder (jar m%e@rd@r // move default stress: meerderjarig/-e/-es/-verklaring + meer (voudig m%e@r // move default stress: meervoudig/-e/-lik + meestere m%e@st@rE // fix stress and last e sound: (burge-...)meesteres/-se and similar compounds + mee (war m%e@ // move default stress: meewarig/-e/-heid + medisyne m@d@seIn@ //medisyne and compounds + meganies m@x2'A:nis + _) meege (@P5 m'e@x2@ + me (juf m@ // move default stress and shorten e sound + me (laats m@ // fix stress and e sound: melaats/-e/-heid + melancholie (_N m%El%aNk%o@li // fix stress and 1st e sound: melancholie + melanch m%El%aNk // stress and 1st e sound: melancholies/melancholiek/-e/melancholikus/-ci + melankolie (_N m%El%aNk%o@li // fix stress and 1st e sound: melankolie + melank m%El%aNk // stress and 1st e sound: melankolies/melankoliek/-e/melankolikus/-ci + mem (bra m%Em // move default stress: membraan/membrane + memo (rA m%Em%u // fix stress and vowel sounds: memorandum/memoranda and compounds/memoriseer/-sering + memo (riA m%Emo@ // fix stress and o sound: memorie(boek)/in memoriam + meneer m@n'e@r // meneer/meneertjie + menere m@n'e@r@ // menere/beroepsmenere + meng (sel mEN // fix e sound: sitronellamengsel and similar compounds + mening m'e@n@N + mening (itis mEn@Nx2 // see rule: mening m'e@n@N + menstru m%Enstr%y // 1st e not nasalised, fix stress: menstruasie/menstrueer + mentee (C mEnt'e@ // argumenteer/dokumenteer/fragmenteer stress related + mentele (K mEnt'e@l@ // stress always on penultimate slb of words ending in ntele/-r + men (tasie m%En // fix stress: argumentasie/dokumentasie and similar + mentering mEnt'e@r@N + mekaar m@k'A:r + mekaarge m@k'A:rx2@ + _) melodies m@l'o@dis //melodies and compounds + _) melodi (eu m%El%ud%i //melodieus + _) melodie mElud'i + _) melo (dr m'Elu //melodrama etc. + memora (bili m%Em%Or%a // fix vowel sounds and stress: (sport)memorabilia and similar + _) metel me@t@l // vermetel/-e/-es/-heid... + ment m'Ent + mentali (teit m%Ent%al%i // fix stress: mentaliteit/sentimentaliteit and compounds/slagoffermentaliteit + mentjie m'EiNci // monumentjie/dokumentjies + menue (t m%En%y:;E // fix stress and vowel sounds: menuet/-te + @C) mere (_ me@:r@ // fix penultimate e sound: sout(water)-/strandmere + me (riete m@ // move default stress: meriete and compounds + merino m@rin%u // fix stress and vowel sounds: merino/-skaap/-ram, etc. + te) merk m&rk // fix e sound: hoogte-/geboortemerk/-e/-ie + me (rrie mE // fix e sound: merrie/-s/perdemerrie and similar compounds + AAs) mes (_ mEs // fix last e sound in compounds like kombuismes + Cs) mes (_ mEs // fix last e sound in compounds like slagtersmes + hef) mes (_ mEs // fix e sound: hout-/rooihefmes and similar + sny) mes (_ mEs // fix final e sound in compounds like brood-/voorsnymes + tafel) mes (_ mEs // fix final e sound: tafelmes + _) mes (aan mEs_ // fix e sound, pause: mesaanval/-ler + metaa (C m@tA: // fix stress and e sound: metaal/metaan and compounds + metale m@t'A:l@ + _) meta (C m%Et%a // metabolies/-e/metafoor/metafories + meteen mEt_'e@n // meteen/meteens/almeteens + mete (o m%it%i // fix stress and e sounds: meteoor and compounds/meteore/meteories/-e + meteo (riet m%it%i%u // fix stress and vowel sounds: meteoriet/-e and compounds + metode m@t'o@d@ // metode/s + me (tod m@ // metodies/metodiek + + metodis mEtud'Is // metodis/ties/e/metodisme + me (trum me@ // fix e sound: metrum and compounds + mevrou m@fr'@U + +.group mi miaau m%iaU: // miaau/-end/-e middagete m'Idax2_e@t@ // middagete/s midde (l mId@ // middellyf/middelpunt/middelste/bemiddelend middel (jari m@d@l // move default stress: middeljarig and derivatives middelli (k mId@l@ // drop one l: (on)middellik/-e + milieu m@ljy // fix stress and vowel sounds: milieu and compounds milit m@l@t // militêr/militaris mil (jA m@l // move default stress: miljoen/-e/miljard/-e mille (nniA m@lE // millennium/millennia mi (miek m@ // fix stress and i sound: mimiek and compounds mi (mosa m@ // fix stress and i sound: mimosa/-s minag m'Inax2 // minag/geminag/minagting/minagtend + minare (t m@n%arE // fix stress and vowel sounds: minaret/-te minder (jar m@n@r // move default stress: minderjarig and derivatives miner (A m@n@r // mineraal and many compounds mi (neur m%i // move default stress: mineur and compounds @@ -2608,6 +2815,7 @@ mis (gis m@s // stress on 2nd slb mis (gun m@s // stress on 2nd slb mis (ha m@s // mishandel/mishaag + _) mis (inP3 m@s // fix 1st i sound, pause: misinterpretasie/misinterpreteer miske (n m@skE // misken/ning/onmiskenbaar mis (l m@s // misluk/mislei mis (lamp mIs // restore default stress: mislamp/-e @@ -2625,6 +2833,8 @@ mis (tiek m@s mis (troos m@s // mistroostig mis (vorm m@s // stress on 2nd slb + +.group mo mo (biel mo@' // move default stress: (im)mobiel/-e _) mode m''o@d@ // fix e sound: modeontwerper/-maker, etc. mode (l m%o@d& // fix stress and e sound: model/-le and compounds @@ -2648,6 +2858,7 @@ monit (e m%On%it // fix vowel sounds and stress: moniteer/-tering and compounds monitor (K mOnitOr // fix o sound: monitor/-skerm, etc. monnike mOn@k@ // fix i and e sounds: monnikedom/-klooster/-koor/-werk and many similar + mono (ga m%o@n%o@ // move default stress: monogaam/-game monopo (li m%o@n%o@p%u // fix stress and o sound: monopolie/-ë/-monopolisties/-e mon (teur m%On // move default stress: monteur/-s and compounds monu (ment m%On%y // monument/e/vrouemonument/monumenteel @@ -2660,89 +2871,10 @@ mosam (biek m%o@s%am // move default stress: Mosambiek/-er/-se mosa (ïek m%o@s%a // move default stress: mosaïek and compounds mo (skee m%O // move default stress: moskee/-s and compounds + motie (C m%o@ti // handle stress: winsmotief/-tiewe and similar compounds motor mo@t@r // motorfiets/motorkar/vragmotor motor (ie m%uto@r // fix stress and o sounds: motories/-e - @) mpel (A mp@l // bewimpeling/dompelaar/strompeling - murmel mWrm@l // fix e sound in compounds like murmelgeluid - museum m%ysY@m // move default stress - musiek m%Wsik - musi (C mysi' // musikant/musikus/musici - muskadel m%Wsk%ad&l // fix stress and a and e sounds: muskadel/-druif/-wyn, etc. - muskel (jaat m%Wsk@l // move default stress: muskeljaat/-kat and compounds - muske (tier m%Wsk@ // move default stress: musketier/-s - mymer meIm@r // fix e sound: mymerend/mymering/mymeraar - môre (@ mO:r@ // HAT: all compounds starting with môre- take stress on 1st slb. - -.group me - medalje m@dalj@ // medalje/bronsmedalje/medaljewenner - medal (jon m@d%al // fix stress and e sound: medaljon/-s and compounds - _) mede (@P4 m'e@d@ - mede (doë m%e@d@ // move default stress: mededoë/-nd - _) mede (ly m%e@d@// move stress - mede (plig m%e@d@ // move stress: medepligtige - media mi:di:ja, // compounds of media - medisi (na@ m%Ed@s%i // fix stress and vowel sounds: medisinaal/-nale - medi (tA m%Ed%i // fix e sound: mediteer/meditering/meditasie - medite (rre m%Ed%it@ // fix stress and vowel sounds: mediterreens/-e - me (dium mi: // fix e sound - _) me (duC m@ // fix stress and e sound: medulla/medusa - mee (doë m%e@ // move default stress - meerder (jar m%e@rd@r // move default stress: meerderjarig/-e/-es/-verklaring - meer (voudig m%e@r // move default stress: meervoudig/-e/-lik - meestere m%e@st@rE // fix stress and last e sound: (burge-...)meesteres/-se and similar compounds - mee (war m%e@ // move default stress: meewarig/-e/-heid - medisyne m@d@seIn@ //medisyne and compounds - meganies m@x2'A:nis - _) meege (@P5 m'e@x2@ - me (juf m@ // move default stress and shorten e sound - me (laats m@ // fix stress and e sound: melaats/-e/-heid - melancholie (_N m%El%aNk%o@li // fix stress and 1st e sound: melancholie - melanch m%El%aNk // stress and 1st e sound: melancholies/melancholiek/-e/melancholikus/-ci - melankolie (_N m%El%aNk%o@li // fix stress and 1st e sound: melankolie - melank m%El%aNk // stress and 1st e sound: melankolies/melankoliek/-e/melankolikus/-ci - mem (bra m%Em // move default stress: membraan/membrane - memo (rA m%Em%u // fix stress and vowel sounds: memorandum/memoranda and compounds/memoriseer/-sering - meneer m@n'e@r // meneer/meneertjie - menere m@n'e@r@ // menere/beroepsmenere - meng (sel mEN // fix e sound: sitronellamengsel and similar compounds - mening m'e@n@N - mening (itis mEn@Nx2 // see rule: mening m'e@n@N - - mentee (C mEnt'e@ // argumenteer/dokumenteer/fragmenteer stress related - mentele (K mEnt'e@l@ // stress always on penultimate slb of words ending in ntele/-r - men (tasie m%En // fix stress: argumentasie/dokumentasie and similar - mentering mEnt'e@r@N - mekaar m@k'A:r - mekaarge m@k'A:rx2@ - _) melodies m@l'o@dis //melodies and compounds - _) melodi (eu m%El%ud%i //melodieus - _) melodie mElud'i - _) melo (dr m'Elu //melodrama etc. - memora (bili m%Em%Or%a // fix vowel sounds and stress: (sport)memorabilia and similar - _) metel me@t@l // vermetel/-e/-es/-heid... - ment m'Ent - mental (iteit m,Ental // fix stress: mentaliteit/sentimentaliteit and compounds - mentjie m'EiNci // monumentjie/dokumentjies - @C) mere (_ me@:r@ // fix penultimate e sound: sout(water)-/strandmere - me (riete m@ // move default stress: meriete and compounds - merino m@rin%u // fix stress and vowel sounds: merino/-skaap/-ram, etc. - me (rrie mE // fix e sound: merrie/-s/perdemerrie and similar compounds - AAs) mes (_ mEs // fix last e sound in compounds like kombuismes - Cs) mes (_ mEs // fix last e sound in compounds like slagtersmes - tafel) mes (_ mEs // fix final e sound: tafelmes - _) mes (aan mEs_ // fix e sound, pause: mesaanval/-ler - metaa (C m@tA: // fix stress and e sound: metaal/metaan and compounds - metale m@t'A:l@ - _) meta (C m%Et%a // metabolies/-e/metafoor/metafories - meteen mEt_'e@n // meteen/meteens/almeteens - mete (o m%it%i // fix stress and e sounds: meteoor and compounds/meteore/meteories/-e - meteo (riet m%it%i%u // fix stress and vowel sounds: meteoriet/-e and compounds - metode m@t'o@d@ // metode/s - me (tod m@ // metodies/metodiek - - metodis mEtud'Is // metodis/ties/e/metodisme - me (trum me@ // fix e sound: metrum and compounds - mevrou m@fr'@U + mozzarella m%Ots%ar&l%a // fix stress and zz sound: Mozzarella(kaas) .group n @@ -2767,6 +2899,7 @@ spi) n (ge n // split n/g: spingehalte/-geluid, etc. ng (eeR Nx2 // diftongeer/gedistingeerde/rangeer and compounds ngees nx2e@s // split n/g: leuen-/span-/sportman-/wengees + e) n (goeC n // split ng: lakengoed/-goeters and similar n (_g N ng (ent Nx2 // kontingent/tangent and derivatives CA) nger N@r // compounds of vinger/slinger; hangertjie/hongersnood/langeraad/swangerskap/tengerste @@ -2777,6 +2910,7 @@ na (burig n%A: // move default stress: naburig/-e/-heid na (byge n%A: // move default stress: nabygeleë and derivatives nabyh (e n%A:beIh // move default stress: nabyheid/-hede + nag (adder nax2_ // fix a sound, pause: nagadder/-s/nagaddergif, etc. na (ï n%a_ // naïef/naïewe/naïwiteit @) na (lis n%a // shorten a sound: joernalis/-te/-tiek nami (bi n%amI // Namibië/Namibiese @@ -2877,6 +3011,7 @@ oe) n (g n //soengroet, pensioengewend etc. nuanse (K n%yans@ // move default stress: nuanse/-s and compounds nuan (seer n%y%an // fix stress: (ge)nuanseer/-d + nuanse (ring n%y%anse@ // fix stress: nuansering and compounds nuus (kierig n%ys // move default stress: nuuskierig/-heid nuwer (wet n%yv@r // move default stress: nuwerwets/-e @Cer) ny (_ n'eI // move default stress: lekkerny/raserny/slawerny @@ -2899,7 +3034,17 @@ oase %u_A:s@ // oase/-s and compounds o (terap u // psigo-/fisioterapeut _) ob (s %Op // obskuur/obskure/obskuriteit/obsessie/obseen + obser (veer %Ops%&r // fix stress, b sound: (ge)observeer(d/-e) C) o (dium o@ // fix stress and o sound: jodium/podium/rodium and their compounds + oe u + oe (r u: //long oe sound before r in most cases, but see flg. exceptions: + _) oe (r u // short oe: oerwoud/-tyd, etc. + h) oe (r u // short oe: hoer/-e/-tjie + k) oe (r u // short oe: (ge)koer + t) oe (rA u // short oe: toe(rank/-reik/-rig/-rol...) + w) oe (r u // short oe: (ge)woer + oe (ë u: // long oe: kroeë/moeë/ploeë and similar + oei uI oefen uf@n// oefenbroekie/oefeningboek/liggaamsoefeninge t) oeke (n uk%E // fix e sound: toeken/-ning/kuns-/watertoekenning _) oewer uv@r // fix e sound: oewerbewoner/-boer/-eienaar/-reg, etc. @@ -2945,15 +3090,6 @@ b) om (o Om_ //fix first o in bomontploffing and others C) o (Ciee %o@ // assosieer/harmonieer/folieer fil) o (@ u% - oe u - oe (r u: //long oe sound before r in most cases, but see flg. exceptions: - _) oe (r u // short oe: oerwoud/-tyd, etc. - h) oe (r u // short oe: hoer/-e/-tjie - k) oe (r u // short oe: (ge)koer - t) oe (rA u // short oe: toe(rank/-reik/-rig/-rol...) - w) oe (r u // short oe: (ge)woer - oe (ë u: // long oe: kroeë/moeë/ploeë and similar - oei uI oi OI oy OI ou @U @@ -2966,6 +3102,7 @@ odjie OIci otjie OIci offi (sier %Of@ // move default stress: offisier and compounds + offisi %Of%iS%i; ofiel uf'il // franko-/hemo-/nekro-/pedo-/russofiel, etc. ofilie ufil'i // hemo-/nekro-/pedofilie, etc. ofobie ufo@b'i // antropo/-xenofobie and many other -fobie words @@ -3002,10 +3139,6 @@ osowe us'o@v@ // filosowe/teosowe o (paal %o@ // op not prefix: opaal and compounds o (pale %o@ // op not prefix: opale - opaat up'A:t // homeopaat/psigopaat and similar - opatie upat'i // homeopatie/neuropatie and similar - opaties up'A:tis // psigopaties/osteopaties and similar - opaties up'A:tis // allopaties/homopaties and similar otroop utr'o@p // allotroop/heliotroop/hidrotroop/isotroop/monotroop/psigotroopreotroop otropie utrup'i // allotropie/hidrotropie/monotropie/organotropie/pleiotropie/termotropie otropies utr'o@pis // allotropies/heliotropies/ortotropies @@ -3019,6 +3152,7 @@ omkeer Omke@r // restore default stress: omkeer/handomkeer and similar _) omker (A Omke@r // omkering/omkerende _) om (klem %Om // move default stress: omklem/-ming + _) om (kringP2 Om // move default stress: omkring/-de/-ing _) om (laag %Om // move default stress: omlaag and compounds _) omli (gg %OmlI // move default stress: omliggend/-e om (ly %Om // move default stress: omlyn/-ing @@ -3029,6 +3163,7 @@ om (sig %Om // move default stress: omsigtig/-heid omsingel %OmsIN@l // fix stress: omsingel/fix e sound: omsingelde _) om (sirkel %Om // move default stress: omsirkel and derivatives + _) omskans %Omskans // fix stress: omskans/-ing/-s _) om (skep %Om // move default stress: omskep and derivatives _) om (skr %Om // move default stress: omskryf/omskrewe _) om (sluier %Om // move default stress: omsluier and derivatives @@ -3041,44 +3176,6 @@ _) om (welC %Om // move default stress: omwelf/omwelwend/omwelwing om (wenteli %Om // move default stress: omwenteling and derivatives - K) opeen _%Op_e@n - _) ope (K o@p@ //opehart opestelling etc./ope - ope (l o@p@ // dopeling/hopelik/opelug/opelyf - opgee (+ 'Opx2e@ // see rule: _) opge (@P4 Opx2@ - _) opge (@P4 'Opx2@ // stress on 1st slb - &C) op (ig 'o@p // wanhopig/voorlopige - opper Op@r // oppergesag/wese/vlak/man - opper (vlakki %Op@r // move default stress: oppervlakkig/-e/-heid/-ste - opsetlik %OpsEtl@k // move default stress: opsetlik/-e/-heid - op (sione@ %Op // fix stress vowel and s sounds: opsioneel/-nele - optel Opt&l - _) op (@P2 'Op // opeet/opeis/optredes/opoffering - open (+ o@p@n // open/opening/e/s - open (b %o@p@n openbaar/openbare/openbaring - _) oper (A %o@p@r // operateur/opereer - operasie %o@p@rA:si // fix stress operasie/hartoperasie, etc. - opera (K o@p@r%a // stress: opera/operas/operamusiek/-sanger - opinie o@p'ini // opinie/-s - opium o@piWm // fix vowel sounds: opium and compounds - _) opmerkli (k %Opm&rkl@ // move default stress: opmerklik/-e/-heid - op (nuut %Op // move default stress: opnuut - op (offer Op // fix o sound: selfopperende, etc. - oppon (A %Op@n // opponent/opponeer - oppor (tu %Op%Or // fix stress, strip p: opportunis/-me/-ties/opportuun - oppos (isie %Op@z // fix stress, 2nd o and s sounds, single p: opposisie/-s and compounds - _) op (reg %Op // move default stress: opreg/-te - op (roerig %Op // oproerig/-e/-heid, but oproer - op (ruien %Op // move default stress: opruiend/-e - op (sienb %Op // opsienbare/opsienbarend - _) opsigteli (k %OpsIx2t@l@ // move default stress: opsigtelik/-e vs. opsig - _) op (sy %Op // move default stress: opsy and compounds - opspraak OpsprA:k // fix stress: opspraakwekkend/-e - op (standig %Op // move default stress: opstandig/-e/-heid - opti (mA %Opt%i // optimis/-me/-te/-ties/optimaal - _) opu (s o@pW // "op" not prefix: opus/-se - _) op (vlieë %Op // move default stress: opvlieënd/-e/-heid - _) op (vall %Op // move default stress: (on)opvallend/-e - op (winde %Op // move default stress: opwindend and derivatives o (rakel %O // fix stress and o sound: orakel/-spreuk/-taal, etc. ordo (nnan %Ord@ // fix stress and 2nd o sound: ordonnansie/-s and compounds _) or (ga %Or // move default stress: orgaan/organe @@ -3089,6 +3186,7 @@ ort (ometr %Ort // fix 2nd o sound and stress: ortometrie/-metries/-e ort (osko %Ort // fix 2nd o sound and stress: ortoskopies/-e ose (a %o@S%i // fix stress and s and e sounds: oseaan/oseane and compounds + o (soon %O // fix stress and 1st o sound: osoon(laag) and similar @) oties 'o@tis // antibioties/eksoties/eroties/neuroties @) otomie (_N %o@t%um'i // fix o sounds and stress of medical terms: laparotomie, etc. @) otomie (ë %o@t%um'i: // fix o sounds and stress of plurals of medical terms: leukotomieë/nefrotomieë, etc. @@ -3100,6 +3198,7 @@ ovu %Ov%y // fix stress, o and v sounds: ovulasie/ovuleer ower (@ o@v@r // lowergroen/betowerend/dowerig/compounds of owerheid ower (spelig %o@v@r // move default stress: owerspelig/-e + C) oy _^_EN // for English words and names in Afr. texts: cowboy/-s/Joy/Doyle, etc. _) o' (C _^_EN // names like O'Connor are English oë u:@ // @@ -3116,7 +3215,6 @@ ontering %Onte@r@N //ontering in compounds montering etc. _) on (tooCC %On // ontoombaar/-bare/-baarheid/ontoonbaar/-bare/-baarheid/ontoornig/-e/-heid onvoor (s %Onf%o@r //stress: onvoorsiens, onvoorstelbaar etc. - onvoor (w %Onf%o@r //stress: onvoorwaardelik etc. onome un'o@m@ // astronome/ekonome/gastronome onomie unum'i // astronomie/ekonomie/gastronomie onomies un'o@mis // astronomies/-e/ekonomies/-e/gastronomies/-e @@ -3139,6 +3237,7 @@ _) on (kruid On // restore default stress: onkruid/-doder and similar _) on (lus On // restore default stress: onlus/-te/onlusgebied, etc. _) onnie Oni // onnie/-s; not on- prefix + onom (stoot %On%Om // fix stress: onomstootbaar/onomstootlik and their derivatives _) on (paar On // restore default stress: onpaar/-skoene onreg (K Onr&x2 // stress: onreg/te/onregmatig on (regv++ %On // stress: onregverdig/e/heid @@ -3211,6 +3310,7 @@ onder (werping %On@r // move default stress: onderwerping/-sklousule onder (worp %On@r // move default stress: onderworpene/onderworpenheid, etc. onder (wysC@ ''On@r // force default stress: onderwysdepartement and similar + onderwyser (a On@rv'eIs@r_ // fix stress, e sound, pause: ouer-onderwyseraand/-e and similar _) onderge (@P7 'On@rx2@ _) on (kant On // stress on 1st slb.: onkant and compounds on (langs On // stress on 1st slb.: onlangs/-e @@ -3258,6 +3358,7 @@ oor (heers %o@r // move default stress _) oor (hoofs %o@r // move default stress: oorhoofs/-e oorkoepel o@rk'up@l // stress and pronunc. of el: oorkoepelend/oorkoepeling + oor (koom %o@r // fix stress: (on)oorkoomlik/-e oor (laaid %o@r // move default stress: oorlaaide/-s oor (lams %o@r // move default stress: oorlams/-e/-heid _) oorlede o@rl'e@d@ // stress oorlede/ne/s @@ -3289,16 +3390,140 @@ oor (wig 'o@r // stress oot (moedig %o@t // move default stress: ootmoedig/-e/-heid +.group op + opaat up'A:t // homeopaat/psigopaat and similar + opatie upat'i // homeopatie/neuropatie and similar + opaties up'A:tis // psigopaties/osteopaties and similar + opaties up'A:tis // allopaties/homopaties and similar + K) opeen _%Op_e@n + _) ope (K o@p@ //opehart opestelling etc./ope + ope (l o@p@ // dopeling/hopelik/opelug/opelyf + _) ope (rig o@p@ // fix stress: operig/-e + opgee (+ 'Opx2e@ // see rule: _) opge (@P4 Opx2@ + _) opge (@P4 'Opx2@ // stress on 1st slb + &C) op (ig 'o@p // wanhopig/voorlopige + op (lett %Op // move default stress: oplettend/-e/-heid + opper Op@r // oppergesag/wese/vlak/man + opper (vlakki %Op@r // move default stress: oppervlakkig/-e/-heid/-ste + opsetlik %OpsEtl@k // move default stress: opsetlik/-e/-heid + op (sione@ %Op // fix stress vowel and s sounds: opsioneel/-nele + optel Opt&l + _) op (@P2 'Op // opeet/opeis/optredes/opoffering + open (+ o@p@n // open/opening/e/s + open (b %o@p@n openbaar/openbare/openbaring + _) oper (A %o@p@r // operateur/opereer + operasie %o@p@rA:si // fix stress operasie/hartoperasie, etc. + opera (K o@p@r%a // stress: opera/operas/operamusiek/-sanger + op (houde %Op // move default stress: (on)ophoudelik/-e + opinie o@p'ini // opinie/-s + opium o@piWm // fix vowel sounds: opium and compounds + _) opmerkli (k %Opm&rkl@ // move default stress: opmerklik/-e/-heid + op (nuut %Op // move default stress: opnuut + op (offer Op // fix o sound: selfopperende, etc. + oppon (A %Op@n // opponent/opponeer + oppor (tu %Op%Or // fix stress, strip p: opportunis/-me/-ties/opportuun + oppos (isie %Op@z // fix stress, 2nd o and s sounds, single p: opposisie/-s and compounds + _) op (reg %Op // move default stress: opreg/-te + op (roerig %Op // oproerig/-e/-heid, but oproer + op (ruien %Op // move default stress: opruiend/-e + op (sienb %Op // opsienbare/opsienbarend + _) opsigteli (k %OpsIx2t@l@ // move default stress: opsigtelik/-e vs. opsig + _) op (sy %Op // move default stress: opsy and compounds + opspraak OpsprA:k // fix stress: opspraakwekkend/-e + op (standig %Op // move default stress: opstandig/-e/-heid + opti (mA %Opt%i // optimis/-me/-te/-ties/optimaal + _) opu (s o@pW // "op" not prefix: opus/-se + _) op (vlieë %Op // move default stress: opvlieënd/-e/-heid + _) op (vall %Op // move default stress: (on)opvallend/-e + op (winde %Op // move default stress: opwindend and derivatives + .group p p p p (p + ph (_ f // fix ph sound: Rudolph/Joseph + phi (lip fI + phi (lippA_ f@ // fix stress and 1st i sound: Philippa/Philippi + _) pieter (sA@ p%it@r // move default stress: pieters(i)elie and compounds + pig (meA p@x2 // move default stress: pigmee/pigmeë + pi (kant p%i // move default stress: pikant/-e, etc. + pikke (wyn p@k@ // move default stress: pikkewyn and compounds + _) pi (la p%i // move default stress: pilaar/pilare/pilatus + pio (n p%ijO // fix stress: pion/-ne and compounds of pion + pio (nier p%i%u // fix stress and vowel sounds: pionier and compounds + pira (mi p%ir%a // move default stress: piramide/-s/piramiedvormig + pi (sto p@ // pistool/pistole and compounds + pizza pitsa // fix zz sound: pizza and compounds + pla (fon pl%a // plafon and many compounds + plagi (a pl%ax2%i // fix stress: plagiaat and compounds/plagiator + _) pla (kka pl%a // move default stress: plakkaat/plakkate + plane (tA pl%an@' // planetarium/interplanetêr + planete pl%ane@t@ // move default stress and fix a sound: planete and compounds like planetebaan + plant (aardi pl%ant_ // fix stress and insert short break: plantaardig/-e + _) pla (ta pl%a // move default stress: plataan/-boom/platane + platinum (A plA:tinWm_ // fix u sound, pause in compounds like: platinumaandele/-erts + ple (k pl& + plei (dooi pl%eI // (slot)pleidooi/-e + plesier pl@s'i:r + plig plIx2 // fix i sound: dienspligontduiker/pliguitvoering + @) pligtig pl'Ix2t@x2 // pligtig in compounds takes stress: dienspligtige, etc. + pof (add pOf_ // fix o sound: (konings)pofadder/-s + pole (miek p%Ol@ // fix stress and o sound: polemiek and compounds + po (lemie p%u // fix stress and o sound: polemies/-e + pol (fyn p%Ol // move default stress: polfyntjie/-s + po (liep p%u // fix stress and o sound: poliep/-e/-agtig and compounds of poliep + po (liesman pu // fix o sound: poliesman/-ne + polio po@liu // polio and compounds + _) polis (K p''o@l@s // fix stress and o sound: polis/-dokument and similar + polisie p%ulis%i + polisi (eer p%ul%is%i // fix stress and o sound: polisieer and derivatives + polisië p%ul%is%ie@ // fix stress and o sound: (gemeenskaps)polisiëring(sforum) and similar + poli (tAAC p%Ol@ // politiek/politoer and compounds + polities p%ulit%is // fix stress and o sound: polities/-e + _) poli (C p%o@l%i // polifonie/-s/poligamie/-s and many poli- words + pol (vy p%Ol // move default stress: polvy/-e and compounds + pomelo p%ume@l%u // fix stress and o sounds: pomelo(sap/-drankie...) + _) pon (dok p%On // move default stress: pondok/-ke/-kie + popu ,pOpy + _) por (C %pOr //portret portaal etc. + por (ie p%o@r // move default stress: porie/-ë + pori (eus p%o@r%i // fix stress: porieus/-e + porse (lein p%Ors@ // fix stress and e sound: porselein and compounds + por (sie pOr // restore default stress: porsie/-s/-tjie + por (stok pOr // restore default stress: porstok/-ke + portu (ge p%Ort%y // fix stress: Portugees/Portugese + _) pos (a pOs //posadres/posadministrasie + posisie p%uzis%i + _) post (K p'@Ust- //post where it means after + _) post (u p%Ost // move default stress: postuur/posture/postuum and compounds of postuur + _) poten (C p%utEn // fix stress and vowel sounds: potent/-e/potensie + poten (sia p%o@t%En // fix e sound: potensiaal/potensiale and compounds + pot (sier p%Ot // move default stress: potsierlik/-e/-heid + pot (yster pOt_ // fix o sound, insert pause: potyster/-tafel and similar compounds + poësie p%u:@zi // bieg/natuurpoësie/poëversameling, etc. + poë (tA p%u:e@ // poëties/-e/poëte + ra) pporte (rA p%Orte@ // fix stress and e sound: rapportering/rapporterende + pseudo sY@d%u // drop p sound: pseudo and compounds + ps (igA s // psigologie/kinderpsigoloog + psige (delie s%ix2@ // move default stress: psigedelies/-e + _nie) psige ps@x2@ // restore p sound: geniepsige/-r + _) psalm p@sal@m // schwa between p and s + psalmis p@s%al@mIs // move default stress: psalmis/-te + + pub (li p%Wb + puntener p%Wnt@ne@r // stress and 2nd e sound: puntenerig and derivatives + pu (pil p%y // move default stress: pupil/-le and compounds + puri (tein p%yr@ // fix stress and i sound: puritein/-e/-se + pêrel p&:r@l // fix e sound: pêrelig/-e + +.group pa _) paarl p&:r@L // Paarl/Paarlberg/Paarlvallei _) padda (CA p''ada // fix stress and 2nd a sound: paddavis/paddaman, etc. pa (godA p%a // fix stress and a sound: pagoda/pagode/-s pajama p@dZ'A:ma //pajama and compounds pak (A pak? // pakesel/pakos/verpakafdeling pakistan p%ak%istan //first a and stress + _) pa (kka p%a // move default stress: pakkaas/pakkase pakke (t p%akE // pakket/-te and compounds pale (stA p%al@ // fix stress and a sound: Palestina/Palestyn and derivatives pale (t p%alE // fix stress and a sound: palet/-te and compounds @@ -3330,6 +3555,7 @@ parle (ment p%arl@ // move default stress and fix e sound: parlement and compounds, eg. parme (saan p%arm@ // move default stress: parmesaan(kaas) and compounds paro (di p%ar%u // fix stress and vowel sounds: parodie and compounds + parti (sa p%art%i // move default stress: partisaan/-ane parti (tu p%art@ // fix stress and i sound: partituur/partiture and compounds pase (lla p%as& // fix stress and a sound: pasella(tjie) and compounds pa (sifi p%a // shorten a sound: pasifis/-me/-ties/-e @@ -3337,9 +3563,11 @@ pa (tat p@ // patat/warmpatat/wurgpatat patie (KN p%at'i //words ending in patie has stress at end + a sound/simpatiek @) paties p'A:tis // fix stress and a sound: simpaties/-e + patio pA:ti;u // fix stress and vowel sounds: patio and compounds para (C ,para //paralel, paragraaf etc. parade (K p@rA:d@ // parade and compounds _) par (CA p%ar // (ge)parkeer/parkeerplek/party(keer/maal...)/parfuum/parmantig + parka (baadj park%a // restore default stress: parkabaadjie/-s and compounds parke (raad park@ // fix stress and e sound: Parkeraad(slid, etc.) _) pas (AA pas // pasaangeër/pasoortreding pas (op p%as // pasop/pasoppens @@ -3354,12 +3582,15 @@ paté p%ate@ // fix stress and vowel sounds: (lewer)paté, etc. pavil (joe p%av@l // fix stress and v sound: paviljoen and compounds pawil (joe p%av@l // fix stress: pawiljoen and compounds + + +.group pe _) pe (dA p@ //pedaal pedanties etc. + @C) pe (da p@ // fix e sound: voet-/petrolpedaal/-pedale _) peda (g p%Ed%a //pedagogie etc. _) pedi p%Ed%i //pediater etc. _) ped (of p%Ed //pedofiel pedofilie, etc. _) pedo (m pEd%u // restore default stress: pedometer/-s - polio po@liu // polio and compounds pele (ton p%&l@ // fix stress and e sounds: (vuur)peleton and similar compounds _) peli (ka p%El%i // move default stress: pelikaan/pelikane pele (ton p%&l@ // fix stress and e sounds: (vuur)peleton and similar compounds @@ -3384,6 +3615,7 @@ ry) pere (_ p@r@ // fix penultimate e sound: rypere skam) pere (_ p@r@ ?? shorten 1st e in ending perfek p@rfEk // perfek/-te/-sie/-sionis + pergola p%&rx2o@l%a // move default stress: pergola/-s and compounds perife (rA@ p%Er@f@ // fix stress and vowel sounds: periferie/-ë/periferaal/-ale peri (o p%e@r%i // stress: periode/-s and compounds peripa (t pEripa'' // fix stress and vowel sounds: peripateties/-e/peripatetikus/-se/peripatetici @@ -3413,70 +3645,21 @@ petrol pEtr@l_ // o = schwa: petrol and compounds petrol (eum p@tro@l // move default stress and soften e: petroleum and compounds pe (tunia p@ // fix stress and e sound: petunia/-s - ph (_ f // fix ph sound: Rudolph/Joseph - phi (lip fI - phi (lippA_ f@ // fix stress and 1st i sound: Philippa/Philippi - _) pieter (sA@ p%it@r // move default stress: pieters(i)elie and compounds - pig (meA p@x2 // move default stress: pigmee/pigmeë - pi (kant p%i // move default stress: pikant/-e, etc. - pikke (wyn p@k@ // move default stress: pikkewyn and compounds - _) pi (la p%i // move default stress: pilaar/pilare/pilatus - pio (n p%ijO // fix stress: pion/-ne and compounds of pion - pio (nier p%i%u // fix stress and vowel sounds: pionier and compounds - pira (mi p%ir%a // move default stress: piramide/-s/piramiedvormig - pi (sto p@ // pistool/pistole and compounds - pizza pitsa // fix zz sound: pizza and compounds - pla (fon pl%a // plafon and many compounds - plagi (a pl%ax2%i // fix stress: plagiaat and compounds/plagiator - _) pla (kka pl%a // move default stress: plakkaat/plakkate - plane (tA pl%an@' // planetarium/interplanetêr - planete pl%ane@t@ // move default stress and fix a sound: planete and compounds like planetebaan - plant (aardi pl%ant_ // fix stress and insert short break: plantaardig/-e - _) pla (ta pl%a // move default stress: plataan/-boom/platane - platinum (A plA:tinWm_ // fix u sound, pause in compounds like: platinumaandele/-erts - plei (dooi pl%eI // (slot)pleidooi/-e - plesier pl@s'i:r - plig plIx2 // fix i sound: dienspligontduiker/pliguitvoering - @) pligtig pl'Ix2t@x2 // pligtig in compounds takes stress: dienspligtige, etc. - pof (add pOf_ // fix o sound: (konings)pofadder/-s - pole (miek p%Ol@ // fix stress and o sound: polemiek and compounds - pol (fyn p%Ol // move default stress: polfyntjie/-s - po (liep p%u // fix stress and o sound: poliep/-e/-agtig and compounds of poliep - po (liesman pu // fix o sound: poliesman/-ne - _) polis (K p''o@l@s // fix stress and o sound: polis/-dokument and similar - polisie p%ulis%i - polisi (eer p%ul%is%i // fix stress and o sound: polisieer and derivatives - polisië p%ul%is%ie@ // fix stress and o sound: (gemeenskaps)polisiëring(sforum) and similar - poli (tAAC p%Ol@ // politiek/politoer and compounds - polities p%ulit%is // fix stress and o sound: polities/-e - _) poli (C p%o@l%i // polifonie/-s/poligamie/-s and many poli- words - pol (vy p%Ol // move default stress: polvy/-e and compounds - pomelo p%ume@l%u // fix stress and o sounds: pomelo(sap/-drankie...) - _) pon (dok p%On // move default stress: pondok/-ke/-kie - popu ,pOpy - _) por (C %pOr //portret portaal etc. - por (ie p%o@r // move default stress: porie/-ë - pori (eus p%o@r%i // fix stress: porieus/-e - porse (lein p%Ors@ // fix stress and e sound: porselein and compounds - por (sie pOr // restore default stress: porsie/-s/-tjie - portu (ge p%Ort%y // fix stress: Portugees/Portugese - _) pos (a pOs //posadres/posadministrasie - _) post (K p'@Ust- //post where it means after - _) post (u p%Ost // move default stress: postuur/posture/postuum and compounds of postuur - _) poten (C p%utEn // fix stress and vowel sounds: potent/-e/potensie - poten (sia p%o@t%En // fix e sound: potensiaal/potensiale and compounds - pot (sier p%Ot // move default stress: potsierlik/-e/-heid - poësie p%u:@zi // bieg/natuurpoësie/poëversameling, etc. - poë (tA p%u:e@ // poëties/-e/poëte - ra) pporte (rA p%Orte@ // fix stress and e sound: rapportering/rapporterende + + +.group pr prakti (syn pr%akt%i // move default stress: praktisien and compounds and plural _) prak (tyk pr%ak // stress: praktyk and compounds prefek prifEk // fix vowel sounds: prefek/-te/-tuur and compounds + preg (nanC pr%Ex2 // move default stress: pregnant/pregnansie pre (histo pre@ // fix pre sound: prehistories/-e pre (lud pr@ // fix stress and e sound: prelude/-s/(ge)preludeer pre (mier pr@ // move default stress and fix e sound: premier and compounds pre (nata pr,e@ // fix e sound: prenataal/-tale + presbiteri (a pr%Esb@t%e@r%i + @) present pr@sEnt // restore default stress when present 2nd part of compound: krismispresent, etc. preste (rend pr@ste@ // fix stress and vowel sounds: presterend/-e + prestige pr%Esti:Z // prestige and compounds pretori pr%it%o@r%i //pretorianer,pretoriaan, fix e and o sounds a pretoria (_ pr%it'o@ria //ending in pretoria pretoria (C prit'o@ria //pretoriase, pretoriahuis etc. @@ -3492,8 +3675,6 @@ prinsi (pA pr@ns@ // move default stress: prinsipaal/prinsipale/prinsipaals/prinsipieel/-ële prinsipe (K pr@nsip@ // stress on 2nd slb.: prinsipe/-s priso (nier pr@s@ // fix stress and vowel sounds: prisonier and many compounds - ple (k pl& - posisie p%uzis%i predi (kant pr%e@d@ // predikant and compounds prediker pre@d@k@r // fix i sound: prediker/-s and compounds première pr%imj&:r // fix stress and vowel sounds: première(ganger) @@ -3517,6 +3698,7 @@ promenade pr%Om@nA:d@ // fix stress and vowel sounds: promenade/-dek/-konsert, etc. promisku pr%Om@sky // fix stress and o sound: promisku/-e/-íteit promulg (e pr%Om%Wlx2 // fix stress and vowel sounds: promulgeer/-gering + pronker (tji prONk_&r // insert pause, fix e sound: pronkertjie/-s and compounds proposi pr%Op@zi // stress, o and s sounds: (besigheids)proposisie/-si, etc. prosa pro@s%a //prosa and compounds prosa (ïe pr%o@sA: // fix stress and vowel sounds: prosaïes/-e @@ -3537,17 +3719,7 @@ proto (C pro@tu // protokol/prototipe prot (on+ pro@t // fix o sounds: proton/-e and compounds provi (and pr%o@v%i // fix stress and v sound: proviand/-meester, etc. - pseudo sY@d%u // drop p sound: pseudo and compounds - ps (igA s // psigologie/kinderpsigoloog - psige (delie s%ix2@ // move default stress: psigedelies/-e - _nie) psige ps@x2@ // restore p sound: geniepsige/-r - _) psalm p@sal@m // schwa between p and s - psalmis p@s%al@mIs // move default stress: psalmis/-te - - pub (li p%Wb - puntener p%Wnt@ne@r // stress and 2nd e sound: puntenerig and derivatives - pu (pil p%y // move default stress: pupil/-le and compounds - puri (tein p%yr@ // fix stress and i sound: puritein/-e/-se + provita pr%uvit%a // fix v sound: provita/-s and compounds .group q @@ -3566,6 +3738,7 @@ _) r (_DD. rant _) r (_DDD rant raad (A rA:t_ // fix d sound and short pause: raadop/voorraadopname, etc. + ra (bbyn r%a // move default stress: rabbyn/-e rachel rA:x2@l // fix a sound: Rachel(tjie) radika (li radika radika (le radik'A: @@ -3584,7 +3757,7 @@ ra (pier r%a // move default stress: rapier/-e and compounds _) ra (pport r%a // fix stress: rapport/skoolrapport/rapportryer rasse ras@ // e sound of compounds starting with rasse - ribbe (tj r'Ibi + ribbe (tj rIb%i // skaapribbetjie riete rit@ // fix e sound: merietelys/rietedak, etc. rinkh (als rINk // drop h: rinkhals and compounds rinne (w r@n@ // move default stress: (ge/ver)rinneweer/-de/-der @@ -3592,6 +3765,7 @@ ris (kant r@s // move default stress: riskant/-e ritme rItm@ // fix e sound in ritmes/ritmespeler ritu (A r@t%y // ritueel/rituele/ritualisties + rl(_ _^_EN // words ending in -rl are English: girl/whirl/pearl, etc. roersel rurs@l // fix stress and e sound: roersele and compounds of roersel _) rol (A rOl? // oprolaksie/roloorvleueling roeme (nië r%umi: // fix stress and e sound: Roemenië(r) @@ -3608,6 +3782,7 @@ rivier r@fi:r _) ri (g rI // stress on 1st slb.: rigting/-loos/-vas, etc. + robot (A ro@bOt_ // fix 2nd o sound, pause: robotarm/-oog/-oë ron (dawel r%On // move default stress: rondawel/-s/-tjie rond (borst r%Ont // move default stress: rondborstig/-e rond (r rOnt // grondreuk/grondrel/rondreis/-rol/-ry @@ -3623,9 +3798,11 @@ ru (moer r%W // fix stress and u sound: rumoer/-ig/-heid rusper (C rWsp@r // fix e sound: rusperband/-tjie/-trekker and similar ru (ïn r%y_ // move default stress: ruïne/-s + .group re rea (ks r%ia // reaksie/s/skokreaksie rea (C r%i%a // reageer/realis/me|ties + re (ageren r%i // fix stress and vowel sounds: reagerend/-e re (bel r@ // move stress from 1st slb recce rEki // fix e and c sounds: recce/-s re (dakC r@ // fix stress and e sound: redaksie/redakteur and compounds @@ -3650,6 +3827,7 @@ regi (sseuC r@x2@ // fix stress and e sound: (film-/kuns-/mede-/musiek-/oorklankings-)regisseur/-sseuse reg (ist r@x2 // registrasie/-nommer/register/bevolkingsregister regle (ment r@x2l@ // fix stress and e sounds: reglement/-e and compounds + re (gulA r%E // fix e sound: regulasie/reguleer/regulering regverdig r&x2f'&rd@x2 // regverdig/onregverdige/regverdigheid - verwyder uit af_list rekla (mA r@kla // fix e sound: reklamatories/-e/reklamasie reklame r@klA:m@ // fix stress and e sounds: reklame and many compounds @@ -3657,6 +3835,7 @@ re (kru r@ // move stress from 1st slb _) re (la r@ // relaas/relase/relasie and compounds rele (van r@l@ // relevansie/relevant and derivatives + re (liek r@ // fix stress and e sound: reliek/-e and compounds reli (gi r@l@ // fix stress and e sound: religie/-ë/religieus reliëf r%e@l%iEf // fix stress and vowel sounds: reliëf and compounds rem (_ rEm // handrem/kabeltrem/kragrem/noodrem/skyfrem/stadstrem/veiligheidsrem @@ -3720,9 +3899,7 @@ @) s (_S1q s // to correctly handle plurals of propernames in af_list: Jouberts, etc. @@@) s (_S1 s // to correctly handle plural s i) s (_ s // exceptions to rule: @@@) s (_S1 s - se (_ s@ //the word se and some ending in se - ._) se (_ s@ //Se at start of sentence. - + sahara sah'A:ra // fix stress and a sound: Sahara/-woestyn and similar compounds sangere (K s%aN@rE //sangeres and compounds: opera-/popsangeres o) s (_ s // exceptions to rule: @@@) s (_S1 s u) s (_ s // exceptions to rule: @@@) s (_S1 s @@ -3731,6 +3908,7 @@ s (chaos s // split s/ch: regs-/verkeerschaos sh (_ _^_EN _) sh S // sh at beginning of word pronounced like English sh + shire (_ _^_EN // names ending in shire are English: yorkshire/Oxfordshire, etc. sj S s (jag s // split sj: baasjagter/patrysjag/pelsjagter sjampanje S%ampanj@ // move default stress: sjampanje and compounds @@ -3739,14 +3917,15 @@ @) s (jas s // fix s/j sounds: asjas/huisjas/nertsjas/pelsjas sjerrie SEri // fix e sound: sjerrie and compounds sjimpan (see S@mp%an // move default stress: sjimpansee/-s and compounds - sjokolade SOk@l'A:d@ // sjokolade and compounds - s (japie s // dorpsjapie/plaasjapie/stadsjapie + sjokolade S%Ok@lA:d@ // sjokolade and compounds: warmsjokolade + s (jaap s // stads-/dorpsjaap @) sj (aar sj // diensjaar/lewensjaar/begrotingsjaar @) sj (aCA sj // apartheidsjare/oesjare/beroepsjaloesie @) s (joern s // split -sj-: fabrieks-/reis-/skeepsjournaal, etc. @) s (jonC s // split sj: bruidsjonker/herdersjonge/kajuitsjonge/skeepsjonge/varsjonk sigare (t s@x2%arE // fix vowel sounds and move default stress sig (a@ s@x2 // sigaar/sigare/sigaardosie + si (klie si // fix i sound: siklies/-e _) si (klo s%i // fix stress and i sound: sikloon/siklone/sikloop/siklope siklu (s siklW // siklus and many compounds silhoe (A s@l%uw // silhoeët/-te/-teer @@ -3761,19 +3940,6 @@ sinteties s@nte@tis // sinteties/e/fotosinteties/-e si (viel s@ // move default stress and fix i sound: siviel/-e s (iën S - _) sebra se@bra // fix vowel sounds: sebra/-strepe; variant of zebra - se (ggA s& // fix e sound: niksseggend/-e - @) seko (no@ s_%Ek%u // fix e sound; default stress; insert short pause: bedryfs-landsekonomie/-s/-ekonoom - @) seks (_ sEks // fix final e sound: kinder-/kuber-/oumens-/selfoon-/tienerseks - seks (tant s%Eks // move default stress: sekstant and compounds - sekste (t s%EkstE // fix stress and 2nd e sound: sekstet/-te - selek (CA s@lEk //seleksie selekteer etc. - sending (_ sEnd@N //fix sending at word end - sen (sorie s%En // move default stress: sensories/-e - senter sEnt@r // fix e sound: binne-/buite-/Springboksenter - @C) se (re_ se@ // fix penultimate e sound: bed-/brand-/keel-/kop-/kruip-/maag-/mond-/pitsere - se (roet s@ // fix stress and e sound: seroet and compounds - seroto (ni s%Er@t%u // fix stress and vowel sounds: serotonien(vlakke, etc.) sitrus s'itr%Ws_ //i sound and stress in compounds _) saam (P4 s'A:m // saamgepers/-de/saamgetel/saamgeêet/saampers @@ -3809,55 +3975,6 @@ sauna sO:na // fix au sound: sauna(bad and similar compounds) sav (annA s%av // fix stress and v sound: savanna/-s/savanne _) schu (C Su // fix u sound: Schubert/Schultz/Schumann/Schumacher - _) sedan s@dan // fix stress and e sound: sedan/-s/sedanmotor, etc. - _) sede se@d@ // sede/-s|-preek - se (duk s@ // fix stress and e sound: seduksie/-s/seduktief - sei (soen s%eI // move default stress: seisoen and compounds - seker se@k@r // versekering/sekerheid/onsekerheid/sekere - se (ko s@ // sekond/sekonde/sekondes/sekondant - sekre (ta s@kr@ - sekretari (A s@kr@t%ar%i // fix stress and vowel sounds: sekretariaat/sekretarieel/-ële - _) se (kre s@ // fix e sound: (ge)(kon)sekreer/sekreet/sekresie - se (ku s@ // sekuriteit/sekuur - seku (l s%Ek%y // sekulër/sekulariseer - sekwe (strA s%Ekw@ // fix e sounds: sekwestrasie/sekwestreer and compounds - bloed) se (l s& // fix e sound: (wit)bloedsel(le)(telling and similar compounds - braille) se (l s& // fix e sound: braillesel/-le - heuning) se (lK s& // fix e sound: heuningsel/-le - liggaam) se (lK s& // fix e sound: liggaamsel/-le - stam) se (l s& // fix e sound: stamsel/-le/stamselnavorsing, etc. - sela (kant s%e@l@ // fix stress and vowel sounds: selakant/-e - selder (y s%&ld@r // move default stress: seldery and compounds - &) sele (_ s'e@l@ - no) sele (_ s@l@ // e sounds in onnosele - self (stan s%&lf // move default stress: selfstandig/-e/-heid - seli (ba s%El%i // move default stress and fix e sound: selibaat/selibate - selle (tjie s&li // fix e sound: (rooi/wit)bloedselletjies, etc. - @) sellig s'&l@x2 // move default stress: een-/twee-/...-/meer-/veelsellig/-e - se (llin s%&' // stress on 'in: (met)gesellin/-ne/-netjie, etc. - sello (fa s%&l@ // fix stress and vowel sounds: sellofaan and compounds - _) selon (sC s@lo~n // fix stress and e, nasalise o: selonspampoen/-roos/-rose, etc. - @) sel (wig s'&l // stress: (ver)eenselwig and derivatives - polisie) se (lK s& // fix e sound: polisiesel/-le - _) seme (Ct s@mE // sementtafel/blad/vierkant/semester/-s - _) semi (_ sEmi // fix e sound: semi/semi-formeel, etc. - semi (na s%Em%i // seminaar/seminare/seminarium - _) semi (C sEmi // fix vowel sounds: semistaatsinstellings and similar - - sening se@n@N // sening/haaksening/heupsening - _) se (ni@ s@ // fix stress and e sound: seniel/-e/seniliteit - _) senior s''i:ni@r // default stress; fix vowl sounds: senior and compounds starting with senior - senior (itei s%i:n%i%Or // fix vowel sounds: senioriteit - sen (suur s%En // move default stress: sensuur and compounds - _) sen (tra@ s%En // exception to default stress rule: sentraal/sentrale - _) ser (e@ s@r // fix stress and 1st e sound: sereen/serene - sere (moni s%Er@ // seremonie/-meester/huwelikseremonie/seremonieel - _) se (ring s@ // fix stress and e sound: sering/-boom/-bloeisels, etc. - ser (sant s@r // move default stress: sersant and compounds - ser (vet s@r // servet and compounds, e.g. servetring - ses (uur sEs_ // fix e sound and insert short break: sesuur/-nuus, etc. - setel (K se@t@l // setel and compounds; to avoid "=tel" suffix - sete (ne_ se@t@ // fix e sound: besetenes/aangesetene/ingesetene siaal Si'A:l // potensiaal/provinsiaal siale Si'A:l@ // provinsiale/asosiale/nupsiale C) s (ieeC S // potensieel/finansieel/differensieer @@ -3888,6 +4005,7 @@ skerpi (oen sk%&rp%i // move default stress: skerpioen/-e and compounds skilder (y sk@ld@r // move stress to y: skildery and compounds like skilderymuseum skisofr (e sk%is%ufr // fix stress and o sound: skisofreen/skisofrene + skle (rose skl@ // fix stress and e sound: sklerose and compounds _) skok (AP4 sk''Ok_ // fix o sound and stress: skokaankondiging/-effek/-insluiting/-onthulling... skole sko@l@ // fix e sound in compounds: skolebeheerliggaam/-koor/-rugby/-wedstryd/-wet sko (lier sk%o@ // move default stress: skolier/-e @@ -3944,12 +4062,12 @@ spi (na@ sp%i // move default stress: spinaal/spinale _) spi (ra sp%i // move default stress: spiraal and compounds/spirale/spirakel/spirant, etc. spits (von sp@ts // move default stress: spitsvondig/-e/-heid - spoed (@ sput // spoedaflewering/spoedeisend/spoedorder + _) spoed (@ sput // spoedaflewering/spoedeisend/spoedorder spoed (ig spud // spoedig/-lik/-er/-ste _) spon (ta sp%On // move default stress: spontaan/spontane _) sport (@@@ sp''Ort_ // force stress on 1st slb.: sportadministrasie/-konfederasie spreekwoordeli spr%e@kvo@rd@l@ // move default stress: spreekwoordelik/-e, vs. spreekwoord - springbok spr''INbOk // fix o sound: Springbokafrigter/-agterspeler; fix stress: Springbokklere + springbo (k spr''INbO // fix o sound: Springbokafrigter/-agterspeler; fix stress: Springbokklere sproke spro@k@ // see rule: pro (CA pr%u : aangesprokene/onbesproke, etc. self (_ s'&lf // myself/vanself K) sewe (C s'e@v@ // sewejarige/standerdseweklas @@ -3983,9 +4101,11 @@ smelt sm< sodom (iet s,o@dOm // fix stress and 2nd o sound: sodomiet/-e son (g@ sOn // songebakte/-brande/-bruinde/-droogde/songod + son (om s''On_ // fix 1st o sound, pause: sonomspoelde/-omgewe sosial (i so@Sial' // sosialis/sosialisme/sosialisties so (v so@ // soveel/sover soverre so@f'&r@ // stress: se rule: so (v s'o@ // soveel/sover + spas (mod sp%as // move default stress: spasmodies/-e speku (lA sp%Ek%y // spekulasie/spekuleer/spekulatief @) sper (a sp@r' //desperate/desperaatheid/rasperagtig ek) sper (im spEr // eksperimenteer/eksperimenteel @@ -3994,28 +4114,13 @@ spesialis (A spESialis spesialis spESal'Is spesi (f sp%Es%I // spesifiek/spesifiseer - stede (C ste@d@ // fix e sounds of many compounds and derivatives containing stede - ste (laan st@ // fix e sound: eerste-/ag(t)stelaan - %Cel) ste (r st& // fix e sound: dubbelster/-re - Cet) ste (rK st& // fix e sound: ballet-/kabaret-/krieketster/-re - dwaal) ste (r st& // fix e sound: dwaalster/-re - dwerg) ste (r st& // fix e sound: dwergster/-re - nd) ste (r st& // fix e sound: aandster/oggendster - pool) ste (r st& // fix e sound: poolster - prent) ste (r st& // fix e sound: rolprentster/-re - see) ste (r st& // fix e sound: seester/-re/seesterpunte and similar compounds - sepie) ste (r st& // fix e sound: sepiester/-re - sewe) ste (r st& // fix e sound: sewester and compounds - visie) ste (r st& // fix e sound: televisiester/-re - _) ste (ri st%E // fix stress and e sound: steriel/-e/steriliteit - ster (-hotel st&r // fix e sound: een-/twee-/drie-/vier-/vyfster-hotel - ster (hotel st&r // fix e sound: een-/twee-/drie-/vier-/vyfsterhotel - stimu (lA st@m%y // move default stress and fix i sound: stimuleer/stimulering/stimulasie - _) sub (a sWb_ // subagent/subartikel/subatomies, etc. + spine (t sp%inE // move default stress: spinet/-te and compounds + _) sub (a sWb_ // subagent/subartikel/subatomies, etc. sub (li s%Wb // move default stress: subliem/-e subli (mA s%Wbl%i // move default stress: sublimaat/-ate/sublimering sublimi (na s%Wbl%im%i // move default stress: subliminaal/-ale sub (sidA s%Wb // move default stress: subsidie/-s and compounds + sub (skrip s%Wb // move default stress: subskripsie and compounds sub (stansie s%Wp // move default stress and fix b sound: substansie/-s/substansieel/-siële substi (tu s%Wbst@ // move default stress: subsistuut/-tute sub (ti s%Wp // stress and b sound: subtiel/-ste/subtiliteit @@ -4025,6 +4130,7 @@ suid (oos s%Yyt_ // move default stress and insert short break: suidoos/-te/-lik suite swit@ // fix -ui-sound: suite/-s and compounds sukses s%WksEs // sukses/suksesse/suksesvol/reusesukses + sultana s%WltA:n%a // fix stress, keep last a short in compounds: sultana/-s _) su (meri s%u // fix stress and u sound: sumeries/-e su (mmier s%W // move default stress: sumier/-e superintendent s,upr@nt%EndEnt // fix stress and vowel sounds: superintendent and compounds @@ -4033,7 +4139,7 @@ _) sw sw // fix w sound: words beginning with sw-: swerweling/swetend swaar (lyw sw%A:r // move default stress: swaarlywig/-e/-heid swaar (moed sw%A:r // move default stress: swaarmoedig/-e/-heid - swag (K sv'ax2 + swag (K svax2 // dorps-/volkswag, etc. swa (hili sw%a // fix stress and a sound: swahili/-'s _) swam (A@ swam_ // shorten a sound: swamagtig/-etend/-infeksie swart (gal sw%art // move default stress: swartgallig @@ -4047,6 +4153,76 @@ sw (erm sw // fix e sound: naderswerm switser swIts@r // fix e sound: Switserland/Switserse +.group se + se (_ s@ //the word se and some ending in se + __) se (_ s@ //Se at start of sentence. + _) sebra se@bra // fix vowel sounds: sebra/-strepe; variant of zebra + _) se (doos s@ // fix stress and e sound: sedoos(wind) + se (ggA s& // fix e sound: niksseggend/-e + @) seko (no@ s_%Ek%u // fix e sound; default stress; insert short pause: bedryfs-landsekonomie/-s/-ekonoom + @) seks (_ sEks // fix final e sound: kinder-/kuber-/oumens-/selfoon-/tienerseks + seks (tant s%Eks // move default stress: sekstant and compounds + sekste (t s%EkstE // fix stress and 2nd e sound: sekstet/-te + selek (CA s@lEk //seleksie selekteer etc. + sending (_ sEnd@N //fix sending at word end + sen (sorie s%En // move default stress: sensories/-e + senter sEnt@r // fix e sound: binne-/buite-/Springboksenter + senti (ment s%Ent%i // fix stress: sentimentaliteit + @C) se (re_ se@ // fix penultimate e sound: bed-/brand-/keel-/kop-/kruip-/maag-/mond-/pitsere + se (roet s@ // fix stress and e sound: seroet and compounds + seroto (ni s%Er@t%u // fix stress and vowel sounds: serotonien(vlakke, etc.) + _) sedan s@dan // fix stress and e sound: sedan/-s/sedanmotor, etc. + _) sede se@d@ // sede/-s|-preek + se (duk s@ // fix stress and e sound: seduksie/-s/seduktief + sei (soen s%eI // move default stress: seisoen and compounds + seker se@k@r // versekering/sekerheid/onsekerheid/sekere + se (ko s@ // sekond/sekonde/sekondes/sekondant + sekre (ta s@kr@ + sekretari (A s@kr@t%ar%i // fix stress and vowel sounds: sekretariaat/sekretarieel/-ële + _) se (kre s@ // fix e sound: (ge)(kon)sekreer/sekreet/sekresie + se (ku s@ // sekuriteit/sekuur + seku (l s%Ek%y // sekulër/sekulariseer + sekwe (strA s%Ekw@ // fix e sounds: sekwestrasie/sekwestreer and compounds + bloed) se (l s& // fix e sound: (wit)bloedsel(le)(telling and similar compounds + braille) se (l s& // fix e sound: braillesel/-le + heuning) se (lK s& // fix e sound: heuningsel/-le + liggaam) se (lK s& // fix e sound: liggaamsel/-le + stam) se (l s& // fix e sound: stamsel/-le/stamselnavorsing, etc. + sela (kant s%e@l@ // fix stress and vowel sounds: selakant/-e + selder (y s%&ld@r // move default stress: seldery and compounds + &) sele (_ s'e@l@ + no) sele (_ s@l@ // e sounds in onnosele + self (stan s%&lf // move default stress: selfstandig/-e/-heid + seli (ba s%El%i // move default stress and fix e sound: selibaat/selibate + selle (tjie s&li // fix e sound: (rooi/wit)bloedselletjies, etc. + @) sellig s'&l@x2 // move default stress: een-/twee-/...-/meer-/veelsellig/-e + se (llin s%&' // stress on 'in: (met)gesellin/-ne/-netjie, etc. + sello (fa s%&l@ // fix stress and vowel sounds: sellofaan and compounds + _) selon (sC s@lo~n // fix stress and e, nasalise o: selonspampoen/-roos/-rose, etc. + @) sel (wig s'&l // stress: (ver)eenselwig and derivatives + polisie) se (lK s& // fix e sound: polisiesel/-le + _) seme (Ct s@mE // sementtafel/blad/vierkant/semester/-s + semel (@ se@m@l // fix stress and e sound: semeltjie/semeluitslag + _) semi (_ sEmi // fix e sound: semi/semi-formeel, etc. + semi (na s%Em%i // seminaar/seminare/seminarium + _) semi (C sEmi // fix vowel sounds: semistaatsinstellings and similar + + sening se@n@N // sening/haaksening/heupsening + _) se (ni@ s@ // fix stress and e sound: seniel/-e/seniliteit + _) senior s''i:ni@r // default stress; fix vowl sounds: senior and compounds starting with senior + senior (itei s%i:n%i%Or // fix vowel sounds: senioriteit + sen (suur s%En // move default stress: sensuur and compounds + _) sen (tra@ s%En // exception to default stress rule: sentraal/sentrale + _) ser (e@ s@r // fix stress and 1st e sound: sereen/serene + sere (moni s%Er@ // seremonie/-meester/huwelikseremonie/seremonieel + _) se (ring s@ // fix stress and e sound: sering/-boom/-bloeisels, etc. + ser (sant s@r // move default stress: sersant and compounds + ser (vet s@r // servet and compounds, e.g. servetring + ses (uur sEs_ // fix e sound and insert short break: sesuur/-nuus, etc. + setel (K se@t@l // setel and compounds; to avoid "=tel" suffix + sete (ne_ se@t@ // fix e sound: besetenes/aangesetene/ingesetene + + .group st D_) ste st@ //ste after numbers 22ste etc. _) staat (s st''A:t // force stress: staatsadministrasie/-advokaat/-akkreditasie, etc. @@ -4062,11 +4238,34 @@ stapel stA:p@l // fix e sound: (op)stapeling/stapelaar staties st'A:tis sta (tutA st%a // fix stress and a sound: statute/statutêr + êr) ste (_S3 st@ // preserve stress: elementêrste/primêrste, etc. + _) ste (faan st@ // fix stress and e sound: Stefaan/-s/-sie + %Cel) ste (r st& // fix e sound: dubbelster/-re + Cet) ste (rK st& // fix e sound: ballet-/kabaret-/krieketster/-re + dwaal) ste (r st& // fix e sound: dwaalster/-re + dwerg) ste (r st& // fix e sound: dwergster/-re + film) ste (r st& // fix e sound: filmster and compounds + nd) ste (r st& // fix e sound: aandster/oggendster + pool) ste (r st& // fix e sound: poolster + prent) ste (r st& // fix e sound: rolprentster/-re + see) ste (r st& // fix e sound: seester/-re/seesterpunte and similar compounds + sepie) ste (r st& // fix e sound: sepiester/-re + sewe) ste (r st& // fix e sound: sewester and compounds + visie) ste (r st& // fix e sound: televisiester/-re + _) ste (ri st%E // fix stress and e sound: steriel/-e/steriliteit + ster (-hotel st&r // fix e sound: een-/twee-/drie-/vier-/vyfster-hotel + ster (hotel st&r // fix e sound: een-/twee-/drie-/vier-/vyfsterhotel + skaap) ster (tjie st&:r // fix e sound: skaapstertjie/-s + vark) ster (tjie st&:r // fix e sound: varkstertjie/-s + stimu (lA st@m%y // move default stress and fix i sound: stimuleer/stimulering/stimulasie + stede (C ste@d@ // fix e sounds of many compounds and derivatives containing stede steding ste@d@N // besteding and compounds ste (ke_ ste@ // fix e sound: by-/mes-/proefsteke + steke (lig ste@k@ // fix 2nd e sound: stekelig/-e/-heid C) steker ste@k@r // e sound: (aan/dop/kwaad/rugsteker/-s/-y, etc. _ne) stel st@l // fix e sound: nestel/-end wor) stel st@l //worstel e sound in compounds + ste (laan st@ // fix e sound: eerste-/ag(t)stelaan ste (land st@ // fix e sound: vasteland and several compounds @) stel (iC st@l // eersteling/gunsteling/wellusteling/worsteling/eerstelig and compounds &) stele (fo st&l@ // fix e sound in compounds: huis-/werkstelefoon/-fone @@ -4083,11 +4282,13 @@ stede (_ ste@d@ //voorstede, hoofstede etc. stele (_ ste@l@ //kastele lepelstele etc. stene (_ ste@n@ //skoorstene, bakstene etc. + sten (sil stEn // fix e sound in compounds like wolbaalstensil chri) stene (_ st@n@ //fix christene and compounds @) stel (o st@l //bewusteloos/lustelose/rusteloosheid/kosteloos mAre) ste (r st& // fix e sound: more/môrester/-re stereo (ti st%e@r%i%u // fix stress and vowel sounds: stereotiep/-tipe/-tipeer sterf (K st&rf // fix e sound: uitsterf/weg(ge)sterf/kindersterfte + sterk (_ st&rk // fix e sound: duiwel-/kapitaal-/stormsterk, etc. @) sterkt st&rkt // compounds ending in sterkte stero (ïed st%e@r%u; // fix stress and vowel sounds: steroïed/-e bok) ster (t st&:r // fix e sound: bokstert/-e/-tjie/-s @@ -4105,7 +4306,7 @@ @) stemperame s_tEmp@-r%amE // fix vowel sounds and stress: dobbelaars-/kunstenaarstemperament, etc. stewel ste@v@l // sokkerstewels/stewelmaker and other compounds stie (beu st%i // move default stress: stiebeuel and compounds - @) stiek st'ik // statistiek/akoestiek/artistiek and many similar + @V) stiek st'ik // statistiek/akoestiek/artistiek and many similar @) sties =st%is // statisties/akoesties/artisties and many similar sti (let st%i // move default stress: stilet/-te/stiletto stil (swy st@l // move default stress: stilswy(g)end/-e @@ -4114,6 +4315,7 @@ stok (A stOk? // stokagtig/stokinsek/stokoud stok (e sto@k // stoker/-y storm stOr@-m + stotene sto@t@n@ // fix penultimate e sound: verstotene/-s/uitgestotene/-s stout (moedi st%@Ut // move default stress: stoutmoedig/-e/-heid @) straat (_S6 strA:t // Vermeulen/Maréstraat and similar strab (otomi str%ab // fix stress and 1st o sound: strabotomie @@ -4147,7 +4349,7 @@ talen (tjie t%alEiN // fix -entjie: (kuns-/musiek)talentjie @) talig t'A:l@x2 // Anderstalig/tweetalig @) ta (lis t%a // shorten a sound: hospitalisasie/kapitalisme/katalisator and similar - _) ta (ma t%a // tamatie and compounds + tama (tie t%amA: // tamatie and compounds/kersietamaties, etc. _) ta (mb t%a // tamboer and compounds/tambotie and compounds tamboe (ryn t%amb%u // move default stress: tamboeryn/-e and compounds tamele (tj t%am@lEi // fix stress and vowel sounds: tameletjie/-s @@ -4180,6 +4382,7 @@ ti (perA t%i // move default stress: tipering/tiperend/-e ti (ra t%i // move default stress tiran tirade tira (nnie t%ir%a // move default stress: tirannie + tissue tiS%u // English word often used in Afrikaans text: manstissue, etc. titel tit@l // fix e sound: (on)getiteld/titelblad/-geveg and many similar tj tS @) tj (a tj // separate tj: agtjarig/blatjang/bontjas/olifantjag/ouditjaar/tweegatjakkals @@ -4224,6 +4427,7 @@ toi (let t%OI // move default stress: toilet and compounds tokke (lo t%Ok@ // move default stress: tokkelos/-sie/tokkelok and compounds tok (tokk t%Ok // move default stress: toktokkie/-s/-spelery, etc. + tombola t%Ombo@l%a // move default stress: tombola and compounds _) to (na t%o@ // fix stress and o sound: tonaal/tonale _) top (A t''Op_ // fix o sound: topaandeel/-offisier/-universiteit, etc. _) top (aas t%up // fix stress and o sound: topaas and compounds @@ -4231,55 +4435,20 @@ _) top (ogra t%o@p // fix stress and o sound: topografies and derivatives _) top (olo t%o@p // fix stress and o sound: topologies and derivatives @) toris (_ t'o@r@s // fix stress: pectoris/klitoris + _) tor (nyn t%Or // move default stress: tornyn/-e and compounds _) tos (ka t%Os // move default stress: Toskaanse/Toskane - tradi (si tr%adi // shorten and unstress 1st slb: tradisie/tradisioneel/kunstradisie... - trag (ed tr%ax2 // move default stress: tragedie and compounds - trage (otomi tr%A:x2%i // fix e sound: trageotomie - tra (jek tr%a // move default stress and shorten a sound: trajek/-te - _) trak (ta tr%ak // move default stress: traktaat/traktate - _) trans (@P5 tr%ans // transatlanties/transformasie/transoranje/Transvaal, etc. - _) trans (aksie tr%ans // remove small break: transaksie/-s and compounds - transendent (A tr%ans%End%Ent // fix stress and vowel sounds and remove short break: transendenteel/-tele/-taal - transistor tr%ansIst@r // trans- not prefix, fix o sound: transistor(radio, etc.) - transito tr%ansit%u // trans not prefix: transitorooftog and similar - transport tr%anspOrt // fix stress: transport and compounds - trap (orr trap_ // shorten a sound: traporrel/-tjie/-s and compounds - trap (soe tr%ap // move default stress: trapsoetjies/-e - traw (a trav' // trawant/e/trawal - &) treding tre@d@N // betreding/uittreding - @) treer tr'e@r // this slb always takes stress; many words - @) treer (A tre@r // default stress: aantreery/-e/intreerede - tref (afs trEf_ // fix e sound and insert short pause: trefafstand/-e - trens (_ tre~ns // fix e sound and nasalise: trens/-snytrens and similar - _) tri (bu tr@ // fix stress and i sound: tribuun/tribune/tribuut/tribute - _) tribu (na tr@b%y // fix stress and i sound: tribunaal/tribunale/tribunaat - treken t_re@k@n //skootrekenaar, kredietkaartrekening etc. fix e sounds - - tre (k tr& - trekker tr&k@r // voortrekkerleier/Voortrekkerstraat/salaristrekkersvergadering - trio (_ tri:u // fix o sound: (fluit-/harp/-kitaar...)trio - triomf (ant tr%i%Omf // move default stress: triomfantlik/-e - tri (omf tr%i // move default stress: triomf/-boog/-lied/-tog, etc. - @) trise (_ tr'is@ // aktrise and similar - @) trises (_ tr'is@s // fix stress: aktrises/redaktrises - trivia trIvij%a // trivia and compounds: musiektrivia, etc. - troglo (die tr%Ox2l%u // fix stress and 2nd o sound: troglodiet/-e and compounds - _) trom (b tr%Om // move default stress: tromboon/trombone/trombose and compounds - _) trom (pet tr%Om // move default stress: trompet/-tte/-tter and compounds - tro (tseer tr%O // stress: trotseer/getrotseer - tro (tsering tr%O // move default stress - truk (aats tryk // default stress: trukaatser/-s - tru (spieë try // fix u sound: truspieël/-tjie/-s - tru (stee tr%W // move default stress: trustee and compounds ttel t@l // many compounds of bottel/skottelgoed tuberkulose t%yb@rk%ylo@s@ // fix stress; e sound in compounds: tuberkulose/-behandeling tug (A tWx2_ // fix u sound: (on)tugondersoek/-oortreding/-ordonnansie tuiglik t'Yyx2l@k // stress: werktuiglik/sintuiglik/-e/-heid tuin (ier t%Yyn // move default stress: tuinier and compounds + turlington tW:l%iNt@n // Turlington/-reuk/-smaak tussen tWs@n // tussenin/tussenbeide/tussenganger tuur t'yr parti) tuur ty:r // compounds ending with partituur take default stress: musiekpartituur s) tuur ty:r // "uur" in stuur takes default stress: weggestuur + tweed (K twi:d // english pronunciation: tweedbaadjie/-pak, etc. + tweed (ra twe@d // but: tweedrag/tweedraadwol, etc. twis (A twIs_ // fix i sound, pause: twisappel/-s twyfe (l tweIf@ // fix e sound: twyfelloos/twyfellose @) ty (dig t'eI // gelyktydig/vroegtydig @@ -4293,6 +4462,7 @@ teater t%iA:t@r // fix stress and e sound: teater and compounds tea (tra t%i%a // fix stress and vowel sounds: teatraal/teatrale teen (argu t''e@n // forse stress on 1st slb.: teenargument/-e/-asie + te (dom t@ // fix e sound: idiotedom and similar teen (oorges t%e@n_ // move default stress: teenoorgestel/-d/-e @A) te (geC t@ // fix e sound: Hugenotegemeente/stategebou and similar compounds @C) te (gn t& //tegniek/iese and friends @@ -4407,7 +4577,7 @@ @) tele (_ t'e@l@ tenis t@nIs - tennis t'En@s // tennisafrigter/tennisarm + tennis tEn@s // tennisafrigter/tennisarm/tafeltennis tera (pA t%Er%a // terapie/terapeut/terapeuties/arbeids-/groepsterapie o) tera (pA t%Er%a' // stress: chemoterapie/fisioterapeut/psigoterapie... _) tereg t@r&x2 // teregwysing/teregstelling/tereghelp/tereg @@ -4426,6 +4596,50 @@ C) te (tjie ti // fix e sound: holtetjie/groentetjies/laagtetjie, etc. tewe (_ te@v@ // fix e sound: (agter/voor)stewe/tewe and compounds +.group tr + tradi (si tr%adi // shorten and unstress 1st slb: tradisie/tradisioneel/kunstradisie... + trag (ed tr%ax2 // move default stress: tragedie and compounds + trage (otomi tr%A:x2%i // fix e sound: trageotomie + tra (jek tr%a // move default stress and shorten a sound: trajek/-te + _) trak (ta tr%ak // move default stress: traktaat/traktate + _) trans (@P5 tr%ans // transatlanties/transformasie/transoranje/Transvaal, etc. + _) trans (aksie tr%ans // remove small break: transaksie/-s and compounds + transendent (A tr%ans%End%Ent // fix stress and vowel sounds and remove short break: transendenteel/-tele/-taal + transistor tr%ansIst@r // trans- not prefix, fix o sound: transistor(radio, etc.) + transito tr%ansit%u // trans not prefix: transitorooftog and similar + transpa (rant tr%ansp@ // fix stress and a sound: transparant/-e and compounds + transport tr%anspOrt // fix stress: transport and compounds + trap (orr trap_ // shorten a sound: traporrel/-tjie/-s and compounds + trap (soe tr%ap // move default stress: trapsoetjies/-e + traw (a trav' // trawant/e/trawal + &) treding tre@d@N // betreding/uittreding + @) treer tr'e@r // this slb always takes stress; many words + @) treer (A tre@r // default stress: aantreery/-e/intreerede + tref (afs trEf_ // fix e sound and insert short pause: trefafstand/-e + trens (_ tre~ns // fix e sound and nasalise: trens/-snytrens and similar + _) tri (bu tr@ // fix stress and i sound: tribuun/tribune/tribuut/tribute + _) tribu (na tr@b%y // fix stress and i sound: tribunaal/tribunale/tribunaat + treken t_re@k@n //skootrekenaar, kredietkaartrekening etc. fix e sounds + + tre (k tr& + trekker tr&k@r // voortrekkerleier/Voortrekkerstraat/salaristrekkersvergadering + tril (joen tr@l // move default stress: triljoen/-e + trio (_ tri:u // fix o sound: (fluit-/harp/-kitaar...)trio + triomf (ant tr%i%Omf // move default stress: triomfantlik/-e + tri (omf tr%i // move default stress: triomf/-boog/-lied/-tog, etc. + @) trise (_ tr'is@ // aktrise and similar + @) trises (_ tr'is@s // fix stress: aktrises/redaktrises + trivia trIvij%a // trivia and compounds: musiektrivia, etc. + troglo (die tr%Ox2l%u // fix stress and 2nd o sound: troglodiet/-e and compounds + _) trom (b tr%Om // move default stress: tromboon/trombone/trombose and compounds + _) trom (pet tr%Om // move default stress: trompet/-tte/-tter and compounds + tro (tseer tr%O // stress: trotseer/getrotseer + tro (tsering tr%O // move default stress + trousseau tr''u:s@U // trousseau/-kis and similar + truk (aats tryk // default stress: trukaatser/-s + tru (projek try + tru (spieë try // fix u sound: truspieël/-tjie/-s + tru (stee tr%W // move default stress: trustee and compounds .group u @@ -4435,9 +4649,29 @@ ugan (de %ug%an // fix stress and g sound: Ugandees/Ugandese u (hle_ u: // Nguni names: kwanobuhle/zamakuhle uu y + uy Yy + ulti (ma %Wlt%i // move default stress: ultimatum/-s + _) u (ra %y // uraan and compounds/uranus + _) ure (C y:r@ // fix e sound: urelange/uremeter/-s + _) ure (t %yre@ // fix stress and e sound: ureter/uretra/-s + urienweg %yrinv&x2_ // fix stress and e sound: urienweginfeksie/-ontsteking, etc. + urine %yrin@ // urine and compounds + urineer yrin'e@r // stress to end + _b) us (A ''Ws_ //busongeluk/-operateur/-uitstappie, etc. + utjie Yyci + uto (piA %yto@ // fix stress: utopia/utopië/utopie/-ë/-s + univers (A@ %yn%iv%&rs // universiteit and compounds/universeel/-ele + C) untjie YyNci // muntjie/puntjie/-s + C) uwelik yv@l@k // gruwelik/huwelik/afskuwelik + m) u (skiet %W //change stress for muskiet compounds + n) uwe (C yv@ // nuwelinge/nuwemaan + n) uw yv // nuwigheid/nuwighede + Cr) uwe (C yv@ // gruweldaad/-rolprent/-verhaal.../struweling + + +.group ui ui Yy uie (C Yy@ // graansuierdiens/kruiersloon/kuiergas/luierbroekie/sluierdoek/suierklep/getuienis - uy Yy _) uit (@P3 'Yyt // uit- is prefix: uitademing, etc. uit (bund %Yyt // move default stress: uitbundig and derivatives uit (dagen %Yy // move default stress: uitdagend/-e @@ -4459,6 +4693,7 @@ uit (sluiten %Yyt // move default stress: uitsluitend/-e uitsluitlik %YytslYytl@k // move default stress: uitsluitlik/-e uitsonderli (k %YytsOn@rl@ // move default stress: uitsonderlik/-e vs. uitsonder + uitspatlik %Yytspatl@k // move default stress: uitspatlik/-e/-heid uitspreekl %Yytspre@kl // fix stress and avoid -lik suffix: onuitspreeklik/-e uitstaan (C %YytstA:n // move default stress: uitstaande/onuitstaanbaar/-bare uit (steken %Yyt // move default stress @@ -4471,22 +4706,6 @@ uitgewerk Yytx2@v&rk // uitgewerk and derivatives; see rule: uitgewer uitgewerp Yytx2@v&rp // fix vowel sounds, see rule: uitgewer uitke (n YytkE // mix e sound: uitken - ulti (ma %Wlt%i // move default stress: ultimatum/-s - _) u (ra %y // uraan and compounds/uranus - _) ure (C y:r@ // fix e sound: urelange/uremeter/-s - _) ure (t %yre@ // fix stress and e sound: ureter/uretra/-s - urienweg %yrinv&x2_ // fix stress and e sound: urienweginfeksie/-ontsteking, etc. - urine %yrin@ // urine and compounds - urineer yrin'e@r // stress to end - _b) us (A ''Ws_ //busongeluk/-operateur/-uitstappie, etc. - utjie Yyci - univers (A@ %yn%iv%&rs // universiteit and compounds/universeel/-ele - C) untjie YyNci // muntjie/puntjie/-s - C) uwelik yv@l@k // gruwelik/huwelik/afskuwelik - m) u (skiet %W //change stress for muskiet compounds - n) uwe (C yv@ // nuwelinge/nuwemaan - n) uw yv // nuwigheid/nuwighede - Cr) uwe (C yv@ // gruweldaad/-rolprent/-verhaal.../struweling .group v @@ -4516,6 +4735,58 @@ _) vat (A@ fat_ // fix a sound: vatafstand/-orgaan vate (C fA:t@ // fix e sound: vatefabriek/-maker vati (kaan f%at%i // fix stress and shorten a sound: vatikaan and derivatives and compounds + vi (o f%i // move default stress: viool and compounds/viole + vio (letK f%i%u // move default stress: violet/-te/-kleurige, etc. + _) vi (ra v%i // fix stress and v sound: e + _) vi (ri v@ // fix stress and v and i sounds: viriel/-eviriliteit + virtu v@rtS%y //virtueel virtuose etc. fix v and t sounds and assure lack of stress + viru (K virW // fix v sound: virus/-se and many compounds + vitri (oel f%itr%i // fix stress and v sound: (blou/groen/koper/sink)vitrioel + _) vitro (_ vitr%u // fix v and i sounds: in-vitro-bevrugting, etc. + viëtna (me vj%Etn%a // fix stress and v and vowel sounds: Viëtnamees/-nese + vi (brA v%i // fix v and i sounds: vibrasie/vibreer + vi (cto@ v%i // fix v and i sounds: victoriaans/-e + video vidiu //video and compounds + vier (kantig f%i:r // move default stress: vierkantig/-e vs. vierkant + villa vIla // fix v sound: villa/-s + ville _^_EN + @ie) vis (_ f@s // fix stress: jellie/kerrievis + vis (A fIs // visarend/walvisolie + vise (K f'isi // visevoorsitter/visesekretaris/vise-president + ad) vis (e@ fis' // v and i sounds: adviseer/adviserend/-e + A) vis (asie vis // improvisasie + A) vis (e@ vis' // v and i sounds: improviseer/reviseer/improviserend + visen (te f@s@n // fix vowel sounds: visenteer/-tering and compounds + vis (ie vis // v and i sounds: visie/televisie + K) vis (ier f@s // fix v and i sounds: visier/-e/kanonvisier, etc. + visi (oen v%is%i // fix stress and v sound: visioen/-e and compounds + visite f@sit@ // fix stress and vowel sounds: visite/-kaartjie/-s + vita (mi v%it%a // move default stress: vitamine/-s/vitamientablet, etc. + vis (uA v%iZ //visuele, visueel etc. + vis (um vis // v and i sounds: visum + + _) vasge (@P5 f'asx2@ + vla (CAA flA: // fix stress and a sound: vlakoekie/-poeier/-roomys/-sous + vlam (oo flam_ // fix a sound: vlamoond/-oorlog + vlieë (nier fl%i@ // move default stress: vlieënier and compounds + vrede fre@d@ // fix e sound: tevredegestel/tevredener/vredemaker + vrede (liew fr%e@d@ // move default stress: vredeliewend/-e + vreemde fre@md@ // vreemde/s/vreemdeling + vreesaan (ja fr%e@s?%A:n // fix stress: vreesaanjaend/-e/vreesaanjagend/-e + vriendi (n frind'I // vriendin/vriendinne/vriendinnetjies + vrot (eier frOt_ // fix stress, o sound, stress: vroteier/-speletjie + vrygewig freIx2'e@v@x2 // vrygewig/-e|-heid + vry (messel fr%eI // move default stress: Vrymesselaar and compounds + vry (moed fr%eI // move default stress: vrymoedig/-e/-heid + vry (posti fr%eI // move default stress: vrypostig/-e/-heid + vry (wil fr%eI // vrywillig/-lik|-heid + vuldig f'Wld@x2 // sorgvuldig/veelvuldig/vermenigvuldig and variants + _) vul (gaat f%Wl // move default stress: Vulgaat and compounds + vul (ka f%Wl // move default stress: vulkaan/vulkane/vulkanies + vy (andig f%eI // move default stress: vyandig/-e/-heid + vér f&:r // fix e sound: ver when stressed + +.group ve @) ve (_ _^_EN //words ending in ve is English veel (duid f%e@l // move default stress: veelduidig/-e/veelduidend/-e veel (jar f%e@l // move default stress: veeljarig and derivatives @@ -4526,6 +4797,9 @@ ve (l f& // maagvel, stress on 1st slb @) vel (A fe@l // aanbeveling/aanbevelingsbrief + veld (C f< // fix d sound: veldreuk/-radio/-rantsoen, etc. + veld (eks f<_ // fix d sound, pause: veldekskursie/-ekspedisie/-s + veld (o f<_ // fix d sound, pause: veldorgideë/-opsigter/-oppervlakte/-opname, etc. vele f'e@l@ ven (detta v%En // fix stress and v sound: vendatta and compounds ven (dusie f@n // fix stress and e sound: vendusie and compounds @@ -4535,6 +4809,7 @@ ven (yn f@n // venyn/venynig ver f@r veranda v@randa // fix stress and e sound: veranda and compounds + verbena v@rbe@n%a // fix v sound: verbena/-s and compounds verby f@rbeI // fix stress: verbykomkans/verbykomslag, etc. vere (sto fe@r@ // avoid ver prefix: verestoffer/-s and compounds verversing f@rf'&rs@N //verversing and compounds @@ -4546,15 +4821,6 @@ veter (K fe@t@r // (skoen)veter/-s, etc. _) veto (reg fe@t%u // fix o sound: vetoreg/-te _) veto (stem fe@t%u // fix o sound: vetostem/-me - vi (o f%i // move default stress: viool and compounds/viole - vio (letK f%i%u // move default stress: violet/-te/-kleurige, etc. - _) vi (ra v%i // fix stress and v sound: e - _) vi (ri v@ // fix stress and v and i sounds: viriel/-eviriliteit - virtu v@rtS%y //virtueel virtuose etc. fix v and t sounds and assure lack of stress - viru (K virW // fix v sound: virus/-se and many compounds - vitri (oel f%itr%i // fix stress and v sound: (blou/groen/koper/sink)vitrioel - _) vitro (_ vitr%u // fix v and i sounds: in-vitro-bevrugting, etc. - viëtna (me vj%Etn%a // fix stress and v and vowel sounds: Viëtnamees/-nese ver (kyker f'&:r //verkyker and compounds _) ver (@P3 f@r @C) ver (_ f&:r // fix e sound in compounds ending in -ver @@ -4565,6 +4831,7 @@ ver (baal v%&r // fix v and e sounds and stress: (nie)verbaal ver (balA v%&r // fix v and e sounds and stress: (nie)verbale/verbaliseer vere (b fe@r@ // ver- not prefix: verebed/-bedryf/-bedekking + vere (do fe@r@ // ver not prefix: veredons/veredos vere (h fe@r@ // ver- not prefix: verehoed/-e/-ens vere (k fe@r@ // ver- not prefix: verekombers/-kuif/-kussing vere (m fe@r@ // ver- not prefix: verematras/-se/-sie @@ -4579,12 +4846,14 @@ ver (reik f&:r // fix stress and e sound: verreikend/-e @) vers (_ f&rs // teksvers/slotvers/kindervers and similar vers (album f&:rs_ // fix e sound: versalbum/-s + _) vers (b f&rs // fix e sound: versbundel/-bou/-boek @) vers (e_ f&rs // plurals of words like the above _) versf f''&rsf // fix stress and e sound: versfragment/-e ver (sie_ f&:r //words ending in versie ver (sies_ f&:r //words ending in versies vers (panor f&:rs // fix stress and e sound: verspanorama/-s ver (spring f''&:r // fix stress and e sound: verspring/-er/-kompetisie + vers (v f&rs // fix e sound: versvorm/versvoete verf (i f@rf //verfilm and compounds ver (flenC f@r // verflenter and derivatives/verflens; see rule: verf (C f&rf ver (fris f@r // verfris and derivatives; see rule: verf (C f&rf @@ -4592,7 +4861,7 @@ verf (@ f&rf // verfkwas/-voorraad/-emmer and similar _) verf (lou f@rf // verflou/-ing _) verf (o f@rf // verfoei(lik)/verfomfaai/verfoes, etc.; see rule: verf - verf (rom f@rf // verfrommel/-de/-ing; see rule: verf + verf (rom f@rf // verfrommel/-de/-ing; see rule: verf verf f&rf _) vergesog f'&:r;x2@sOx2 verifi (@ v%Er%if%i // fix stress, v and e sounds: (ge)verifieer/verifikasie @@ -4603,7 +4872,8 @@ C) verse (_ f&rs@ KA) verse (_ v'&rs@ versifi (C v%&rs%if%i // fix stress and v and e sounds: (di)versifiseer/-sering/-kasie and compounds - vers (r f&rs // fix stress and e sound: versreël/-rym/-ritme + vers (kalC f&:rs // fix stress and e sound: verskalf/verskalwers/verskalfie + vers (r f&rs // fix stress and e sound: versreël/-rym/-ritme _) veronge (@P7 f@r'O:Nx2@ verbete f@rb'e@t@ // verbete/verbetenheid @) verster (k f@rst&r // fix e sound: (geluid/hart/klank/senu/toon)versterker @@ -4615,31 +4885,8 @@ verwer (_ f&rv@r // fix stress and 1st e sound: (huis/spuit/verwer verwers f&rv@rs // fix stress and 1st e sound: verwers and compounds verwery f&rv@r%eI // fix stress and e sounds: verwery and compounds like huisverwery - vi (brA v%i // fix v and i sounds: vibrasie/vibreer - vi (cto@ v%i // fix v and i sounds: victoriaans/-e - video vidiu //video and compounds - vier (kantig f%i:r // move default stress: vierkantig/-e vs. vierkant - villa vIla // fix v sound: villa/-s - ville _^_EN - @ie) vis (_ f@s // fix stress: jellie/kerrievis - vis (A fIs // visarend/walvisolie - vise (K f'isi // visevoorsitter/visesekretaris/vise-president - ad) vis (e@ fis' // v and i sounds: adviseer/adviserend/-e - A) vis (asie vis // improvisasie - A) vis (e@ vis' // v and i sounds: improviseer/reviseer/improviserend - visen (te f@s@n // fix vowel sounds: visenteer/-tering and compounds - vis (ie vis // v and i sounds: visie/televisie - K) vis (ier f@s // fix v and i sounds: visier/-e/kanonvisier, etc. - visi (oen v%is%i // fix stress and v sound: visioen/-e and compounds - visite f@sit@ // fix stress and vowel sounds: visite/-kaartjie/-s - vita (mi v%it%a // move default stress: vitamine/-s/vitamientablet, etc. - vis (uA v%iZ //visuele, visueel etc. - vis (um vis // v and i sounds: visum - _) vasge (@P5 f'asx2@ - vla (CAA flA: // fix stress and a sound: vlakoekie/-poeier/-roomys/-sous - vlam (oo flam_ // fix a sound: vlamoond/-oorlog - vlieë (nier fl%i@ // move default stress: vlieënier and compounds +.group vo vodka vOtka // fix v sound and a sound in compounds: vodka/-bottel, etc. @) voerig f'ur@x2 // breedvoerig/uitvoeriger vo (ka f%u // fix stress and o sound: vokaal/vokale and compounds @@ -4685,34 +4932,20 @@ voor (sie f%o@r // move default stress: voorsien/-ing voorskrifteli (k f%o@rskrIft@l@ // move default stress: voorskriftelik/-e/-heid voorspe (lK fo@rsp'& // voorspel/voorspelling/voorspelbaar/onvoorspelbaar + voor (spoedi f%o@r // move default stress: voorspoedig/-e voor (sk fo@r // voorskiet/voorskot/voorskrif/voorskryf voorstedeli (k f%o@rste@d@l@ // move default stress: voorstedelik/-e vs voorstede + voor (trap fo@r // restore default stress: voortrap/-pe/-pies voort (duren f%o@r_ // fix stress and drop t: voortdurend/-e voor (trek fo@r // voortrek/voortrekker and compounds voort (v@@ f%o@rt // voortvarend/voortvlugtige _) vooruit fo@r_'Yyt // vooruit/vooruitsig/vooruitbeplanning vooruit (strew fo@rYyt' // change stress - voorwaard (_ f%o@rvA:rd // stress: (on)voorwaardelik + voorwaarde (_ f%o@rvA:rd@ // stress: (on)voorwaardelik + voorwaarde (_N fo@rvA:rd@ // fix stress: voorwaarde/-s vor (_ _^_EN //words ending in vor is English vorm fOr@m vorsti (n fOrst'I // fix stress: vorstin/-ne/-netjie and compounds - vrede fre@d@ // fix e sound: tevredegestel/tevredener/vredemaker - vrede (liew fr%e@d@ // move default stress: vredeliewend/-e - vreemde fre@md@ // vreemde/s/vreemdeling - vreesaan (ja fr%e@s?%A:n // fix stress: vreesaanjaend/-e/vreesaanjagend/-e - vriendi (n frind'I // vriendin/vriendinne/vriendinnetjies - vrot (eier frOt_ // fix stress, o sound, stress: vroteier/-speletjie - vrygewig freIx2'e@v@x2 // vrygewig/-e|-heid - vry (messel fr%eI // move default stress: Vrymesselaar and compounds - vry (moed fr%eI // move default stress: vrymoedig/-e/-heid - vry (posti fr%eI // move default stress: vrypostig/-e/-heid - vry (wil fr%eI // vrywillig/-lik|-heid - vuldig f'Wld@x2 // sorgvuldig/veelvuldig/vermenigvuldig and variants - _) vul (gaat f%Wl // move default stress: Vulgaat and compounds - vul (ka f%Wl // move default stress: vulkaan/vulkane/vulkanies - vy (andig f%eI // move default stress: vyandig/-e/-heid - vér f&:r // fix e sound: ver when stressed - .group w @@ -4739,9 +4972,9 @@ s) w (art w // fix w sound in compounds like donderswart &s) w (eefs v // fix w sound: compounds like -sweefsel/tuisweefstof, etc. @s) w (enn v // fix w sound: beurs-/groeps-/klas-/naas-/pryswenner/-wennende - _) web vEb //webadres/se, webarea etc. AAs) w (enk v // fix w sound: kombuis-/nuus-/sweiswenk/-e plaas) w (erC v // fix w sound: plaaswerf/-werwe + s) w (oeling v // fix w sound: koors-/geesteswoelinge s) w (ou v // fix w sound: bamboeswoud/keerkringswoud and similar s) w (r v // fix w sound: skeepswrak/sielswroeging/aardswreedheid wreed (a vre@t_ // fix d sound and insert short pause: wreedaard/-s @@ -4770,34 +5003,9 @@ Cut) w v // fix w sound: geskutwerf/stutwal/-le out) w v // houtwerk/soutwater and similar yd) w v // fix w sound: sluittydwerk/(wa)wydwakker - weder (va v%e@d@r // move default stress: wedervaar/wedervare/wedervaring/-e/-s - wee (moedi v%e@ // move default stress: weemoedig/-e/-heid - weer (barst v%e@r // move default stress: weerbarstig/-e/-heid C) w (eerder v // fix w sound: insek-/muskiet-/reuk-/sweetweerder and similar s) w (eerder w // but: eed-/geesbe-/saamsweerder and similar - weer (lê v%e@r // move default stress - weer (leg w%e@r // move default stress: (on)weerlegbaar - weer (strew v%e@r // move default stress: weerstrewig/-e/-heid - @) wees (_ ve@s // fix w sound: siekwees/volkwees - @) weg (_ v&x2 // blindweg/botweg and many similar - spoor) weg v&x2 // fix e sound: spoorwegaanleg/-aansluiting/-amptenaar/-eiendom/-inkomste/-ongeluk... - _) wegge (C@P5 v'&x2@ // prefix: weggeja and similar - K) weg (o v&x2_ // fix e sound: gal-/lugwegobstruksie/snelwegoprit/wegoefen... - weife (l veIf@ // fix e sound: weifelloos/-lose/-loosheid - _) weke (C ve@k@ // fix 2nd e sound: wekelang/-e - welbehaaglik v%&lb@hA:x2l@k // move default stress: welbehaaglik/-e/-er/-ste - _) wel (edel v%&l_ // fix e sound and stress, insert pause: weledel/-e - welf (_ v&lf // fix e sound: omwelf/oorwelf - wel (skape v%&l // move default stress: welskape/-nheid - wel (spreken v%&l // move default stress: welsprekend/-e luk) w (enK v // fix w sound: gelukwens(brief...)/gelukwensing, etc. - @) wendig v'End@x2 // inwendig/noodwendig/uitwendig - &) wene (_ v@n@ // fix penultimate e sound: afgestorwene/-s/ingeskrewene/verdorwene/verhewene - A) wer (AA v@r // fix e sound: beyweraar/keweruitroeiing/nyweraar/oewereienaar - ge) were ve@r@ // fix e sound in compounds ending in gewere - werk (stelli v%&rk // fix stress: bewerkstellig and derivatives - t) werk v&rk // fix w sound: geutwerk/gietwerk/netwerk - werwel v&rv@l // fix w and 2nd e sound: werwel and many compounds w (ese_ v //words ending in wese wed (ren vEt // fix e and d sounds: (perde)wedren and other compounds @C) w (eë v // fix w sound: duikweë/staatsweë/uitweë, etc. @@ -4820,13 +5028,15 @@ C) wag (K vax2 // fix w sound: bokwagter/skildwag and compounds/veldwagter k) wagga wax2a // fix w sound: kwagga/bergkwagga, etc. wal (kure v%al // move default stress: Walkure/-s + @k) w (alm v // fix w sound: drank-/tabakwalm/-s wange (drag vanx2@ // (jeug)wangedrag and similar wankel (moed v%aNk@l // move default stress: wankelmoedig/-e/-heid wanordeli (k v%an_Ord@l@ // move default stress: wanordelik/-e/-heid wan (stalt v%an // move default stress: wanstaltig/-e/-heid wan (trouig v%an // move default stress: wantrouig/-e wapen vA:p@n // fix problems with compounds and derivatives of wapen: ontwapening/wapengeweld -//wapenopleiding + t) ware (K vA:r@ // fix w sound: toilet-/genot-/gietware + wasag (tig vas_,ax2 // fix a sound, stress, pause: wasagtig/-e/-heid @k) ware vA:r@ // breekware/blikware/lakware @s) ware vA:r@ // kruideniersware/bronsware/glasware/kombuisware bes) ware wA:r@ // geloofsbesware/gewetensbesware @@ -4838,35 +5048,13 @@ wa (vol vA: // long a sound: (krui)wavol, etc. wa (vrag vA: // long a sound: (bok-/krui)wavrag/-te _) wa (wy vA: // fix stress and a sound: // wawyd/wawydwakker, etc. - weer (kaats v%e@r // move default stress: weerkaats/-in - @) wekkend v'Ek@nt // stress on wekkend at end compounds - @) wekkende v'Ek@nd@ // stress on wekkende at end compounds - _) we (ll@@ v%& // wellewend/welluidend/wellustig, but wellig/wellus - _) wel (r v%&l // move default stress: (on)welriekend - _) wel (v v%&l // stress (on)welvoeglik/-e/-heid/welvarend - wel (vaart v&l // restore default stress - wel (wil v%&l // move default stress: welwillend/-e - _) wen (aC vEn? // wenas/wenakker/opwenaksie - ne) wens v@ns // newens/benewens/hierbenewens/daarbenewens - @C) we (tK vE // krygswet/verdedigingswetgewing AC) w (aaier v // fix w sound: blaas-/bamboes-/dakwaaier and similar + k) waar vA:r // fix w sound: eerlikwaar/waarlikwaar/werklikwaar waardeer vard'e@r // waardeer/waardeerder waarder (@ vard'e@r // waarderend/e/waardering &) waardig v'A:rd@x2 // stress on -waardig: merkwaardig/besienswaardigheid, etc. waar (neemba v%A:r // move default stress: waarneembaar/-bare C) waarts vA:rts // fix w sound: dakwaarts/huiswaarts/kerkwaarts/noordwaarts/weswaarts - s) wed (C vEt // toetswedstryd/tenniswedstryd/afloswedloop - @) wed (str vEt // fix e sound: buite/foto/rugbywedstryd - s) wedd (@ vEd // beroepswedder - wedywer vEteIv@r // pronunc. of d and e-sound in derivatives - weer (hou v%e@r // exception to default stress rule - _) weer (sp ve@r' // weerspreek/weersprekende/weerspreking/weerspannig/weerspieë«l - weer (staan v%e@r // weerstaan/onweerstaanbaar - @C) wering (_ ve@r@N //borswering, diefwering etc. - - werp v&rp - @) wesigheid v'e@s@x2eIt // aanwesigheid/afwesigheid - weten (C ve@t@n // wetenskap/-lik/-e and compounds/compounds of geweten- wêrel (djie v&:r@l // fix -djie in wêreldjie and compounds wêrelde (_ v&:r@ld@ // wêrelde and words ending in wêrelde wêreld (@P6 v'&:r@lt_ // d sound and short break: wêreldoorlog/-reis and similar @@ -4876,6 +5064,7 @@ _) wig vIx2 // fix stress: gewig/-tig/-e wiking vikiN // fix i sounds wilhel (mi v@lh%&l // move default stress: Wilhelmina/-straat + wille (mi v@l@ // move default stress: Willemien/-tjie/Willemina _) wind (a vInt_ // fix d sound, insert pause: windaf(dryfmiddel)/as _) wind (o vInt_ // fix d sound, insert pause: windop/windorrel, etc. wispel (tu v@sp@l // move default stress: wispelturig/-e/-heid @@ -4892,7 +5081,7 @@ @) w (_N _^_EN @) werste (_ vIrst@ k) w (oA v // fix w sound: dankwoord/werkwoord/skoonmaakwoede/spreekwoord - @C) w (oCC v // fix w sound: kubiekwortel/steekwond/onafhanklikwording/republiekwording/varkwors + @C) w (oCK v // fix w sound: kubiekwortel/steekwond/onafhanklikwording/republiekwording/varkwors @C) woning vo@n@N // fix w sound in many compounds ending in -woning woe (styn v%u // move default stress: woestyn and compounds wolke vOlk@ // nimbuswolke/wolkekrabber @@ -4902,12 +5091,67 @@ @t) w (y v // fix w sound: granaatwyn/kieswetwysiging/krotwyk/straatwys(ie) @C) w (yd v // fix w sound: kerkwyding/landswyd/reikwydte/republiekwyd/wêreldwyd @t) wyfel weIf@l // fix w sound: gewetenstwyfel and similar + &s) wyk veIk // fix w sound: diakenswyk/dorpswyk/koshuiswyk/-e and similar compounds wynkel (der veInk&l // split n/k, fix e sound: (brande)wynkelder/-s w (ys v //padwyser and many others with wyser in compounds wysge (rig v%eIsx2e@ // fix stress and e sound: wysgerig/-e C) w (êreld v // fix w sound: arbeids-/bees-/bedryfs-/beroepswêreld and similar nt) w (A v +.group we + _) web vEb //webadres/se, webarea etc. + As) weer (_ ve@r // fix w sound: kusweer/ysweer, etc. + weder (va v%e@d@r // move default stress: wedervaar/wedervare/wedervaring/-e/-s + wee (moedi v%e@ // move default stress: weemoedig/-e/-heid + weer (barst v%e@r // move default stress: weerbarstig/-e/-heid + weer (lê v%e@r // move default stress + weer (leg v%e@r // move default stress: (on)weerlegbaar + weer (strew v%e@r // move default stress: weerstrewig/-e/-heid + @) wees (_ ve@s // fix w sound: siekwees/volkwees + weet (gierig v%e@t // move default stress: weetgierig/-e/-heid + @) weg (_ v&x2 // blindweg/botweg and many similar + spoor) weg v&x2 // fix e sound: spoorwegaanleg/-aansluiting/-amptenaar/-eiendom/-inkomste/-ongeluk... + _) wegge (C@P5 v'&x2@ // prefix: weggeja and similar + K) weg (o v&x2_ // fix e sound: gal-/lugwegobstruksie/snelwegoprit/wegoefen... + weife (l veIf@ // fix e sound: weifelloos/-lose/-loosheid + _) weke (C ve@k@ // fix 2nd e sound: wekelang/-e + welbehaaglik v%&lb@hA:x2l@k // move default stress: welbehaaglik/-e/-er/-ste + _) wel (edel v%&l_ // fix e sound and stress, insert pause: weledel/-e + welf (_ v&lf // fix e sound: omwelf/oorwelf + wel (skape v%&l // move default stress: welskape/-nheid + wel (spreken v%&l // move default stress: welsprekend/-e + @) wendig v'End@x2 // inwendig/noodwendig/uitwendig + &) wene (_ v@n@ // fix penultimate e sound: afgestorwene/-s/ingeskrewene/verdorwene/verhewene + fees) wens ve~ns // fix w and e sounds: kersfeeswens/-e + A) wer (AA v@r // fix e sound: beyweraar/keweruitroeiing/nyweraar/oewereienaar + ge) were ve@r@ // fix e sound in compounds ending in gewere + werk (stelli v%&rk // fix stress: bewerkstellig and derivatives + t) werk v&rk // fix w sound: geutwerk/gietwerk/netwerk + werwel v&rv@l // fix w and 2nd e sound: werwel and many compounds + @) wekkend v'Ek@nt // stress on wekkend at end compounds + weer (kaats v%e@r // move default stress: weerkaats/-in + @) wekkende v'Ek@nd@ // stress on wekkende at end compounds + _) we (ll@@ v%& // wellewend/welluidend/wellustig, but wellig/wellus + _) wel (r v%&l // move default stress: (on)welriekend + _) wel (v v%&l // stress (on)welvoeglik/-e/-heid/welvarend + wel (vaart v&l // restore default stress + wel (wil v%&l // move default stress: welwillend/-e + _) wen (aC vEn? // wenas/wenakker/opwenaksie + ne) wens v@ns // newens/benewens/hierbenewens/daarbenewens + @C) we (tK vE // krygswet/verdedigingswetgewing + s) wed (C vEt // toetswedstryd/tenniswedstryd/afloswedloop + @) wed (str vEt // fix e sound: buite/foto/rugbywedstryd + s) wedd (@ vEd // beroepswedder + wedywer vEteIv@r // pronunc. of d and e-sound in derivatives + weer (hou v%e@r // exception to default stress rule + _) weer (sp ve@r' // weerspreek/weersprekende/weerspreking/weerspannig/weerspieë«l + weer (staan v%e@r // weerstaan/onweerstaanbaar + @C) wering (_ ve@r@N //borswering, diefwering etc. + werp v&rp + @) wesigheid v'e@s@x2eIt // aanwesigheid/afwesigheid + weten (C ve@t@n // wetenskap/-lik/-e and compounds/compounds of geweten- + + .group x x ks x (x @@ -4917,6 +5161,7 @@ .group y y eI %C) y (_ _^_EN // English: Betty/Eddy/Harry/Molly/Penny/Tommy + skapp) y (_ %eI // compounds like: handels-/versekerings-/verskepingsmaatskappy york j'O:k //new-yorkse and may be others ysterre (lin eIst@re@ // fix e sound: ysterreling/-s diff --git a/dictsource/cs_list b/dictsource/cs_list index 15439c9..47ec618 100644 --- a/dictsource/cs_list +++ b/dictsource/cs_list @@ -185,25 +185,25 @@ si $u // Prepositions -// the $alt2 prepositions should also be included in cs_rules +// the $combine prepositions should also be included in cs_rules // as prefixes, so "na-" (for example) is removed from the combined // word before the pronuciation of the main word is determined. -skrz $u $brk $alt2 // though +skrz $u $brk $combine // though skrze $u $pause // through -pro $u $pause $alt2 // for -na $u $brk $alt2 // to/for/on -o $u $pause $alt2 // around/about -při $u $pause $alt2 // into,in,around +pro $u $pause $combine // for +na $u $brk $combine // to/for/on +o $u $pause $combine // around/about +při $u $pause $combine // into,in,around v v_ $brk // in -po $u $pause $alt2 // after,around -za $u $pause $alt2 // behind -před $u $pause $alt2 // in front of +po $u $pause $combine // after,around +za $u $pause $combine // behind +před $u $pause $combine // in front of mezi $pause // between -pod $u $pause $alt2 // below +pod $u $pause $combine // below pode $u $pause // below s s_ $pause // with -nad $u $pause $alt2 // above +nad $u $pause $combine // above nade $u $pause // above k $brk // towards @@ -213,16 +213,16 @@ naproti $pause // opposite během $pause // during podle $pause // according to -dle $u $pause $alt2 // along +dle $u $pause $combine // along vedle $pause // beside kolem $pause // around okolo $pause // around -do $u $brk $alt2 // to -od $u $brk $alt2 // away from +do $u $brk $combine // to +od $u $brk $combine // away from ode $u $brk // away from z s_ $brk // out of/from -ze $u $brk $alt2 // out of/from -bez $pause $alt2 // without +ze $u $brk $combine // out of/from +bez $pause $combine // without beze $pause // without místo $pause // instead of diff --git a/dictsource/da_list b/dictsource/da_list index 1deffb6..eceaf4a 100755 --- a/dictsource/da_list +++ b/dictsource/da_list @@ -1,4 +1,4 @@ - + // This file is UTF8 encoded // Spelling-to-phoneme words for Danish @@ -27,9 +27,9 @@ _ac2 dV@lakj'u:t _brv br'i:v _ced s@d'ila _cir s'3:kVmfl,Eks -_dia 'umlaut +_dia 'omlyd _dot wiDd'0tabVv -_grv gr'a:v +_grv aks'aN gr'a:v _hac h'atS,Ek _mcn m'akr,0n _ogo '0g0n,Ek @@ -58,20 +58,32 @@ _#32 blank @ sn,&:bel'&: / sgRVsdrai $max3 \ 'Vmvendsgr,VsdRai $max3 -_, koma: +_, k'oma: _; se:mi:ko:lVn -_: ko:lVn -_. pun^tum +_: k'o:lVn +_. puNtum _? spWrgsmVlstajn _! udRVbstejn _- binnesdrai -__ bOndsdrai +__ b'Onsdrai & ou £ pun? € euro © kopyrajt +÷ divid'eReD meD = l'imeD # n'OmV +§ paragr'af +× g'aNe +ª feminin Wdin'al +º m'askulin Wdin'al +® registr'eret varemerke +¼ en kvart +¢ s'ents +¥ j'en: +µ my +' apostr'of + // numbers _0 'nOl _1 'e:n @@ -130,6 +142,8 @@ fordi fVdi $pause // because når nVr $pause // while som $u+ $pause // who (relative) der dA $u+ $pause +hvor v'Vr // where +hvorfor vVf'Vr // why // prepositions på pO $u+ @@ -141,7 +155,7 @@ med $u+ // with af a? $u+ // of at at $u+ // to hos $u+ // at - +som $u sVm // which / that // pronouns @@ -169,17 +183,17 @@ disse $u+ // these // possessive pronouns Min min $u Mit mit $u -Mine min@ $u -din di?n -dit di?t $u -dine $u +Mine m'in@ +din d'in +dit d'it $u +dine d'ine deres $u hans $u hendes $u dens $u dets $u -sin si?n -sit si?t $u +sin s'in +sit s'it $u sine $u vor $u vort $u @@ -213,6 +227,7 @@ k kO: l El m Em n En +o o p pe: q ku: r Er @@ -227,13 +242,23 @@ z sEt // exceptions +Alene al'en@ // alone egen a:j@n eget a:j@D egne a:in@ -igen igen enter entV -også Vs@ -sig sAi // oneself -sagde sa@ // said +ide id'e // idea +idé id'e // idea +igen igen Ny ny // new +også Vs@ // also +havde h'aD@ // had +idet id'e // in so far as +sagde sa@ // said +sig sAi // oneself +slags sl'ags // sort, type +tre tr'e // the number 3 + + + diff --git a/dictsource/da_rules b/dictsource/da_rules index 9ea836b..6c0ab8f 100755 --- a/dictsource/da_rules +++ b/dictsource/da_rules @@ -1,7 +1,5 @@ - - -// This file is UTF8 encoded - + +// This file is UTF8 encoded // Spelling-to-phoneme rules for Danish @@ -15,259 +13,528 @@ - - .group a - a a? - C) a (C a - a (tion a - a (CK a - a (nK a - a (r+ A: - r) a A: - r) a (CK A - ai (K aj - - au (K au - - aw (K aw - ay (K aj - aa O: - r) aa O: - - + a a? + C) a (C a + a (tion a + a (CK a + a (g a_ + a (nK a + a (r+ A: + r) a A: + r) a (CK A + ai (K aj + + au (K au + ch) au (f o + nive) au o + an (cienn aN +restaur) ant aN + rest) au (r o + aw (K aw + ay (K aj + aa O: + r) aa O: + + +.group af + k) af (fe 'af + l) af (fe 'af + t) af (fe af .group b - b b - bb b - _) be (@P2 be - - _) be (d bE - + b b + bb b + _) be (@P2 be + _) be (d bE + b (il 'b .group c - c k + c k - c (e s - c (i s - ch S - e) c (h k - c (ha S - cc ks - c (yk s - fa) c (ad s - fa) c (on s + c (e s + c (i s + c (k + ch S + mi) ch (a k S + ch (r k + e) c (h k + c (ha S + cc ks + c (yk s + fa) c (ad s + fa) c (on s .group d - d d - dd D - A) d (_ D - A) d D - A) d (A D - A) d (i d - A) d (ig D - A) d (isk D - A) d (es D - A) d (et D - &) de (_ D@ - i) d d - i) d (e d - l) d (+ - æ) d d - An) d (rA d - in) d (C - in) d (ue d - ø) d (C D - ø) d (t - å) d (an d - d (CA D - d (t ? - be) d (st : - a) d (s - i) d (s - r) d (K - in) d - ir) d (_ d - or) d (en - nor) d - pu) d (s - ur) d (e d - ver) d (en d + d d + a) d (d D + A) d (_ D + A) d D + A) d (A D + A) d (C D + A) d (i d + A) d (ig D + A) d (isk D + A) d (es D + A) d (et D + a) d (g D + a) d (k D + a) d (res d + A) de (_ D@ + d) d d + e) d (t + i) d (e d + i) d (ræt d + i) d (t + o) d (a d + o) d (i d + u) d D + u) d (A D + u) d (er D + u) d (C D + _y) d (re D + ø) d (C D + ø) d (t + å) d (an d + æ) d D + Co) d (C D + Co) d (A D + al) d (er + al) d (et + al) d (o d + al) d (rig d + an) d (re d + An) d (rA d + An) d (re d + be) d (A d + be) d (es D + bu) d (get + bu) d (t + ej) d (e d + el) d (i d + go) d (s + go) d (t_ + he) dd (e D + in) d (C + in) d (eks d + in) d (i d + in) d (u d + in) d (uC d + in) d (ue d + la) d (t + le) d (t + li) d (e D + li) d (s D + lu) d (ere d + ma) d (ras d + me) d (b D + me) d (l D + mi) d (l D + ma) d (d D + me) d (d D + mi) dd (a d + mi) dd (el D + mo) d (C D + mo) d (al 'd + mo) d (el 'd + mo) d (ul 'd + mu) dd (er D + pu) d (e D + ne) d (C D + or) d (el d + or) d (en d + or) d (ne d + or) d (ning d + or) d (re d + or) d (ret + pu) d (s + pæ) d (a d + ro) d (s + ry) d (ni D + re) d (a d + re) d (i d + ri) d (e D + rø) dd (er D + si) d (e D + si) dd (e D + si) d (eA D + si) d (eC D + ti) d (e D + ti) d (s D + ud) d d + ur) d (e d + ve) d (h D + ve) d (t D + vi) d (e D + vi) d (er D + yl) d (er + ær) d (es d + æl) d (e + æl) d (i d + æl) d (re d + æn) d (ri d + æn) d (re d + æn) d (re d + bol) d d + kla) dd (e D + kry) dd (er D + dd (et D + bla) d (r D + dar) d d + gui) de d + gui) de (n de + gui) de (r de + gui) de (t de + kor) d d + kru) d (t + kry) d (s + mad) d (A D + plu) d (se + ral) d (e + sag) d (e + sed) d (el D + sku) d (t + smu) d (s + snu) d (e D + Aor) d (ret d + kre) d (s + tro) d (s + d (CA d + d (t = + be) d (r D + be) d (st : + bol) d d + a) d (s + i) d (s + r) d (K + ar) d (K d + or) d (re d + in) d + ir) d (_ d + or) d (en + aar) d (K + klo) d (s + nor) d (en d + pro) d (u d + pu) d (s + ver) d (en d + sli) d (so D + sli) d (s + skræ) dd (e D + kandi) d (at 'd +tilfre) d (s .group e - e e - r) e (j a - e (rK & - b) e (ds E - d) e (_ @ - ed) e (- @D - g) e (C e - g) e (js aj - r) e V% - @st) e (n e: - carst) e (n @ - karst) e (n @ - Kr) e (ag e - r) e (l e - r) e (CK e - r) e (L01 Aj - m) eg aj - n) e (K e - ea i: - ee e: - eg (e e@ - r) eg (n A:j - r) e (d e - r) e (v e - ei A:j - ej (+ ai - ffic) e - ffic) e (r e - &) e (_ @: - &r) e (_ e - - &) ede (_ @D@ - &r) ede (_ 3D@ - &r) en (_ 3n - &r) en (s_ 3n - &r) et (_ 3D - &) er (_ 3 - &) en (_ @-n - &) ene (_ @-n@ - &) ende (_ @-nn@ - &) eren (_ 3r3n - &) eren (s_ 3r3n - &) es (_ @s - &) et (_ @D - ir) e (n 'e - yr) e (n 'e - - - - - + e e + ee e: + r) e (j a + e (rK & + b) e (ds E + d) e (_ @ + ed) e (- @ + g) e (C e + g) e (js aj + em) e (nt a + cem) e (nt e + elem) e (nt e + plem) e (nter e + em) e (ntal e + glem) e (nt a + glem) e (ntal e + ni) e + ni) e (n e + bur) eau 'o + niv) eau 'o + ani) e (l e + lini) e e + r) e (_ V% + _r) e e V% + @st) e (n e: + budg) e (t 'E + carst) e (n @ + karst) e (n @ + Kr) e (ag e + @h) e (n 'e + p) e (ge a + p) e (gnin a + r) e (l e + r) e (kt aj + r) e (CK e + eg (et aj + p) eg (e aj + m) eg (a eg + m) eg aj + r) ej (s aj + r) eg (er eg + r) eg (n aj + n) e (K e + t) eg (n aj + eg (e 'e: + en (gage aN + en (tre aN + c) en (t en + c) en (tA en + c) en (tC en + p) en (sion aN + r) en (ce aN + r) eg (n A:j + r) e (d e + r) e (v e + tr) e e + tr) e (A e + ei A:j + ej (+ ai + v) ej (r 'e ai + ffic) e + ffic) e (r e + &r) e (_ V + &) ede (_ @D@ + &r) ede (_ 3D@ + &r) en (_ 3n + &r) en (ing 'en + for) en (ing 'en + &r) en (s_ 3n + &r) et (_ 3D + &) er (_ V + &) en (_ '@-n + &) ene (_ @-n@ + &) ende (_ @-nn@ + &) eren (_ 3r3n + &) eren (s_ 3r3n + &) es (_ @s + ucc) es 'e + &) et (_ @D + icha) e (l + ika) e (l + ir) e (n 'e + yr) e (n 'e + ompet) en (ce aN .group f - - f f - - ff f - _) for (@P3 f%V - _) for (um f%or - a) f (A u - a) f (C u - a) f (rik f - a) f (ten f - a) f (tes_ f - Ca) f (t f - ra) f (ik f - kra) f (t f + f f + ff f + _) for (&@P3 f%V + _) for (e f%V + _) for (um f%or + a) f (A u + a) f (C u + a) f (it f + a) f (on f + a) f (rik f + a) f (sted + a) f (ten f + a) f (tes_ f + Ca) f (t f + ga) f (fel f + gra) f ( f + gra) f (A f + gra) f (C f + ra) f (ik f + ra) f (fe f + kra) f (t f + sa) f (ar f + ska) f (f f + sta) f (e f .group g - g g - a) g (A w - a) g (C ?w - a) g (e - la) g (e - g) g g - e) g (e - n) g n^ - i) g (t g - i) g j - i) g (A - r) g (_ w - r) g (e w - ør) g (s - l) g (_ j - u) g g - u) g (e - u) g (l ? - u) g (t g - y) g (e j - y) g (A g - ø) g (e - ø) g (n - &e) g j - ba) g (e - da) g (e - rea) g (er g - aga) g (e S - aga) g (te g - arran) g (e S - eta) g (e S - a) g (A j - l) g (_ j - l) g (e j - l) g (s j - Ca) g (t k - o) g u - æda) g (og g' - no) g (e - no) g (le - - o) g (r g - o) g (n g - o) g (s u - o) g (st k - ø) g (_ j - ø) g (t g - lå) g (e u - vå) g (e u - vå) g (ne u - go) g = - lo) g = - ør) g w - a) g (K ? - _) ge (@P2 ge - - _) ge (nere Se - _) ge (nert Se - _) ge (nerel ge - _) ge (nera ge - ta) g (e + g g + g) g + g) g (e + g (ent g + &) g (r g + g (ård g + a) g (ent g + g (ment g + a) g (A w + a) g (C ?w + a) g (e + a) g (en g + a) g (i g + a) g (o g + a) g (urk g + g) g + e) g (e + e) g (o g + i) g (t g + i) g (t_ + i) g + i) g (A + i) g (a g + i) g (en g + i) g (ere g + i) g (i g + a) g (A j + l) g (_ j + l) g (e j + l) g (s j + n) g + n) gr Ngr + n) gæ gE + o) g (r g + o) g (n g + o) g (s u + r) g (_ w + r) g (e w + u) g g + u) g (e + u) g (l ? + u) g (t g + y) g (e j + y) g (A g + ø) g (e + ø) g (n + æ) g (e j + g (iv+ g // avoid letter "g" pronounced with phoneme S + Ca) g (en j + ha) g (l u + in) ge (niør Se + ki) gg (e g + la) g (C u + la) g (t g + la) gde e + li) g (ere + ra) g (_ w + ra) g (e w + sa) g (n u + ør) g (s + ur) g (A g + l) g (_ j + lA) g (a g + li) g + li) g (g g + mA) g (a g + nA) g (a g + ta) g (A u + ta) g (C u + &e) g j + an) g (å g + ba) g (e + da) g (e + ba) g (C u + ba) g (age g + ba) g (t g + ba) g (ta u + da) g (C u + da) g (s_ ? + fa) g (C u + fi) g (ur g + ga) g (e S + la) g (e + li) g (t + re) g (A g + re) g (i S + re) g (iA g + re) g (ist g + sa) g (a =g + sa) g (s ' + si) g (t g + va) g (n u + pli) g (t g + &ti) g + bor) g u + bud) g (et S + gti) g + hol) g (er g + jer) g (A w + jer) g (C w + rea) g (er g + aga) g (e S + aga) g (te g + arran) g (e S + eta) g (e S + gara) g (e S + onta) g (e S + redi) g (er g + reta) g (e +foreta) g (e + ru) g (_ + Ca) g (t k + o) g u + bo) g (C u + æda) g (og g' + no) g (e + no) g (le + nø) g j + re) g (e g + re) g (i g + bo) g (st k + ø) g (_ j + ø) g (t g + sal) g j + val) g j + lå) g (e u + navi) g (er g + vå) g (e u + vå) g (n u + vå) g (ne u + go) g = + lo) g = + lo) g (a g + lo) gg (e g + lo) g (i =g + _lo) g (i- S + lo) g (o =g + blo) g (s =g + _lo) g (_ g + _lo) g (g g + ør) g w + a) g (K ? + _) ge (@P2 ge + + _) ge (nere Se + _) ge (nert Se + _) ge (nerel ge + ge (nera ge + ge (nerer ge + ta) g (e + te) g (ori g + .group h - h h - h (j - h (v - A) h (K - t) h (en h + h h + h (j + hv v + A) h (K + t) h (en h .group i - i i: - i (CK i - ig (_ i - ige (_ i;i - i (nK i - i (nn e - i (mK e - l) i (e j - n) i (e i - - t) i (e j - - s) i (e j - - t) i (on // i ommitted because of sj - - s) i (on j + i i: + i (CK i + ig (_ i + ige (_ i;@ + iew j'u + i (nK i + i (nn e + i (mK e + k) i (C_ 'i + k) i (CC_ 'i + l) i (e j + n) i (e i + r) i (g i + s) i (e j + t) i (e j + t) i (on // i ommitted because of sj + t) i (øs + s) i (on j + des) ign ain + ingen) i (ør @@ -275,206 +542,282 @@ .group j - j j - j (aw dZ - j (ack dZ - j (ohn dZ - o) j (e S - a) j (o S + j j + j (aw dZ + j (ack dZ + j (ob dZ + j (ohn dZ + o) j (e S + a) j (o S .group k - k k - - kk k - - s) k g - - &) k g // after stressed vowel - - &) kk g - + k k + kk k + s) k g + pun) k (t N + run) k (en N + san) k (t N + &) k k // after stressed vowel + &) kk g .group l - l l - - ll l - - ld (K l - - &) ld (e_ l - - &) ld (ekk l - + l l + ll l + ld (K l + &) ld (e_ l + &) ld (ekk l + o) ld l + æ) ld (r ld + bo) ld ld + bo) ld (A ld + fo) ld l + he) ld l + he) ld (ig ld + ki) ld (A l + me) ld (el l + me) ld (ing l + no) ld l + so) ld (aC d + so) ld (at ld .group m - m m? - mm m - m (A 'm - - + m m? + mm m + m (A m + gour) met m'e +kompli) ment maN +kompli) ment (e ment + regle) ment (e ment .group n - n n - - nn n - nd (e n - nd (K n - nd (ow nd - n (k N - - n (g - + n n + nn n + nd (e n + nd (K n + nd (ow nd + nd (r nd + i) nd (eks nd + i) nd (ing n + u) nd ( n + bå) nd (A n + pu) n (kt + ru) n (ke + sa) n (kt + eku) nd nd + pag) n (e nj + ballo) n N + ræso) n N + sæso) n N + talo) n N + gleme) n (t N .group ng - - ng (a ng - ng (i ng - arra) ng n^S - - + ng (_ N + ng (e N + ng (s N + + a) ng (A ng + a) ng (C N + ng (a ng + ng (i ng + i) ng (s N + u) ng (e N + ba) ng (e N + fa) ng (e =N + fi) ng (er =N + fi) ng (re =N + fu) ng (er Ng + ga) ng (e N + la) ng (e N + li) ng (e N + læ) ng (e N + ma) ng N + ru) ng (e N + sa) ng (e N + se) ng (e N + ti) ng (e N + ti) ng (ent Ng + træ) ng (e N + arra) ng NS .group o - o o: - kr) o (C o - cr) o (C 'o - o (CK o - o (r O- - o (gK o - oo u - ou Vw - ov Vw - @) o (C V - _C) o (l 'V - _C) o (p 'V - _CC) o (p 'V - _CC) o (l 'V - _f) o (r 'V - l) o (kk V - p) o (li o - st) o (K 'o - ati) o (n 'o + o o: + kr) o (C o + cr) o (C 'o + g) ou (rm u + h) o (ld 'V + h) o (ved o + o (CK o + o (p 'V + o (r o + o (rdn o + m) o (rC V + o (gK o + b) oo (k u + l) oo (k u + ou Vw + ov Vv + @) o (C 'o + @@) o (C 'o + _C) o (l 'V + _C) o (p 'V + _CC) o (p 'V + _CC) o (l 'V + b) o (C 'o + ress) o (urc + sk) o (le 'o + _f) o (r V + _f) o (re 'V + l) o (f V + l) o (kk V + l) o (v 'V + l) o (ve O + p) o (li o + st) o (K 'o + ati) o (n 'o .group p - p p - - pp p - - &) p b - - &) pp b + p p + pp p + &) p b + &) pp b + p (sy .group q - q k + q k - qu kv + qu kv .group r - r r - b) r r - ø) r V: - A) r r - Ae) r V - &) rd (e_ r - &) rd (eKK r - bu) rd (eK rd - no) rd (eKK r - no) rd (isk rd - tu) rd (eK rd - ve) rd (eKK rd + r R + r (K r // not followed by a vowel + ø) r V: + Ae) r V + &) rd (e_ r + &) rd (eKK r + o) rd (en++ rd + o) rd (el++ rd + o) rd (rin d + bu) rd (eK rd + jo) rd (en++ r + no) rd (eKK r + no) rd (en++ r + no) rd (isk rd + tu) rd (eK rd + ve) rd (eKK rd .group s - s s - s (p s - s (C s - s (A s - s (ie s - s (ion S - - - - s (j s - - s (ch S - + s s + s (p s + s (C s + s (A s + s (ie s + s (ion S + s (j s + s (ch S + s) s +kompromi) s + succe) s ' .group t - t t - A) t (_ t: - th t - &) t t - - &) tt t - - &) th d - - t (ie t - - t (ion+ sj' - - + t t + A) t (_ t: + th th + &) t t + + &) tt t + &) th d +simpel) th (en th + t (ie t + t (ion+ sj' + t (iøs+ sj' + lek) t (i S + emen) t + cemen) t t +elemen) t t + emen) t (al t +glemen) t +glemen) t (al t + lemen) t (er t + poin) t + poin) t (e t .group u - u u - u (CK u - u (nK u - u (mK O - a) u (g u - l) u (k O? - l) u (kas u - m) u (k O? - comp) u (ter ju - r) u u - r) u (m O - r) u (nd O? - g) u (st O - r) u (s u + u u + u (CK u + u (nK u + u (mK O + a) u (g u + b) u (dget y + b) u (reau y + g) ui (de ai + g) u (st O + l) u (k O? + l) u (kas u + m) u (k O? + r) u u + r) u (m O + r) u (nd O? + r) u (s u + s) u (cc y + comp) u (ter ju + fris) u (r y + frit) u (r y + men) u y +proced) u (re y +proven) u y + resso) u (rs 'u .group v - v v - vv v - A) v (K w - a) v (n u - &A) v v - &r) v v - l) v (C - l) v (A - - + v v + vv v + A) v (K w + a) v (l u + a) v (n u + &A) v v + &r) v v + al) v (A v + el) v (C + el) v (A + el) v (e v + il) v (A v + ur) v v + hal) v .group w - w w + w w @@ -482,11 +825,11 @@ .group x - x gs + x gs - _) x s + _) x s - n) x s + n) x s @@ -494,59 +837,76 @@ .group y - y y: + y y: - r) y Y: - r) y (CK Y - y (CK Y- - y (nK Y - y (mK Y - d) y (_ i - b) y (A y - n) y (A y + r) y Y: + r) y (CK Y + y (CK Y- + y (nK Y + y (mK Y + d) y (_ i + b) y (A y + n) y (A y .group z - z s + z s - zz s + zz s .group æ - æ E? - æ (CK E: - l) æ E: - r) æ &: - r) æ (CK e - r) æ (L01 Aj - t) æ (C E: - v) æ E: + æ E + æ (CK E: + l) æ E: + r) æ E + r) æ (kk aj + r) æ (v e + r) æ (L01 Aj + r) æ (k Aj + t) æ (C E: + v) æ E: + pr) æ (ge E: + tr) æ E + tr) æ (k 'aj + tr) æ (kA E .group ø - ø W? - ø (CK W: - b) ø (g W - f) ø (r W: - h) ø (r W: - k) ø (r W: - l) ø (s W: - m) ø W: - r) ø W: - s) ø W: - ø (r w - r) ø (CK W: - øg Vj - øj Vj + ø W? + ø (CK W: + b) ø (g W + d) ø (r W + f) ø (r W: + g) ø (r @: + h) ø (j V + h) ø (r W: + k) ø (r W: + l) øg (n 'Vj + l) ø (s W: + m) ø W: + r) ø W: + s) ø W: + t) ø (r W + ø (r W + r) ø (CK W: + øg W + d) øg (n Vj + øj oj .group å - å O:? - å (CK V - å (r+ 0: - l) å (r V? + å O:? + å (CK V + å (r+ O: + l) å (r V .group - $ dVlar + $ dVlar + + + + + diff --git a/dictsource/de_list b/dictsource/de_list index 53bdf81..800eb45 100644 --- a/dictsource/de_list +++ b/dictsource/de_list @@ -23,9 +23,9 @@ _. pUnkt € OY*o: £ paUnd & Unt -@ kl'ame:*,af@ +@ kl'am3_,af@ ~ tIld@ -\ bEkslES +\ bakslaS ° g@-*A:t _, kOma @@ -34,45 +34,46 @@ _: d'Op@lp,UNkt _; St@-*'ICpUNkt __ ,Unt3St@-*'IC _- b'IndEst@-*,IC -_! 'aUs_|@-*,u:fe:ts,aIC@n -_? f@-*'Age:ts,aIC@n -_' 'apOst@-*,Of +_! 'aUs_|@-*,u:f@ts,aIC@n +_? f@-*'Ag@ts,aIC@n +_' ,apo:st@-*'Of _" tsi:t'A:t -_/ S@-*'Egst@-*IC +_/ S@-*'e:gSt@-*IC _( kl'am3||_|'aUf _) kl'am3||ts'u: _{ g@Sv'aIft@kl'am3||_|'aUf _} g@Sv'aIft@kl'am3||ts'u: _[ 'EkIg@kl'am3||_|'aUf -_] 'ECIg@kl'am3||ts'u: +_] 'EkIg@kl'am3||ts'u: _< klaIn3 -_> g@-*Ws3 +_> g@-*Y:s3 _` g@-*A:v -_^ sI*kUmflEks -_— g@d'ank@nSt@-*,IC +_^ tsI*kUmflEks +_— g@d'aNk@nSt@-*,IC -_#9 t,abu:l'Ato:* + +_#9 t,abu:l'A:to:3 _#32 l'e:*ts'aIC@n _?? zymb'o:l -_?A b'UxstA:b@ +_?A b'u:xstA:b@ _cap g@-*'o:s // accent names -_lig l'i:gat,u:* +_lig l'i:gat,u:3 _acu ak'u:t -_ac2 d'Op@l,aku:t -_brv b@-*'e:v@ -_ced tse:d'Il@ +_ac2 d'Op@lak,u:t +_brv b@-*'E:v@ +_ced se:d'i:j _cir ts'I*kUmflEks _dia 'UmlaUt _dot p'Unkt -_grv g@-*'AvIs -_hac h'atSe:k -_mcn m'ak@-*o:n -_ogo 'o:go:n,e:k -_rng k@-*'u:Ze:k -_stk S@-*'Egst@-*IC +_grv g@-*'A:vIs +_hac h'atSEk +_mcn m'A:k@-*On +_ogo 'o:gOn,Ek +_rng k@-*'o:wZEk +_stk S@-*'e:gst@-*IC _tld t'Ild@ æ $accent @@ -89,8 +90,8 @@ x Iks // Numbers //======== _0 'nUl -_1 _'aIn -_1a _'aIns +_1 _'aIns +_1a _'aIn _2 'tsvaI _3 'd@-*aI _4 'fi:* @@ -103,19 +104,19 @@ _10 'tse:n _11 '_Elf _12 'tsvWlf _13 'd@-*aItse:n -_14 'fi:*tse:n +_14 'fI*tse:n _15 'fynftse:n -_16 'zEktse:n +_16 'zECtse:n _17 'zi:btse:n -_18 '_axttse:n +_18 '_axtse:n _19 'nOYntse:n _2X 'tsvantsIC _3X 'd@-*aIsIC -_4X 'fi:*tsIC +_4X 'fI*tsIC _5X 'fynftsIC -_6X 'zEktsIC +_6X 'zECtsIC _7X 'zi:btsIC -_8X '_axttsIC +_8X '_axtsIC _9X 'nOYntsIC _0C 'hUnd3t _0M1 'taUz@nt @@ -131,7 +132,7 @@ _dpt _kOma // ordinal numbers _ord t@ // default ending _ord20 st@ // 20,30,etc -_1o _'e:*st@ +_1o _'e:3st@ _3o dr'It@ _7o z'i:bt@ _8o _'axt@ @@ -139,15 +140,15 @@ _0Co 'hUnd3tst@ // Abbreviations //============== -a.a.o A:A:o: -allg 'alg@maIn@n +a.a.o A:||A:||_o: +allg 'alg@maIn abb 'abb,IldUN anm 'anm,E*kUN bd band bde bEnd@ -bzw b@tsi:hUNsvaIz@ -chr k@-*Istu:s -dm d'OYtSm,A:*k $capital $only $abbrev +bzw b@tsi:UNsvaIz@ +chr k@-*IstUs +dm d'OYtS@||m'A:*k $capital $only $abbrev dr dOkt'o:* evtl e:vEntu:'El od o:d3 @@ -155,7 +156,7 @@ fr f@-*aU frl f@-*OYlaIn hr hE* hrsg hE*'aUsge:b3 -inkl Inklu:s'i:v@ +inkl Inklu:z'i:v@ km ki:lo:me:t3 nr nUm3 st 'Este: @@ -174,7 +175,7 @@ dem %de:m des %dEs derselb $2 -desselb dEss'Elb +desselb dEsz'Elb dieselb $2 dasselb dasz'Elb demselb $2 @@ -188,13 +189,13 @@ sondern $pause denn dEn $u+ $pause weil $pause als $u+ $pause -bevor be:fo:* $2 $pause +bevor b@fo:* $2 $pause also $pause wenn ,vEn $pause $strend sowie $2 $pause obgleich $2 $pause obwohl $2 $pause -deren dE*@n $u+ $brk +deren de:*@n $u+ $brk // prepositions ab ap $u+ $brk @@ -218,7 +219,7 @@ in In $u+ $brk im Im $u+ $brk ins Ins $u+ $brk mit mIt $u+ $pause -nach nax $u+ $brk +nach nA:x $u+ $brk ob ,Ob $pause $strend $only pro ,p@-*o: $pause von fOn $u+ $brk @@ -232,14 +233,14 @@ zur tsu:* $u+ $pause unter ,Unt3 $pause $strend um Um $u+ $brk //(um die) %Umd%i: $brk -//(um den) %Umd%e:m $brk +//(um den) %Umd%e:n $brk während $pause // misc so zo: $u+ doch dOx $u+ noch $pause -(noch nicht) n'Ox||n,ICt $brk +(noch nicht) n'Ox||n'ICt $brk (nicht mehr) n'ICt||,me:* (nicht mehr) n,ICt||m'e:* $atend (nicht nur) n'ICt||n'u:* $pause @@ -277,13 +278,13 @@ worin vo:*'In ich IC $u $only du du: $u $only er Er $u $brk $only -es Ez $u $only +es Es $u $only sie zi: $u $only wir vi:* $u $only ihr i:* $u man man $u $only sich zIC $u $only -(es ist) %Ez%Ist +(es ist) %Es%Ist daß das $u+ @@ -343,7 +344,7 @@ sind zInt $u seit zaIt $u $only habe %hA:b@ $only -habst %habst $only +habest hA:bEst $only $u hast %hast $only hat %hat $only haben h,A:b@n $only @@ -362,15 +363,15 @@ waren 'vA:*@n will %vIl $only willst %vIlst $only wollen %vOl@n $only -wolt %vOlt +wollt %vOlt werden v,E*d@n werde v,E*d@ -werdst v,E*dst +wirst v,I*st werdet v,E*d@t wurden vU*d@n wurde vU*d@ -wurdst vU*dst +wurdest v,U*dEst wurdet vU*d@t können ,kWn@n $only @@ -396,6 +397,7 @@ account _^_EN aid _^_EN // aids appeal _^_EN apple _^_EN +association _^_EN baseball _^_EN bbc _^_EN beat _^_EN @@ -410,9 +412,11 @@ computer _^_EN cool _^_EN couch _^_EN cursor _^_EN +debugger _^_EN dj _^_EN email _^_EN ensemble _^_FR +enterprise _^_EN event _^_EN firewall _^_EN foul _^_EN @@ -428,6 +432,7 @@ interface _^_EN jean _^_EN jet _^_EN job _^_EN +joint _^_EN joke _^_EN joystick _^_EN junkie _^_EN @@ -439,6 +444,8 @@ look _^_EN macho _^_EN mail _^_EN message _^_EN +my _^_EN +mysql _^_EN offline _^_EN online _^_EN out _^_EN @@ -467,6 +474,7 @@ slum _^_EN small _^_EN snob _^_EN song _^_EN +source _^_EN spam _^_EN spirit _^_EN squaw _^_EN @@ -479,6 +487,7 @@ terminal _^_EN trip _^_EN tuner _^_EN unix _^_EN +venture _^_EN window _^_EN word _^_EN @@ -488,23 +497,23 @@ word _^_EN abort ab'O*t absentier apzEnt'i:* abstinent $3 -achsig 'aksIC2 +achsig 'aksIg# akazie $alt allein $2 andre and@-*@ // andere anomalie $2 antik ant'i:k -archaik a*k'A:Ik +archaik a*C'A:Ik arie $alt arpeggier a*pEdZ'i:* arrangier a*aNZ'i:@ arterie $alt asphalt $2 +atommüll $1 ausgeschamt aUsg@SA:mt -außerdem aUs3d'e:m +außerdem 'aUs3d,e:m aventurin avEntu:*'i:n -ave A:ve: -avenue av@n'y: +ave A:vE balkan $1 balkon $2 @@ -522,6 +531,7 @@ ciao tSaU coup ku: dahlie $alt +debatte $2 deshalb $2 dezember $2 diadem di:ad'e:m @@ -534,13 +544,14 @@ duett du:'Et ebendaher e:b@ndah'e:r ebendahin e:b@ndah'In +ebenso $1 einander aIn'and3 einerlei aIn@*laI einher aInh'e:r einig aInIC $only einige aInIg@ $u+ einiges aInIg@s $u+ -enagier EngaZ'i:* +engagier aNgaZ'i:* endivie $alt endlich EntlIC episkopal e:pIsko:p'A:l @@ -549,7 +560,7 @@ erst e:*st ersten e:*st@n erstmal e:*stma:l extravagant $1 -extrem Ekstr'e:m +extrem Ekst@-*'e:m feuerrot $3 friedvoll f@-*'i:tf,Ol @@ -566,18 +577,17 @@ geranie ge:*'A:nI@ gessen gEs@n geste ge:st@ gestern gEst3n -gestrig gEst@-*IC glorie $alt grazie $alt -handy handI +handy hEndi: häuschen hOYsC@n hausier haUz'i:* -heimat haImat +heimat $1 herberg hE*bE*g historie $alt hm h@m -horsam ho:zA:m +horsam hO3zA:m hostie $alt illegitim Ile:gi:t'i:m @@ -600,20 +610,18 @@ intern Int'E*n januar janu:A:* kamelie $alt +kanoe kan'u: kastanie $alt kid kId komödie $alt -konkret k%ONk@-*e:t konservativ $1 -konstatier kOnStat'i:* konsul $1 kurie $alt -lakaienhaft l%akaInhaft lappalie $alt lilie $alt -linie $alt logier lo:Z'i:* +lucent lu:sEnt luetisch lu:'e:tIS machen max@n @@ -622,7 +630,7 @@ materie $alt menagier me:naZ'i:* menuette mEnu:'Et minut $2 -mikrofiche maIk@-*o:fIS +mikrofiche mi:k@-*o:fi:S miteinander $1 modell mo:d'El monoton $3 @@ -633,9 +641,10 @@ mumie $alt nebulos $3 negligent ne:gli:dZ'Ent +numero $1 oberen o:b@*@n -oboe o:bo:@ +oboe o:b'o:@ orgie $alt ok o:k'e: @@ -644,7 +653,7 @@ passage pas'aZ@ perplex $2 petersilie $alt pinie $alt -planet plan'Et +planet plan'e:t pochier pOS'i:* pochs pOxs präsident $3 @@ -653,6 +662,7 @@ privatisier p@-*i:vati:z'i:* problematisier p@-*o:ble:m'a:tIzi:* reliquie $alt +risik $1 rupie $alt sabbat zabat @@ -662,6 +672,7 @@ schult Su:lt selbst zElpst serie se:*I;@ service sE*vIs +soeben zo:_'e:b@n sofort $2 sogar $2 soweit $2 @@ -669,7 +680,7 @@ sowohl $2 sparsam SpA:*zA:m spinozaisch spi:n'o:tsaIS stalagmit stalagm'It -system z%IstEm +system zIst'e:m tag tA:g telegen te:le:g'e:n @@ -677,7 +688,6 @@ the D@ // English theater te:'A:t3 train t@-*e:n turin $2 -tuerei tu:*aI umweg $1 unten Unt@n @@ -693,14 +703,20 @@ vielbesprochen $3 vielleicht $2 vorbei fo:*b'aI vorher fo:*h'e:* -vorherig fo:*h'e:*IC -vorig fo:*IC +vorherig fo:*h'e:*Ig# +vorig fo:*Ig //wahrscheinlich $2 warum vA:*'Um zoom zu:m -zuerst tsu:'E*st +//zuerst tsu:'E*st +zugegen tsu:g'e:g@n zudem tsu:'de:m zurück $2 +zymbal $1 + +// Names +Neumexiko $2 +Neuseeland $2 diff --git a/dictsource/de_rules b/dictsource/de_rules index c2be479..d31c3d7 100644 --- a/dictsource/de_rules +++ b/dictsource/de_rules @@ -18,6 +18,7 @@ // * . * // ***************************************************************************/ +.L01 c f h k p q s t // unvoiced, except s+vowel // This file is UTF-8 encoded @@ -75,6 +76,7 @@ _) animal ,ani:mA:l _) anim ,ani:m _) ani (s %ani: + a (Co_ 'A: _) anti (@P4 ,antI _) an (tw an _) auf (@P3 _!'aUf @@ -104,6 +106,7 @@ air (_ E:r akqu %akv @A) al (_ 'A:l + b) al (_ 'A:l g) al (_ 'A:l k) al (_ 'A:l n) al (_ 'A:l @@ -129,6 +132,7 @@ @) atisch (_S6 'A:tIS @) atisieren (_S9 A:tIs'i:*@n a (tion a + _) ato (m %ato: _) au (Ceinand aU _) aufent aUf@nt austra (l %aUst@-*A @@ -142,8 +146,8 @@ b b b) b b (_N p - b (h p - b (s_ p + b (L01 p + b (sA b bt (_N pt _) be (@P2 b@ @@ -212,14 +216,17 @@ _) cey tsaI chef SEf _) c (ent ts + _) ch (ic S + _) ch (if S _) ch (il S - chip (_ _^_EN + chip (_ tSIp // English _) ch (ol k _) ch (or k bre) ch (en x chro k@-*o: nä) chs (t Cs + wa) chstu (m kstu: c (ie s pla) c (ie ts coat (_ _^_EN @@ -227,13 +234,15 @@ _) cow _^_EN crew _^_EN cup _^_EN + _) cyber saIb3 .group d _) d (_ de: d d d) d d (_N t - d (h t + d (L01 t + d (sA d ds (_ ts dt t ddt t @@ -293,7 +302,7 @@ &) e (BB_ E2 e (gt_+ e: &) el (_ @l - &) eln (_S1 n + &) eln (_NS1 n &) elnd (_S2 nt &) e (lt_ @ &) em (_NS2 @m @@ -310,6 +319,7 @@ &) end (_ @nd ier) end (_NS3 @nt ier) end (_ @nd + @) enhaft (_ =@nhaft @) ent (_ 'Ent @) entlich @ntl%IC @m) ent (_ 'Ent @@ -324,14 +334,15 @@ &) eren (_S4 @*@n &) erer (_S4 @*3 &) eres (_S4 @*@s - &) er (C_ @* + &) er (C_ @:* er (d_ e:* - &) er (n_ @* + &) er (n_ @:* &) er (r_ E w) er (k_ E* &) er (nd_ @* &) erin (_ @*In - &) erisch (_ @*IS + &) erisch (_ @*IS + exp) er (t E* @) es (_S2 @s &) et (_S2 @t &) est (_S3 @st @@ -350,6 +361,7 @@ @@) erisch @*IS &) erung (_ =@*UN + echo ECo: _) e (ff %E l) e (g_ 'e: eih (_ aI @@ -369,16 +381,19 @@ _) emp (@P3 _|%Emp _) emph (@ %Emf _) emp (ir %Emp + br) ems Ems // brems-t, not brem-st _) ene (rg %e:nE + _) energie e:nE*g'i: @) en (i e:n @) e (nsi E _) ent (@P3 _|%Ent _) enten Ent@n _) ent (er Ent + pat) ent 'Ent t) en (t En qu) en (tA En &) en (tum @n - &) e (nz_ 'E + &) e (nzK 'E _) epi (@ ,e:pi: _) epi (sk e:pI _) er (@P2 _|%E* @@ -387,6 +402,7 @@ &) er (igst @* _) er (beK E* _) er (HC E* // lC, mC, nC, rC + er (o_ 'e:* _) ergeb (nis E*g'e:b _) er (stC E* _) er (ste E* @@ -431,9 +447,9 @@ g g g (g g (_N k - g (h k + g (L01 k + g (sA g gd (_N kt - gt (_N kt gtet (_ kt@t gtest kt@st @@ -459,11 +475,13 @@ _) ge (orP2 g@ ge (rman gE ge (rät g@ + ge (strig gE @) ght (_ _^_EN graph g@-*Af graph (_ g@-*'A:f green _^_EN guide _^_EN + gue (_ k .group h @@ -532,24 +550,8 @@ @) i (at_ I i (d_ 'i: i (erin =i: - ig (C IC - ig (m Ig - ig (n Ig - ig (l Ig - ig (r Ig - ig (ung Ig - ig (end_ Ig + ig Ig# // [ig] or [iC] igh aI - igtet Ikt@t - igtest Ikt@st - &) ig (_N IC - &) ig (_ Ig // -ig + inflexions - @) igst (_ ICst - @) igste (_ ICst@ - @) igstem (_ ICst@m - @) igsten (_ ICst@n - @) igster (_ ICst3 - @) igstes (_ ICst@s i (i i:_! @@ -563,13 +565,19 @@ _) illeg ,Ile:g _) i (llu %I _) i (mag I + i (Co_ 'i: + ik (o_ i:k + &) im (o_ =i:m r) i (na_ 'i: // @) ing (_N _^_EN _) in (k %In _) inter Int@* &) in (_ i2n l) in (_ 'i:n + m) in (_ 'i:n s) in (_ 'i:n + z) in (_ 'i:n + @) in (o_ 'i:n @) ion (_ j'o:n @) io (n Io: io Io: @@ -593,11 +601,13 @@ &) ie (ll_ I'E &) ie (r_ 'i: + ie (rs@ 'i: u) ie (r_ _|'i: &) ie (rlich 'i: bank) ie (r I'e: barr) ie (r I'e: financ) ie (r I'e: + arr) ie (r I'e: hotel) ie (r I'e: prem) ie (r I'e: hyg) ie (n I'e: @@ -633,6 +643,7 @@ fol) ie (_ =I@ formal) ie =I@ stud) ie (_ =I@ + in) ie (_ I@ .group j @@ -647,6 +658,7 @@ // @) keit (_S4 kaIt // @) keiten (_S6 kaIt@n + ko (e@ ko: kolleg k%Ole:g _) komme (C@ k%OmE _) ko (mp k%O @@ -673,24 +685,24 @@ _) leit (@P4 l'aIt _) lern (@@P4 l'E*n _) lexi (@ lEksi: - @) lich (_S4 lIC - @) liche (_S5 lIC@ - @) lichem (_S6 lIC@m - @) lichen (_S6 lIC@n - @) licher (_S6 lIC3 - @) liches (_S6 lIC@s - @) lichere (_S7 lIC@*@ - @) licherem (_S8 lIC@*@m - @) licheren (_S8 lIC@*@n - @) licherer (_S8 lIC@*@3 - @) licheres (_S8 lIC@*@s - @) lichste (_S7 lICst@ - @) lichstem (_S8 lICst@m - @) lichsten (_S8 lICst@n - @) lichster (_S8 lICst@r - @) lichstes (_S8 lICst@s - @) lichkeit (_S8 lICk%aIt - @) lichung (_S7 lIC%UN + &) lich (_S4 lIC + &) liche (_S5 lIC@ + &) lichem (_S6 lIC@m + &) lichen (_S6 lIC@n + &) licher (_S6 lIC3 + &) liches (_S6 lIC@s + &) lichere (_S7 lIC@*@ + &) licherem (_S8 lIC@*@m + &) licheren (_S8 lIC@*@n + &) licherer (_S8 lIC@*@3 + &) licheres (_S8 lIC@*@s + &) lichste (_S7 lICst@ + &) lichstem (_S8 lICst@m + &) lichsten (_S8 lICst@n + &) lichster (_S8 lICst@r + &) lichstes (_S8 lICst@s + &) lichkeit (_S8 lICk%aIt + &) lichung (_S7 lIC%UN @) lo (gisch l'o: .group m @@ -737,7 +749,6 @@ _) ne (g ne: neglig ne:gli:Z neglige ne:gli:Z - &in) nen (_S3 @n &) ness _^_EN news _^_EN nieder ni:d3 @@ -755,6 +766,8 @@ o (sch O o (x O &CC) o (_ =o: + o (Co_ 'o: + o (lo_ o: ob (t_ o:p og (t_ o:k @@ -763,6 +776,9 @@ _) ober (ste o:b3 _) ob (jek %Op _) obst (reP4 'o:pst + oe (_ o:@ + @) oen (_S1 n + _n) o (e o: @) o (g_ 'o: t) ogen (_ o:g'e:n @) o (gin_ 'o: @@ -787,6 +803,7 @@ pf pF ph f + pake (t p%ake: _) para (@ p,a*a passagie pasaZ'i: _) peri p,e:*i: @@ -794,10 +811,12 @@ _) periphe p,e:*i:fe: _) personen (@P8 pE*s'o:n@n philie f'i:li: + _) photo f,o:to: _) pro (@ %p@-*o: - _) po (e p%o: - _) poe (sc pY: + po (em p%o: + po (et p%o: + poesie po:e:z'i: _) poly (@P4 p,o:ly: partei p%a*taI _) perfe (k p%E*fE @@ -817,6 +836,7 @@ _) q (_ ku: q k qu kv + @) que (_ =k .group r _) r (_ E* @@ -852,6 +872,9 @@ _be) sp Sp _ge) sp Sp _ver) sp Sp + sp (eich Sp + sp (err Sp + sp (r Sp &C) st (_S2 st &C) ste (_S3 st@ &C) stem (_S4 st@m @@ -863,16 +886,22 @@ _be) st St _ge) st St _ver) st St + ste (ll StE + a) ste (ll stE _) safe _^_EN &) schaft (_S6 Saft ä) schen sC@n // but not wäschen + wä) schen S@n fe) schen sC@n ie) schen sC@n h) schen sC@n ö) schen sC@n // but not löschen + lö) schen S@n + rö) schen S@n äu) schen sC@n // but not täuschen + täu) schen S@n schein (lich S'aIn _) schul (@P5 S'u:l @@ -881,6 +910,7 @@ schwer Sve:* _) sechs (P5 z'Eks _) selbst (@@P6 z'Elpst + service (_S7 z%Ervi:s shop _^_EN _) sky _^_EN soldat z%OldA:t @@ -888,6 +918,7 @@ sound _^_EN speed _^_EN + stau) ss s @) straße (_S6 st*,A:s@ _) street _^_EN style _^_EN @@ -929,10 +960,13 @@ ier) tester (_S6 t@st3 ier) testes (_S6 t@st@s + _) talent tal'Ent tch tS t (chen_ t _) teen _^_EN _) tele (@ t,e:le: + _) thermo tE*mo: + tuerei (_ tu:@*'aI thrill _^_EN _pa) th t the (era te: @@ -950,8 +984,10 @@ u u: uh (+ u: uell u:'El - ue y: - &) ue (_ u:@ // statue + u (e u: + r) ue (_ u:@ + t) ue (_ u:@ + ue (_ 'y: u (C% U u (CC U @@ -1016,21 +1052,31 @@ _) vi vi: _) v v - _) v (ater f + vater fA:t3 + väter fE:t3 + _) v (ät f _) v (ie f _) v (iet v _) v (iz f + v (og f v (oll f v (olk f v (ölC f _) v (on f _) vehe ve:he: - _) ver (@P3 f%E* - _) ver (bal v%E* - _) ver (tik vE* + _) ver (@P3 f%Er + _) ve (rbal vE + _) ve (rbos v%E + _) ve (rsat vE + _) ve (rsie vE + _) ve (rsif vE + _) ve (rsion vE + _) ve (rteb vE + _) ve (rtik vE @) versich fE*z,IC @) vergess fE*g,Es + @) verfahren (_S9 fErf,A:@-*@n _) viel (@P4 f'i:l _) vier (g@P4 f'i:* _) viet vIEt @@ -1042,7 +1088,8 @@ _) voll (z f%Ol _) vorder fO*d@* -) vorha (nd fo:*h'a - _) vor (ne 'fO* + _) vor (ne 'fo:* + _) vor (n fO* _) vor (@P3 'fo:* _) voraus (@P6 fo:*'aUs @@ -1062,6 +1109,8 @@ _) weg (C@P3 v'e:k _) weit (C@P4 v'aIt _) weiter (@P6 v'aIt@* + _) weither vaIthe:* + _) wieder (@P6 vi:d3 _) wo (hin v%o: _) wohl (@P4 v'o:l work _^_EN @@ -1101,6 +1150,9 @@ _) zigaretten (@P10 tsi:ga*'Et@n _) zigeu tsi:g'OY _) zu (C@P2 ts%u: + _) zu (eP2 ts%u: + _) zu (g@ tsu: + _) zu (gu@P2 ts%u: _) zu (nC tsU _) zurück (@P6 tsu:*'yk _) zyklo (@P5 ,tsy:klo: @@ -1118,6 +1170,7 @@ äb (t_ E:p äg (t_ E:k t) ät (_ 'E:t + ä (um_N 'E: .group ö ö Y: diff --git a/dictsource/dict_log b/dictsource/dict_log index 0456fbf..ab6772a 100644 --- a/dictsource/dict_log +++ b/dictsource/dict_log @@ -1,122 +1,116 @@ Using phonemetable: 'af' Compiling: '/home/jsd1/speechdata/dictsource/af_list' - 1113 entries + 1274 entries Compiling: '/home/jsd1/speechdata/dictsource/af_rules' - 4806 rules, 41 groups - -Using phonemetable: 'bn' -Compiling: '/home/jsd1/speechdata/dictsource/bn_list' - 151 entries -Compiling: '/home/jsd1/speechdata/dictsource/bn_rules' - 637 rules, 65 groups + 5011 rules, 60 groups (0) Using phonemetable: 'ca' Compiling: '/home/jsd1/speechdata/dictsource/ca_list' 193 entries Compiling: '/home/jsd1/speechdata/dictsource/ca_rules' - 133 rules, 28 groups + 133 rules, 28 groups (0) Using phonemetable: 'cs' Compiling: '/home/jsd1/speechdata/dictsource/cs_list' 357 entries Compiling: '/home/jsd1/speechdata/dictsource/cs_rules' - 506 rules, 48 groups + 506 rules, 48 groups (0) Using phonemetable: 'cy' Compiling: '/home/jsd1/speechdata/dictsource/cy_list' 166 entries Compiling: '/home/jsd1/speechdata/dictsource/cy_rules' - 208 rules, 27 groups + 208 rules, 27 groups (0) -Using phonemetable: 'kn' -Compiling: '/home/jsd1/speechdata/dictsource/kn_list' - 54 entries -Compiling: '/home/jsd1/speechdata/dictsource/kn_rules' - 107 rules, 5 groups +Using phonemetable: 'da' +Compiling: '/home/jsd1/speechdata/dictsource/da_list' + 222 entries +Compiling: '/home/jsd1/speechdata/dictsource/da_rules' + 747 rules, 32 groups (0) Using phonemetable: 'de' Compiling: '/home/jsd1/speechdata/dictsource/de_list' - 591 entries + 603 entries Compiling: '/home/jsd1/speechdata/dictsource/de_rules' - 978 rules, 32 groups + 1030 rules, 32 groups (0) Using phonemetable: 'el' Compiling: '/home/jsd1/speechdata/dictsource/el_list' 184 entries Compiling: '/home/jsd1/speechdata/dictsource/el_rules' - 169 rules, 26 groups + 169 rules, 26 groups (25) Using phonemetable: 'en' Compiling: '/home/jsd1/speechdata/dictsource/en_list' - 3018 entries + 3065 entries Compiling: '/home/jsd1/speechdata/dictsource/en_rules' - 5150 rules, 95 groups + 5171 rules, 97 groups (0) Using phonemetable: 'eo' Compiling: '/home/jsd1/speechdata/dictsource/eo_list' 240 entries Compiling: '/home/jsd1/speechdata/dictsource/eo_rules' - 129 rules, 27 groups + 129 rules, 27 groups (0) Using phonemetable: 'es' Compiling: '/home/jsd1/speechdata/dictsource/es_list' 329 entries Compiling: '/home/jsd1/speechdata/dictsource/es_rules' - 128 rules, 27 groups + 129 rules, 27 groups (0) Using phonemetable: 'fi' Compiling: '/home/jsd1/speechdata/dictsource/fi_list' 271 entries Compiling: '/home/jsd1/speechdata/dictsource/fi_rules' - 104 rules, 29 groups + 104 rules, 29 groups (0) Using phonemetable: 'fr' Compiling: '/home/jsd1/speechdata/dictsource/fr_list' - 730 entries + 763 entries Compiling: '/home/jsd1/speechdata/dictsource/fr_rules' - 1121 rules, 34 groups + 1164 rules, 34 groups (0) Using phonemetable: 'grc' Compiling: '/home/jsd1/speechdata/dictsource/grc_list' 22 entries Compiling: '/home/jsd1/speechdata/dictsource/grc_rules' - 134 rules, 54 groups + 134 rules, 54 groups (27) Using phonemetable: 'hr' Compiling: '/home/jsd1/speechdata/dictsource/hbs_list' 569 entries Compiling: '/home/jsd1/speechdata/dictsource/hbs_rules' - 102 rules, 34 groups + 102 rules, 34 groups (0) Using phonemetable: 'hi' Compiling: '/home/jsd1/speechdata/dictsource/hi_list' - 228 entries + 229 entries Compiling: '/home/jsd1/speechdata/dictsource/hi_rules' - 267 rules, 88 groups + 267 rules, 88 groups (86) Using phonemetable: 'hu' Compiling: '/home/jsd1/speechdata/dictsource/hu_list' - 321 entries + 987 entries Compiling: '/home/jsd1/speechdata/dictsource/hu_rules' - 210 rules, 37 groups + 981 rules, 43 groups (0) Using phonemetable: 'hy' Compiling: '/home/jsd1/speechdata/dictsource/hy_list' 70 entries Compiling: '/home/jsd1/speechdata/dictsource/hy_rules' - 93 rules, 39 groups + 93 rules, 39 groups (38) Using phonemetable: 'id' Compiling: '/home/jsd1/speechdata/dictsource/id_list' 132 entries Compiling: '/home/jsd1/speechdata/dictsource/id_rules' - 71 rules, 27 groups + 74 rules, 27 groups (0) Using phonemetable: 'is' Compiling: '/home/jsd1/speechdata/dictsource/is_list' 327 entries Compiling: '/home/jsd1/speechdata/dictsource/is_rules' - 202 rules, 37 groups + 202 rules, 37 groups (0) Using phonemetable: 'it' Compiling: '/home/jsd1/speechdata/dictsource/it_listx' @@ -124,163 +118,135 @@ Compiling: '/home/jsd1/speechdata/dictsource/it_listx' Compiling: '/home/jsd1/speechdata/dictsource/it_list' 408 entries Compiling: '/home/jsd1/speechdata/dictsource/it_rules' - 308 rules, 28 groups + 308 rules, 28 groups (0) Using phonemetable: 'jbo' Compiling: '/home/jsd1/speechdata/dictsource/jbo_list' 68 entries Compiling: '/home/jsd1/speechdata/dictsource/jbo_rules' - 61 rules, 27 groups - -Using phonemetable: 'ml' -Compiling: '/home/jsd1/speechdata/dictsource/ml_list' - 36 entries -Compiling: '/home/jsd1/speechdata/dictsource/ml_rules' - 108 rules, 5 groups - -Using phonemetable: 'ne' -Compiling: '/home/jsd1/speechdata/dictsource/ne_list' - 155 entries -Compiling: '/home/jsd1/speechdata/dictsource/ne_rules' - 354 rules, 87 groups - -Using phonemetable: 'om' -Compiling: '/home/jsd1/speechdata/dictsource/om_rules' - 70 rules, 27 groups + 63 rules, 27 groups (0) Using phonemetable: 'ku' Compiling: '/home/jsd1/speechdata/dictsource/ku_list' 106 entries Compiling: '/home/jsd1/speechdata/dictsource/ku_rules' - 46 rules, 32 groups + 46 rules, 32 groups (0) Using phonemetable: 'la' Compiling: '/home/jsd1/speechdata/dictsource/la_list' 215 entries Compiling: '/home/jsd1/speechdata/dictsource/la_rules' - 113 rules, 31 groups + 113 rules, 31 groups (0) Using phonemetable: 'lv' Compiling: '/home/jsd1/speechdata/dictsource/lv_list' 339 entries Compiling: '/home/jsd1/speechdata/dictsource/lv_rules' - 1034 rules, 40 groups + 1034 rules, 40 groups (0) Using phonemetable: 'mk' Compiling: '/home/jsd1/speechdata/dictsource/mk_list' 188 entries Compiling: '/home/jsd1/speechdata/dictsource/mk_rules' - 150 rules, 65 groups - -Using phonemetable: 'rw' -Compiling: '/home/jsd1/speechdata/dictsource/rw_list' - 69 entries -Compiling: '/home/jsd1/speechdata/dictsource/rw_rules' - 47 rules, 27 groups + 150 rules, 65 groups (0) -Using phonemetable: 'eu' -Compiling: '/home/jsd1/speechdata/dictsource/eu_list' - 92 entries -Compiling: '/home/jsd1/speechdata/dictsource/eu_rules' - 55 rules, 28 groups +Using phonemetable: 'nci' +Compiling: '/home/jsd1/speechdata/dictsource/nci_list' + 16 entries +Compiling: '/home/jsd1/speechdata/dictsource/nci_rules' + 41 rules, 21 groups (0) Using phonemetable: 'nl' Compiling: '/home/jsd1/speechdata/dictsource/nl_list' 202 entries Compiling: '/home/jsd1/speechdata/dictsource/nl_rules' - 156 rules, 27 groups + 156 rules, 27 groups (0) Using phonemetable: 'no' Compiling: '/home/jsd1/speechdata/dictsource/no_list' - 192 entries + 236 entries Compiling: '/home/jsd1/speechdata/dictsource/no_rules' - 147 rules, 32 groups + 138 rules, 32 groups (0) + +Using phonemetable: 'base2' +Compiling: '/home/jsd1/speechdata/dictsource/pap_list' + 87 entries +Compiling: '/home/jsd1/speechdata/dictsource/pap_rules' + 68 rules, 32 groups (0) Using phonemetable: 'pl' Compiling: '/home/jsd1/speechdata/dictsource/pl_list' 2957 entries Compiling: '/home/jsd1/speechdata/dictsource/pl_rules' - 942 rules, 55 groups + 942 rules, 55 groups (0) Using phonemetable: 'pt' Compiling: '/home/jsd1/speechdata/dictsource/pt_list' - 701 entries + 718 entries Compiling: '/home/jsd1/speechdata/dictsource/pt_rules' - 647 rules, 38 groups + 685 rules, 38 groups (0) Using phonemetable: 'ro' Compiling: '/home/jsd1/speechdata/dictsource/ro_list' - 1909 entries + 2167 entries Compiling: '/home/jsd1/speechdata/dictsource/ro_rules' - 326 rules, 32 groups + 346 rules, 32 groups (0) Using phonemetable: 'ru' Compiling: '/home/jsd1/speechdata/dictsource/ru_list' - 121 entries + 122 entries Compiling: '/home/jsd1/speechdata/dictsource/ru_rules' - 508 rules, 34 groups - -Using phonemetable: 'da' -Compiling: '/home/jsd1/speechdata/dictsource/da_list' - 199 entries -Compiling: '/home/jsd1/speechdata/dictsource/da_rules' - 342 rules, 31 groups + 508 rules, 34 groups (33) Using phonemetable: 'sk' Compiling: '/home/jsd1/speechdata/dictsource/sk_list' 314 entries Compiling: '/home/jsd1/speechdata/dictsource/sk_rules' - 528 rules, 46 groups + 528 rules, 46 groups (0) Using phonemetable: 'sq' Compiling: '/home/jsd1/speechdata/dictsource/sq_list' 132 entries Compiling: '/home/jsd1/speechdata/dictsource/sq_rules' - 100 rules, 29 groups + 100 rules, 29 groups (0) Using phonemetable: 'sv' Compiling: '/home/jsd1/speechdata/dictsource/sv_list' 326 entries Compiling: '/home/jsd1/speechdata/dictsource/sv_rules' - 676 rules, 30 groups + 676 rules, 30 groups (0) Using phonemetable: 'sw' Compiling: '/home/jsd1/speechdata/dictsource/sw_list' 167 entries Compiling: '/home/jsd1/speechdata/dictsource/sw_rules' - 66 rules, 27 groups + 66 rules, 27 groups (0) Using phonemetable: 'ta' Compiling: '/home/jsd1/speechdata/dictsource/ta_list' - 74 entries + 286 entries Compiling: '/home/jsd1/speechdata/dictsource/ta_rules' - 103 rules, 5 groups + 776 rules, 29 groups (24) Using phonemetable: 'tr' Compiling: '/home/jsd1/speechdata/dictsource/tr_list' 129 entries Compiling: '/home/jsd1/speechdata/dictsource/tr_rules' - 193 rules, 33 groups + 193 rules, 33 groups (0) Using phonemetable: 'vi' Compiling: '/home/jsd1/speechdata/dictsource/vi_list' 104 entries Compiling: '/home/jsd1/speechdata/dictsource/vi_rules' - 354 rules, 95 groups + 354 rules, 95 groups (0) Using phonemetable: 'zh' Compiling: '/home/jsd1/speechdata/dictsource/zh_list' 3873 entries Compiling: '/home/jsd1/speechdata/dictsource/zh_rules' - 181 rules, 28 groups + 181 rules, 28 groups (0) Using phonemetable: 'zhy' Compiling: '/home/jsd1/speechdata/dictsource/zhy_rules' - 79 rules, 27 groups - -Using phonemetable: 'base2' -Compiling: '/home/jsd1/speechdata/dictsource/pap_list' - 87 entries -Compiling: '/home/jsd1/speechdata/dictsource/pap_rules' - 68 rules, 32 groups + 79 rules, 27 groups (0) diff --git a/dictsource/dict_phonemes b/dictsource/dict_phonemes index 2f0fd80..d31a6e2 100644 --- a/dictsource/dict_phonemes +++ b/dictsource/dict_phonemes @@ -11,22 +11,8 @@ Yy - : ; ? b c d dZ f g h j k l L m -n N p r s S t T -tS v w x x2 z Z - - -Dictionary bn_dict - -& a a: a~ e E e~ i -I i: i:~ i~ l- o O o: -O~ o~ r- U u u: u:~ u~ -V - -* b B bh c C ch d -d. d.h dh g gh h j J -Jh k kh l m n N n. -n^ p ph Q r r. s S -s. t t. t.h th tS x z +n N n^ p r s S t +T tS v w x x2 z Z Dictionary ca_dict @@ -67,18 +53,16 @@ p r s S t T v w x z -Dictionary kn_dict +Dictionary da_dict -a a: aI aU e E e: i -I i: o o: r- u u: V -y +& 0 3 @ @- a A e +E i o O u V W y +Y -: b bh c ch d d. d.h -dh dZ f g gh h j J -Jh k kh l l. m n N -n. n^ p ph R R2 s S -s. S; t t. t.h th tS v -w z +* - : ; ? b d D +dZ f g h j k l L +m n N p r R s S +t tS v w Dictionary de_dict @@ -88,10 +72,10 @@ E E2 E: e: EI I i2 i: O o: OY U u: W y y: Y: -* : ; b C C2 d D -dZ f g h j k l m +* : ; b C d D dZ +f g g# h j k l m n N p pF r s S t -tS ts v x z Z +tS ts v w x z Z Dictionary el_dict @@ -109,10 +93,10 @@ Dictionary en_dict 0 3 3: @ @- @2 @5 @L a a2 A: A@ aa aI aI@ aU -aU@ A~ E e@ eI I i I2 -i: i@ i@3 IR O O: o: O@ -o@ OI oU O~ U u: U@ V -VR +aU@ A~ E e: e@ eI I i +I2 i: i@ i@3 IR O O: o: +O@ o@ OI oU O~ U u: U@ +V VR : ; ? b C d D dZ f g g- h j k l L @@ -157,10 +141,10 @@ s2 t v w Z Dictionary fr_dict -@ @- @2 a A~ e E E~ -i I i- i: o O o2 O2 -O~ u u: W W2 w^i wA W~ -y Y +@ @- @2 a A~ e E E2 +E: E~ i i- i: o O o2 +O2 o3 O~ u u: W w^i wA +W~ y Y : b d dZ f g h j k l m n N n2 n^ p @@ -199,11 +183,11 @@ l- o O o: O: O~ o~ r- U u: u~ V - : b bh c ch d d. -d.h dh f g gh h H j +dh dh. f g gh h H j J Jh k kh l l. m n N n. n^ p ph Q q r -r. s S s. t T t. t.h -th v w x z +r. s S s. t T t. th +th. v w x z Dictionary hu_dict @@ -211,9 +195,9 @@ Dictionary hu_dict A a: E e: i i: o o: u u: Y y y: Y: -: b c C d dZ f g -h j J k l l^ m n -N n^ p R R2 s S s2 +- : b c d dZ dz f +g h j J k l m n +n^ p r R R2 s S s2 t tS ts v z Z @@ -233,10 +217,10 @@ Dictionary id_dict @ a aI aU e E E2 i o O u -* : ? b d dZ f g -h j k l m n N n^ -p r R R2 s S t tS -v w x z +: ? b d dZ f g h +j k l m n N n^ p +r R R2 s S t tS v +w x z Dictionary is_dict @@ -265,54 +249,12 @@ ts v w w2 z Dictionary jbo_dict -@ @- a aI aU e eI i -l- o oI r- u - -* - b d dZ f g h -j k l m n N p R -s S t tS v w x z -Z - - -Dictionary ml_dict - -a a: aI aU e E e: i -I i: o o: r- u u: V -y - -: b bh c ch d d. d.h -dh dZ f g gh h j J -Jh k kh l l. m n N -n. n^ p ph R R2 s s. -S; t t. t.h th tS v w -z z. - - -Dictionary ne_dict - -@ @/ @2 @3 a aI aU a~ -e E eI eU e~ E~ i I -i~ l- o O o: oI oU O~ -o~ r- u uI u~ V VI VU -V~ +@ a aI aU e eI i l- +o oI r- u -- : b bh c ch d d. -d.h dh f g gh h H j -J Jh k kh l l. m n -N n. n^ p ph Q q r -r. s S s. t T t. t.h -th v w x z z. - - -Dictionary om_dict - -a A a# a: E e E# I -I# i: O O# o: U U# u: - -** : b B c` d D d` -dZ f g h j k k` l -m n n^ p p` R s S -s2 t t` tS v w z +- b d dZ f g h j +k l m n N p R s +S t tS v w x z Z Dictionary ku_dict @@ -361,26 +303,13 @@ N n^ p r R s S t tS ts tS; v x z Z -Dictionary rw_dict - -a e i o u - -* : b B c d dZ f -g h j J k l m n -N n^ p q R s S S; -t tS v w x z - - -Dictionary eu_dict +Dictionary nci_dict -a aI aU e eI eU i o -oI u Y +a e i o O -* ** : ; b B c d -D f g h j J k l -l^ m n n^ p Q r R -s S t tS ts tz v w -x z +: ? b c d f g j +k l m n p R s S +t tS v w x Dictionary nl_dict @@ -407,16 +336,27 @@ k l m n N p r R s S s; t v w x z +Dictionary pap_dict + +a a/ aI e E eI i o +O u y Y + +: ? b d dZ f g h +j k l m n N n^ p +R s S t tS v w x +z Z + + Dictionary pl_dict a E E# E~ i O O~ u y : ; b c C d d; dZ -dz dz; f g h j k l -m n N n^ p r R s -S s; S; t t; tS ts ts; -tS; v w x z Z Z; +dz f g h j k l m +n N n^ p r R s S +s; S; t t; tS ts tS; v +w x z Z Z; Dictionary pt_dict @@ -440,17 +380,17 @@ ea eI eo eU i i/ I^ iI iU o O Oa oI oU u uI y Y yI yU -* *; - b b; c C d -d; dZ f f; g h j k -l l; m m; n N n; p -p; r s S S; t t; tS -ts ts; v v; w w2 x z -Z z; Z; +* *; b b; c C d d; +dZ f f; g h j k l +l; m m; n N n; p p; +r s S S; t t; tS ts +ts; v v; w w2 x z Z +z; Z; Dictionary ru_dict -8 @- A a E e E# E2 +8 @- a A e E E# E2 E3 i I I# I2 I3 I^ ja ju o O u u" u# V V# y Y @@ -458,20 +398,8 @@ y Y * ; b d d; dZ; f g j k l l^ m m; n n^ p r R s S s; S; t -t; ts ts; tS; v x z Z -z; Z; - - -Dictionary da_dict - -& 0 3 @ @- a A e -E i o O u V W y -Y - -* - : ; ? b d D -dZ f g h j k l L -m n N n^ p r R s -S t tS v w +t; ts tS; v x z Z z; +Z; Dictionary sk_dict @@ -524,13 +452,14 @@ v w x z Dictionary ta_dict -a a: aU e E e: E: i +a a: aI aU e E e: i I i: o o: U u u: V -: b c C d d. dZ f -g h j k l l. m n -N n. n^ p r R s S -s. t t. tS v w z z. +: ; b C d d. dZ f +g h H j k l l. m +n N n. n^ p Q r R +s S s. t T t. th tS +v w z z. Dictionary tr_dict @@ -553,7 +482,7 @@ u@ uI y y@ yI b c d D f g h j J k kh l m n N n^ -p Q r s s. t t[ ts; +p Q r s s. s; t t[ tS; v w x z Z z. @@ -564,10 +493,10 @@ i i. i[ iA iE io iou N- o o- ong ou u u@ ua uai uei uo y y& y@ yE yi yu -; C f h j k kh l -L m n N p ph r R -s s. S; t th ts ts. ts. -tS; tS; tsh v w x X z. +; f h j k kh l l. +l^ m n N p ph r s +s. S; t th ts ts. ts. tS; +tS; tsh v w x z. Dictionary zhy_dict @@ -579,14 +508,3 @@ oi ong ou u ui yu b c d f g h j k l m n N p r s t tS v w z - - -Dictionary pap_dict - -a a/ aI e E eI i o -O u y Y - -: ? b d dZ f g h -j k l m n N n^ p -R s S t tS v w x -z Z diff --git a/dictsource/en_list b/dictsource/en_list index 42fee15..e1bf2c5 100644 --- a/dictsource/en_list +++ b/dictsource/en_list @@ -98,6 +98,7 @@ _?A l,Et3 _?? sImb@L _#9 tab _#32 speIs +//… _::d%0td,0t // for elipsis or ... while reading _  hA@dspeIs // U+00A0 no-break-space _! Ekskl@m'eIS@n @@ -180,10 +181,8 @@ _₠ jU@roU # haS $max3 @ _at_ $u+ & _and $u+ -\ bakstroUk $max3 -/ stroUk $max3 -?3 \ bakslaS $max3 -?3 / slaS $max3 +\ bakslaS $max3 +/ slaS $max3 * ast@rIsk $max3 % p3sEnt $max3 ?5 % pVRs'Ent $max3 @@ -218,6 +217,8 @@ _₠ jU@roU √ skw,e@r'u:t ∞ Inf'InI2tI2 ≠ n0t'i:kw@LtU +№ nju:m@roU +। dVnda2 ß S,A@p'Es ə SwA: @@ -261,6 +262,7 @@ U+32f n,0nsI2l'abI2k // numeric +//_0 zero $text // TEST _0 z'i@roU _1 w'0n ?6 _1 w'Vn @@ -303,10 +305,10 @@ _0M3 b'Ili@n _dpt pOInt _roman roUm@n_ -_0st st -_0nd @nd -_0rd d -_0th T +_#st st +_#nd @nd +_#rd d +_#th T _ord T // default ending _1o f'3: _2o s'Ek @@ -321,6 +323,7 @@ _70o s'Ev@nti@ _80o 'eIti@ _90o n'aInti@ _0Co h'Vndr@dT +_0M1o T'aUz@ndT // ABBREVIATIONS @@ -341,11 +344,11 @@ ctrl k0ntr'oUl dept dI2pA@tm@nt diy $abbrev edt $abbrev -eg fO@Egz'aamp@L +eg fO@Egz'aamp@L $only est $abbrev etc Et'sEtr@ eu $abbrev -eur jU@ +eur jU@ $only hmm h@m (http ://) eItSti:ti:'pi:_ ibm $abbrev @@ -356,7 +359,8 @@ irc $abbrev lbs paUndz LBS $abbrev ltd lImI2tI2d -mc m@k $alt2 // combine with the following word +mc m@k $combine // combine with the following word +mya $abbrev ny $abbrev oem $abbrev ok $abbrev @@ -432,7 +436,7 @@ abstract a2bstr'akt $verb academe a2kad@mI access aksEs $onlys access aksEs $verb -accouche a2ku:S +accouchement a2ku:SmO~ acer eIs3 aces eIsI2z acetylene a2sEt@li:n @@ -501,6 +505,7 @@ albeit O:lb'i:It alfalfa alf'alf@ alias eIli@s alibi al@baI +alibis al@baIz alkali alk@laI allay a2leI allegiance a2li:dZ@ns @@ -562,7 +567,7 @@ antigen $1 antihero $1 antilog $1 antimatter $1 -antinomy ant'In@mI +antimony $2 antioch $1 antipathy ant'Ip@TI antiphonal ant'If@n@L @@ -575,6 +580,7 @@ anxious aNS@s anymore $3 anything EnI2TIN apache a2patSI +apostle a2p0s@L apron eIpr@n appal a2pO:l apparatus ap@r'eIt@s @@ -592,6 +598,8 @@ archimedes A@kIm'i:di:z archive A@kaIv archway $1 arena a2ri:n@ +argue A@gju: +aries e@ri:z arithmetic a2rITm@tIk arise a2raIz arisen a2rIz@n @@ -684,6 +692,7 @@ boing bOIN bombard $2 bonbon b0nb0n bonhomie b0n@mi: +bonjour bO:nZ'U@ boogie b'u:gI bosom bUz@m bosun boUs@n @@ -732,7 +741,6 @@ campus kamp@s // campuses canal k@nal canary k@ne@rI canine keInaIn -cannabis kana2bIs canoe k@nu: canoes k@nu:z canton kant0n @@ -774,6 +782,7 @@ chemise SEm'i:z chic Si:k chimpanzee $3 chisel tSIz@L +chloroplast $1 chocolate tS0kl@t cholera k0l@r@ cholesterol k@lEst@r0l @@ -978,10 +987,12 @@ divan dI2van doable du:@b@L doctrine d0ktrI2n doctrinal d0ktr'aIn@L +doer du:3 dogged d0gI2d domino $1 donor doUn3 dont doUnt $only +donut doUnVt dose doUs dosage doUsI2dZ dramatic dr@matIk @@ -1015,7 +1026,6 @@ electron I2lEktr0n elicit I2lIsI2t eligible ElI2dZ@b@L élite Il'i:t -email i:meIl embed Emb'Ed ember Emb3 empire $1 @@ -1040,6 +1050,7 @@ eras i@r@z erase I2reIz // erasing erases ere e@ $only eros i@r0s +err 3: errand Er@nd escapism Esk'eIpI2z@m escargot I2sk'A@goU @@ -1149,6 +1160,7 @@ furthermore f3:D3m'o@ $pause ?5 furthermore fVRD3m'o@ $pause fuscia fju:S@ fuselage fju:z@lA:Z +futon fu:t0n gala gA:l@ galaxy gala2ksI @@ -1202,6 +1214,7 @@ havoc hav@k hasty heIstI hatred heItrI2d hazardous haz3d@s +heh hEh hehe hi:h'i: heifer hEf@ heist haIst @@ -1294,7 +1307,6 @@ ingenuity IndZI2n'ju:I2tI inherit Inh'ErIt // inherited innard In3d inner In3 -inning InI2N innovative In@veItIv insect $1 insert Ins3:t $onlys @@ -1335,12 +1347,14 @@ japan dZ@pan jasmine dZazmIn jesus dZi:z@s joky dZoUkI +jour ZU@ // french jukebox dZu:kb0ks july dZu:l'aI kaput ka2pUt karate k@rA:tI kebab k@bab +kefir ki:f3 hiatus haI'eIt@s kilo ki:loU kilter kIlt3 @@ -1348,6 +1362,7 @@ kiosk ki:0sk kiwi ki:wi: knavish neIvIS koala koU'A:l@ +koan koUA:n kopje k0pI kosher koUS3 @@ -1373,7 +1388,7 @@ leant lEnt leapt lEpt lego lEgoU leisure l'EZ3 -lemme lElI // let me +lemme lEmI // let me lemonade $3 leo li:oU leopard lEp@d @@ -1381,6 +1396,7 @@ lesion li:Z@n lethal li:T@L liaison li:'eIz0n libre li:br@ +lichen laIk@n lier laI3 // outlier ligate li:geIt lilac laIl@k @@ -1391,9 +1407,11 @@ limousine lIm@zi:n lingerie l0nZ@rI linen lInI2n liqueur lI2kjU@ +liter li:t3 literature lItrI2tS3 live laIv $onlys live lIv $verb +livecd l'aIvsi:d'i: livestock l'aIvst,0k lively laIvlI llama lA:m@ @@ -1492,7 +1510,8 @@ mitre maIt3 mixer mIks3 modem moUdEm moderate m0d@reIt $verb -momentum $2 +momentary moUm@nt@rI +momentum $2 monday mVndeI monotone m0n@toUn monsieur m@sj3: @@ -1509,6 +1528,8 @@ motif moUt'i:f moustache m@st'aaS mouths maUDz $only movies mu:vI2z +multitude $1 +multiplexer $1 mundane $2 murmur m3:m3 ?5 murmur mVRm3 @@ -1543,7 +1564,7 @@ nobody 'noUb0dI nocturnal $2 nomenclature n@mENkl@tS3 nonsense n0ns@ns -nonetheless n0nD@l'Es +nonetheless nVnD@l'Es nosedive noUzdaIv not noUt // for noted, notable, etc nott n0t @@ -1572,12 +1593,14 @@ offer 0f3 offers 0f3z ogre oUg3 okay oUk'eI -omeg oUm'eIg@ +oled oUlEd // abbrev +omega oUm'eIg@ omelet 0ml@t omelette 0ml@t omnibus $1 omniscience 0mn'IsI@ns opaque oUp'eIk +oped 0p'Ed opine oUp'aIn opossum @p0s@m opponent @poUn@nt @@ -1588,6 +1611,7 @@ orion 0r'aI@n ordeal O@d'i@l orphan O@f@n // orphaned outage $1 +outback $1 outcome $1 outer aUt3 outbreak $1 @@ -1597,13 +1621,16 @@ outcrop $1 outcry $1 outed aUtI2d outfit $1 +outhouse $1 outing $1 outlaw $1 +outlay $1 outlet $1 outlier 'aUtl,aI3 outline $1 outlive aUtl'Iv outlook $1 +outmost $1 outpost aUtpoUst output $1 outrage $1 @@ -1643,6 +1670,7 @@ pasting peIstI2N pastry peIstrI pate pateI pathos peIT0s +paypal peIpal pear pe@ peculiar pI2kju:lI3 pedalo pEd@loU @@ -1674,6 +1702,7 @@ pier pi@3 pigsty pIgstaI pilot paIl@t pineapple p'aInap@L +pinged pINd pint paInt pioneer paI@n'i@3 pious paI@s @@ -1681,6 +1710,7 @@ pipette pIp'Et piquant pi:k@nt piracy paI@r@sI pirate paIr@t +pisces paIsi:z piteous pIti@s pituitary $2 plaguing pleIgIN @@ -1769,6 +1799,7 @@ question kwEstS@n quiche ki:S quiver kwIv3 +rabbis rabaIz rabid reIbI2d radar reIdA@ radioactive reIdI2oU'aktIv @@ -1796,6 +1827,7 @@ reading ri:dI2N readonly ,ri:d'oUnlI really ri@lI $verbf rearm ri:'A@m +rebate ri:beIt rebel rI2bEl $verb recall ri:kO:l recall $2 $verb @@ -1908,8 +1940,6 @@ saucepan sO:sp@n saudi saUdI saute sO:teI says sEz -schema ski:m@ -shallow SaloU salmon sam@n scalpel skalp@L scared ske@d @@ -1955,10 +1985,12 @@ severe sI2v'i@3 $only severely sI2v'i@3lI2 $verbf sex sEks // sexism several sEvr@L +shallow SaloU shampoo $2 sheriff S'ErI2f shew SoU shia Si:@ +shiitake Si:t'A:ke: shillelagh S,I2l'eIl@ shiver SIv3 shone S0n @@ -2113,6 +2145,7 @@ tone toUn tonight t@naIt tonne tVn tornado tO@n'eIdoU +tortilla tO@t'i:a2 touche tu:SeI $only toupee tu:peI transcript $1 $onlys @@ -2209,6 +2242,7 @@ vex vEks // for vexed vicar vIk3 vigilante vIdZI2l'antI2 villi vIlaI +vineyard vInj3d vinyl vaInI2l violin $2 virus vaI@r@s @@ -2274,7 +2308,7 @@ yoghurt j0g3t ?3 yoghurt joUg3t yoyo joUjoU -zulu zu:lu: +zulus zu:lu:z // place names @@ -2386,6 +2420,8 @@ Damascus da2mask@s Danish deInIS Delhi dElI Djibouti dZIb'u:tI +Donegal d0nI2g'O:l +Durham dVr@m Egyptian IdZ'IpS@n Eire e@r@ Geneva dZ@ni:v@ @@ -2449,6 +2485,7 @@ Nauru naUru: Nebraska $2 Nepal nEp'O:l ?3 Nevada nI2vad@ +Newfoundland nju:f@ndla2nd Noumea nu:m'eI@ Oahu oU'A:hu: Ohio oUh'aIoU @@ -2546,6 +2583,7 @@ Baez baI'Ez Bambi bambi: Barack ba2rA:k Barbara bA@b@r@ +Betsy bEtsI Boris b0rIs Brien braI@n Candace kandIs @@ -2560,6 +2598,7 @@ Cheri Se@r'i: Cherie Se@r'i: Chloe kloUI Chris krIs +Cleo kli:oU Connie k0nI Connor k0n3 Daphne dafnI @@ -2573,10 +2612,12 @@ Dinah daIn@ Dominic d0mI2nIk Donaghy d0n'hi: Doris d0rIs +Dorothy dO@r@Ti Dougall du:g@L Dylan dIl@n Edith i:dIT Elizabeth I2lIz@b@T +Emily EmI2lI Emma Em@ Emmy EmI Etheridge ET@-rIdZ @@ -2593,8 +2634,7 @@ Graeme greI@m Graham greI@m Hadrian heIdri:@n Harriet hari@t -Hugh hju: -Hughes hju:z +Heidi haIdi Huw hju: Iain i:@n Ian i:@n @@ -2627,6 +2667,7 @@ Leanne li:'an Lenore lEn'o@ Leroy li:rOI Liam li:@m +Lois loUIs Louis lu:I Louise lu:w'i:z Madeline mad@lI2n @@ -2676,6 +2717,7 @@ Rhys ri:s Rihanna rI'A:n@ Roderick r0drIk Rosario roUz'A@rIoU +Russell rVs@L Sabina sa2bi:n@ Sabine sa2bi:n Samantha s@manT@ @@ -2697,6 +2739,7 @@ Stuart stju:3t ?3 Stuart stu:3t Suzy su:zI Theresa t@ri:z@ +Therese t@ri:z Thomas t0m@s Tina ti:n@ Tracy treIsI @@ -2709,10 +2752,12 @@ Zoe zoUI Andromeda andr'0mId@ Buchanan bju:k'an@n Campbell kamb@l +Carnegie kA@nEgI Cthulhu k@-Tu:Lu: Chrysler kraIzl3 Disney dIznI Dolce d0ltSeI +Dvorak d@-vo@Zak Hades heIdi:z Patel pa2tEl Primavera pri:m@v'e@r@ @@ -2763,6 +2808,7 @@ of 0v $u $only (of a) @v@ $nounf (of an) @v@n $nounf (of which) 0vwItS $2 $pause +(of the) %0vD@2 $nounf ?6 (of the) %VD@2 $nounf ?6 (of which) VvwItS $2 $pause @@ -2811,7 +2857,7 @@ from fr0m $u (from which) %fr0m||w'ItS $pause up ,Vp $strend2 down ,daUn $only $strend2 -by baI $u +by baI $u+ across @kr0s $u2 $strend2 per p3: $u (per cent) p3||s'Ent @@ -2843,7 +2889,7 @@ thence DEns //aux. verbs -be %bi: $pastf $only +be bi: $pastf $only $u+ been ,bi:n $pastf $only ?3 been ,bIn $pastf $only being ,bi:IN $pastf $only $strend2 @@ -2916,7 +2962,7 @@ might ,maIt $verbf $strend2 $only (might have) maItha2v $pastf $u1+ (might have to) ,maIth'avt@5 $verbf $atend -have %hav $pastf $only $strend2 +have hav $pastf $only $u $strend2 haves havz (have been) %hav%bIn $pastf has %ha2z $pastf $only @@ -2956,6 +3002,9 @@ did dId $verbf didn't dIdnt $verbf done dVn +make m,eIk $strend2 $only +made m,eId $strend2 $only + putting pUtI2N put ,pUt $onlys $strend2 @@ -3024,7 +3073,7 @@ your jO@ $u $nounf $only their De@ $u $nounf $only theirs De@z -none n0n +none nVn noone noUw0n anyone EnIw0n everyone EvrIw0n @@ -3160,6 +3209,7 @@ like laIk $strend2 ?3 amen ,eIm'En ?3 anti antaI ?3 banana ba2nan@ +?3 beta beIt@ ?3 caffeine $2 ?3 comrade k0mrad ?3 commentary k0m@ntErI @@ -3171,7 +3221,6 @@ like laIk $strend2 ?3 err e@ ?3 fortune fO@tS@n ?3 garage ga2rA:Z -?3 happy hapi: ?3 herb 3:b ?3 hurricane h3:@keIn ?3 investigative Inv,EstI2g'eItIv @@ -3182,6 +3231,7 @@ like laIk $strend2 ?3 pasta pA:st@ ?3 patent pat@nt ?3 privacy praIv@sI +?3 respite rEspI2t ?3 semi sEmaI ?3 status stat@s ?3 template tEmpl@t diff --git a/dictsource/en_rules b/dictsource/en_rules index b15d590..81503f7 100644 --- a/dictsource/en_rules +++ b/dictsource/en_rules @@ -39,67 +39,65 @@ .group a - _) a (_ a2 - _) a (- 'eI + a a + _) a's (_ eIz -) a (- a2 + _) a (- 'eI _) a (-half a2 - _) a (_D ,eI - _) a (_- eI - _) a's (_ eIz - D_) a (_ eI - a a - XC) a (_ A: + sw) a (B 0 a (Be# eI + w) a (Be# eI a (BeCo_ a - a (BerC a a (BerA a - @) a (Bia 'eI - @) a (Biu 'eI + a (BerC a a (Bet a + @) a (Bia 'eI a (Bing E + @) a (Biu 'eI + a (Bo_ 'A: XC) a (By_ eI a (Ca_ 'A: + a (Cability eI a (Cable 'eI a (Cably 'eI - a (Cability eI - a (Cible 'eI n) a (Cal eI - _) a (ve a - _) any EnI2 - _) a (von eI + a (Cible 'eI &) a (_ @ + _) a (_ a2 &b) a (_ =@ + D_) a (_ eI + XC) a (_ A: grandC) a (_ A: + _) a (_- eI + _) a (_D ,eI aa A: - aa (a a: aa) aa a: + aa (a a: aar 'A@ - a (Bo_ 'A: - XC) a (ble eI - CCC) a (ble eI - _en) a (bl 'eI - _dis) a (ble 'eI - _un) a (ble 'eI + w) a (b 0 r) a (ciA eI _r) a (cis eI + w) a (d 0 + ow) a (d @ ae i: - ae (val 'i: aea i@ @) aed (_S2 d - _) ae (on i: - _) aer (o e@ ae (l eI h) ae (m i: h) aemorrh Em3r + _) ae (on i: aer e@ - _c) aer %e@ r) aer 'A@ + _c) aer %e@ + _) aer (o e@ _) aero e@roU aero (plan e@r@ aero (sol e@r@ m) ae (st aI - ah (_ A: + ae (val 'i: + sw) a (g a ah (C A: + ah (_ A: &) ah (_ @ m) a (hog @ m) a (jes a @@ -109,80 +107,75 @@ @) a (ki_ 'a @) ak (ia ak aku (_ 'A:ku: + sw) a (m_ a + sw) a (nk a ao eI0 - ao (_ =aU m) ao aU t) ao aU - aor eI'o@ + ao (_ =aU g) ao (l eI@ + aor eI'o@ m) ao (ri aU _) a (qu %a aqu (a akw aqua (t @kwa aque (o eIkwI aqui akwI + w) a (s 0 squ) a (sh 0 a (sion eI er) a (sur eI + w) a (tc 0 + w) a (ter O: l) a (th aa + sw) a (th eI a (the_+ eI p) a (tien eI + irr) a (tio a a (tion 'eI - @) a (tious 'eI _r) a (tion a - irr) a (tio a n) a (tional a + @) a (tious 'eI n) a (tur eI n) a (tura a sign) a (ture I st) a (tus eI - _) aw (a+ a2w - _) aw (ok a2w + _) a (ve a + _) a (viat eI + _) a (von eI aw O: a (wA a + _) aw (a+ a2w awal O:l + a (way_ @ + _) awe O: awe (B O: awe (_ O: - _) awe O: _) aw (f O: - _) aw (k O: - @) awi (_ 'A:wI - a (way_ @ _) a (wh@ a2 - _) a (x a - _) a (x+ a + @) awi (_ 'A:wI + _) aw (k O: + _) aw (ok a2w C) a (x+ a + _) a (x+ a ay eI _) ay aI + w) ay eI _) ayle eI@L _) ayr e@ - g) a (zeC% @ h) a (z eI - h) a (zar 'a l) a (z eI + sw) a (z A: r) a (zA eI + h) a (zar 'a + g) a (zeC% @ + @k) aze (_ 'A:zI @) a (zi_ 'A: + a (zide 'eI br) a (zil a bl) a (zon eI r) a (zor eI - sw) a (B 0 - sw) a (g a - sw) a (m_ a - sw) a (nk a - sw) a (th eI - sw) a (z A: - w) a (Be# eI - w) a (b 0 - w) a (d 0 - ow) a (d @ - w) a (s 0 - w) a (tc 0 - w) a (ter O: - _) a (viat eI - w) ay eI - @k) aze (_ 'A:zI a (zy eI - a (zide 'eI a (zz_ 'a .group ab @@ -210,6 +203,11 @@ able eIb@L abling 'eIblIN ably eIblI + _en) ab (l 'eIb + XC) ab (le eIb + CCC) ab (le eIb + _un) ab (le 'eIb + _dis) ab (le 'eIb ab (neg ab ab (olit ,ab _) ab (ori ,ab @@ -495,6 +493,7 @@ al (ien eIl _) al (i al _) al (ig a2l + X) al (in eIl _) ali (Be a2laI &) ali (sC_ @lI &) al (isCic @l @@ -628,6 +627,7 @@ amaz (o am@z ambi (d ambI ch) am (b eIm + ambiv amb'Iv fl) ame eIm As) ame (_ 'A:mE _) ame (l a2mi: @@ -646,6 +646,7 @@ amoeb a2mi:b f) amil amIl f) am (ous eIm + &g) am (ous =a2m &) am (ent @m &) ame (nta @m'E _) ame (nt a2mE @@ -732,6 +733,7 @@ ch) ang (e eIndZ ch) anging eIndZIN d) ang (er eIndZ + m) angel aNg@L r) ang (e eIndZ r) anging eIndZIN r) anged (S1 d @@ -752,6 +754,7 @@ _) anti (@P4 ,antI // prefix ant (iq ant anti (ci ant'I + _) any EnI2 an (za 'an .group ap @@ -781,7 +784,7 @@ app (licab a2p app (reh ap apres apreI - _) apprec (i a2pri:S + _) apprec (L02 a2pri:S _) ap (ri eIp ap (ro eIp _) ap (s ap @@ -877,8 +880,9 @@ ch) ar (it ar ph) ar (i ar m) ar (i @r - m) ar (ig ar - m) ar (inaC ar + _m) ar (i ar + m) ar (in @r + _m) ar (inaC ar m) ar (iner ar m) ar (io ar htm) ar e@ @@ -891,7 +895,7 @@ &) ar (in_ @r v) ar (iA e@r @) ar (ity ar - ar (iu 'e@r + ar (iu+ 'e@r arom (at a2roUm arre (_ A@ arred (_ A@d @@ -1285,6 +1289,7 @@ ch (é+ S ch (ef S ch (em k + chement (_ =SmO~ ch (ev S chez SeI Ca) ch (e S @@ -1294,7 +1299,6 @@ e) ch (el S cli) ch S fi) ch S - li) ch k ni) ch S clo) ch S _o) ch (e S @@ -1461,6 +1465,7 @@ d (d _) d' (AP2 d @@e) d (_S1 d // suffix + db (_ d,i:bi: ddh d dj dZ dg (_ dZ @@ -1535,6 +1540,7 @@ de (pol d%i: de (pop d%i: depo (siti dEp@ + de (preca dE de (pt dE de (put dE _) de (rai dI2 @@ -1646,34 +1652,50 @@ .group e e E - &) e (_ - XC) e (_N i: + e'er e@ + &Cr) e's (_ @z + &C) e's (_S2i z + &c) e's (_S2i Iz + &f) e's (_S2i s + &g) e's (_S2i Iz + &k) e's (_S2i s + &p) e's (_S2i s + &r) e's (_S2i z + &s) e's (_S2i Iz + &t) e's (_S2i s + &x) e's (_S2i Iz + &ch) e's (_S2i Iz + &ph) e's (_S2i Iz + &sh) e's (_S2i Iz + &th) e's (_S2i z XC) e (Be_ i: - @) e (Cia_ 'i: e (Bo_ 'i: e (Boe_ 'i: - acB) e (_ %I + @) e (Cia_ 'i: e (Cic_ E e (Cical 'E e (CiuB i: - t) ech (_ Ek - m) e (chanic I - @@) eble (_ @b@L + &) e (_ + acB) e (_ %I + XC) e (_N i: vert) e (b I - e (bria i: + @@) eble (_ @b@L cel) e (bra @ + e (bria i: + t) ech (_ Ek + m) e (chanic I sp) e (cia E sp) e (cies i: _) e (cl %I - _) eco (s i:koU econo (m Ik'0n@ econo (mic i:k@n'0 + _) eco (s i:koU &) ecy (_ @s%I ee i: coff) ee I ee (m 'i: - eer 'i@3 t) ee (n_ 'i: + eer 'i@3 ch) eese i:z d) e (fault i: e (ffec %I @@ -1681,30 +1703,23 @@ efier (_ I2faI3 e (ful @@) efy (_ I2faI - &) eg (y @dZ - @) e (gic 'i: l) e (gal i: r) e (gal i: - l) e (git @ int) e (ge I - int) e (gra I - n) e (got I2 + @) e (gic 'i: l) egion i:dZ@n - egy (pt i:dZI + l) e (git @ + n) e (got I2 + int) e (gra I n) e (gro i: + &) eg (y @dZ + egy (pt i:dZI eh (K eI - ei eI - _) ei aI - c) ei i: _) e (jA %I v) ej (_ eI - &) e (m_ @ - @) e (mber 'E - @@) e (ment_ e (me_ i: _el) e (men I - e (mail i: - f) e (male i: + @@) e (ment_ e (meou i: _C) e (mur i: &) e (n @ @@ -1712,41 +1727,23 @@ Ah) e (n E ll) e (nge I e (o I2 - f) eo i: - _) e (phem %I cr) e (pe+ E + _) e (phem %I _) epi EpI _) epider EpId'3: _) ep (isC I2p ep (ox I2p - e (qual i: + fr) e (q i: _) e (qua i: + e (qual i: _) e (quat %I - fr) e (q i: _s) e (que i: e (quip %I - e (quiv %I - e'er e@ + equiv %IkwIv h) e (sion 'i: - &f) e's (_S2i s - &k) e's (_S2i s - &p) e's (_S2i s - &t) e's (_S2i s - &c) e's (_S2i Iz - &g) e's (_S2i Iz - &ch) e's (_S2i Iz - &ph) e's (_S2i Iz - &s) e's (_S2i Iz - &sh) e's (_S2i Iz - &th) e's (_S2i z - &r) e's (_S2i z - &x) e's (_S2i Iz - &C) e's (_S2i z - &Cr) e's (_ @z @) e (tio i: discr) e (tion E eu ju: - d) eu (ts OI r) eu (d OI eu (m_ i: s) eu (m_ 'i@ @@ -1755,22 +1752,23 @@ eur (_ '3: ?3 eur (_ 'U@ ?5 eur (_ 'VR - &) eus (_ =I2@s _) euro jU@roU _) euro (pe jU@r-@ + &) eus (_ =I2@s + d) eu (ts OI ew ju: - ew (_ ju: - j) ew (+ u: + _s) ew u: ?3 d) ew u: ?3 n) ew u: ?3 t) ew u: - j) ewe (l u:@ + j) ew (+ u: l) ew (+ u: r) ew (+ u: - _s) ew u: + ew (_ ju: _s) ew (_ oU - e (work eway (_S3 weI + j) ewe (l u:@ + e (work @) ez (_ =Ez .group ea @@ -1909,6 +1907,9 @@ .group ei + ei eI + _) ei aI + c) ei i: l) eice (st E eich aIx eigh eI @@ -1974,6 +1975,10 @@ .group em _) em %Em _) em (a I2m + &) em (_ @m + em (ail i:m + f) em (ale i:m + @) em (ber 'Em em (ana Em emba (s Emb@ em (blem Em @@ -2014,6 +2019,7 @@ en (core 0n &) ency (_ @ns%I ency (cli %EnsI + en (dA_ 'En _) en (d En _) en (da %En eg) en (d @n @@ -2033,6 +2039,7 @@ engin EndZIn eng (_ 'EN // place names enging EndZIN + eng (th EN en (ig En en (igma_ %En &) enine @ni:n @@ -2110,6 +2117,7 @@ _) en (ough I2n .group eo + f) eo i: @@) eo (_ 'eIoU g) eo I20 eo (d_ aU @@ -2246,7 +2254,7 @@ z) er (o i@r _C) er (o_ i@r er (rA E - err (_ 3: + err (_N e@ .group es &) es (_S1i z @@ -2277,6 +2285,7 @@ es (cape %Es es (capi %Es _) es (p@ %Es + _) es (peak i:s es (peci I2s _) es (pl Es _) es (tab I2s @@ -2472,7 +2481,6 @@ gue (_ g _) gue gE _) guer (n g3: - ar) gue gju: .group h h h @@ -2510,220 +2518,146 @@ .group i i I + ntell) i I _) i' %aI - XC) i (_ aI - b) i (_ aI - c) i (_ aI - c) is (_ Is - d) i (_ =I - @@h) i (_ =I - h) i (_ =aI - &sk) i (_ =I - i (CCi_ 'I - XC) i (Ca_ i: - @) i (Cate_ =I - XC) i (Co_ i: i (Be# aI i (Bee I i (Bel_ I i (Bet_ I + i (CCi_ 'I + XC) i (Ca_ i: + @) i (Cate_ =I + &) i (Cenc I + &) i (Cent I @) i (Cer I XC) i (Cer_ aI - i (ani_ I - i (ber_ aI - i (der+_ aI @) i (Cing aI - &) i (Cent I - &) i (Cenc I + XC) i (Co_ i: _) i (Cy_ aI XC) i (Cy_ aI - _p) i (ty_ I - ntell) i I + _l) i (Cy_ I + b) i (_ aI + c) i (_ aI + d) i (_ =I + h) i (_ =aI + XC) i (_ aI + &sk) i (_ =I + @@h) i (_ =I _) i (a aI - _) i (b aI - _) i (c aI - _) i (d aI - i (deo I - _) i (di I - C) i (ler aI - _) i (o aI &) ial (_ =I2@l + i (ani_ I + _) i (b aI @) ibab aIb@b - @) ible (_S4ev @b@L - @) ibly (_S4efv @bl%I - i (bilit I l) i (bel aI + l) i (ber I + scr) i (ber aI + i (ber_ aI t) ibe (t Ib'E + i (bilit I b) i (ble_ aI + @) ible (_S4ev @b@L + @) ibly (_S4efv @bl%I i (bo_ i: v) i (br aI - f) i (bre aI _l) i (br aI + f) i (bre aI _l) i (bre i: - l) i (ber I - scr) i (ber aI @) i (butive 'I @) i (butor 'I + _) i (c aI &) i (c_ =I - &) i (ciCe_ =I &) i (ca_ =I - &) ico (_ =I2koU &) i (cal =I - i (cial 'I - ician 'IS@n - @) i (ce_ I2 - @) i (ced_ I2 - @) i (cence I pr) i (ce aI - ent) i (ce aI adv) i (ce aI dev) i (ce aI + ent) i (ce aI + @) i (ce_ I2 + @) i (ced_ I2 + @) i (cence I _) ich Ik + &) i (ciCe_ =I + i (cial 'I + ician 'IS@n @) i (cip 'I + &) ico (_ =I2koU i (cus_ =I - _) id (_ aIdi: - _) idea aId'i@ + _) i (d aI + ir) i (d I acc) i (d I + _) id (_ aIdi: c) i (dal 'aI fr) i (day aI - _) i (dle aI - br) i (dl aI - _s) i (dl aI + _) idea aId'i@ f) i (del I2 - br) i (dg I - ir) i (d I + i (deo I _s) i (der aI + i (der+_ aI i (der_+ aI + br) i (dg I + _) i (di I + _s) i (dl aI + br) i (dl aI + _) i (dle aI @) i (do_ 'i: - ifier (_ IfaI@ man) ife (s IfE - &) ify (_ =I2faI if (icAnC 'If + ifier (_ IfaI3 r) i (fl aI st) i (fl aI - igeo IdZ@ - + &) ify (_ =I2faI + i (genous 'I n) ihi aI|@ ii (_ IaI f) i (j i: h) i (j aI - @) illa (_ 'Il@ @) ila (_ 'Il@ - l) il (ah_ aIl - _) il (l %I - _) ill (_ Il - _) il (ln I - _) il (lust I _C) i (lage aI - ch) i (ld aI - ch) i (ldr I + l) il (ah_ aIl _m) i (ld aI _w) i (ld aI + ch) i (ld aI w) i (lderC I + ch) i (ldr I + sacr) ile IlI i (leA I &) ile (ge @lI - sacr) ile IlI - @) i (less I s) i (len aI + C) i (ler aI + @) i (less I + _) il (l %I + _) ill (_ Il + @) illa (_ 'Il@ + _) il (ln I + _) il (lust I _C) i (lo aI _k) i (lo I - _l) i (Cy_ I &) ily (_S2i l%I - l) i (m@ I - cl) i (m aI - l) ime aIm - l) i (mer I - d) ime (ns aImE - im (ent+ Im - ime (ter_ Imi: - ime (tre Imi: - @) i (metr I - s) imile 'ImI2lI - _pr) i (ma aI - sh) i (ma_ 'i: - i (mum I @) i (ness I - io (_ =I2oU -?7 io (_ =i:oU - b) io aIoU - b) io (logy aI0 - v) io aI0 i (o I2 + _) i (o aI ?7 i (o i: - io (li_ I2'oU - &) ion (_ =i@n -?8 &) ion (_ =IVn - n) ion =i@n - v) io (l aI@ - g) io (n @ - m) io (n I20 - sh) io (n @ - _) io (n aI0 - _l) ion aI@n - z) io (n aI@ - r) ior (_ I3 - &) ior (+ i@3 - &) ior (_ j3 - iority I'0rI2t%I - iou (rA j@ - iour (K j3 - @) ious (_ =I2@s - ioux u: - _r) io (t aI@ - io (t_ I|@ ipede Ipi:d _s) i (ph aI - i (que_ 'i: i (qu_ i: - @) i (scenC 'I - &) i (zabl aI - &) i (sabl aI - @) is (co_ 'Is - _) is (lan aI - _) is (le aI - _) is (o aIs - is (o_ aIz - ise (_ aIz - iser (_ aIz3 - @) ism (_S3de Iz@m - an) ism (_S3d Iz@m - @iB) ism (_S3d Iz@m - is (er+_ aIz - iz (er_ aIz - prAm) is Is - @Cs) is (_ =Is - ize (_ aIz - ise (d_ aIz - ize (d_ aIz - isa (tion aIzeI - iza (tion aIzeI -? 3 isa (tion @zeI -? 3 iza (tion @zeI - _d) i (se I2 - &) ish (_ I2S - i (sive aI - is (land aI - is (le_ aI - @) iste (_ 'i:st - @) is (tic 'Is - chr) i (st_ aI - adv) is aIz - v) is (coun aI - is (or_ aIz - issimo (_ 'IsImoU - @) istan (_ =Istan - @) istani (_ Ist'A:nI - r) is (y_ =@s - ithe (_ aID + i (que_ 'i: i (tion 'I - &) ius =I2@s + _p) i (ty_ I &) iu (m =i@ + &) ius =I2@s i (wo 'i: C) i (x++ I s) i (zA aI + &) i (zabl aI + iza (tion aIzeI +?3 iza (tion @zeI + ize (_ aIz + ize (d_ aIz i (zen I2 + iz (er_ aIz p) izz (a i:t|s + .group ia XC) ia aI|@ &) iac (_ =Iak @@ -2784,7 +2718,7 @@ p) ie (_ aI pp) ie (_ I ie (f i: - iege i:dZ + ieg (e# i:dZ ie (go I'eI ieh (C i: iei (_ i:aI @@ -2818,7 +2752,7 @@ ie (t aI@ @) ie (th i@ iesta i:'Est@ - iette I2'Et + ie (tt I2'E @) iety 'aI@t%I l) ieu u: l) ieu (te %Ef @@ -2830,7 +2764,6 @@ ies (_S2i z spec) ies (_ i:z ser) ies (_ i:z - _ar) ies (_ i:z iesc I2Es &) iest (_S3i @st pr) ie (st i: @@ -2843,6 +2776,7 @@ am) ig (a_ i:g t) ig (e+ aIg t) ig (r aIg + igeo IdZ@ igh (t aI h) igh aI n) igh aI @@ -2868,8 +2802,20 @@ igu (_ 'i:g .group im + cl) im aIm _) im (@ %Im + l) im (@ Im + _pr) im (a aIm + sh) im (a_ 'i:m im (age Im + l) ime aIm + d) ime (ns aImE + im (ent+ Im + l) im (er Im + ime (ter_ Imi: + @) im (etr Im + ime (tre Imi: + s) imile 'ImI2lI im (it Im _) imm (@ %Im imm (at ,Im @@ -2885,30 +2831,32 @@ im (plant_ Im im (ple Im im (plica Im - impo (ten Imp@ im (portu ,Im + impo (ten Imp@ im (pregna ,Im im (presa ,Im im (provis Im im (pulse_ Im ?3 s) im (ult aIm + im (um Im + .group in - @) ing (_+S3dve I2N - @) ings (_S4dve I2Nz - @) ingly (_S5dve I2Ng-lI - @) ingment (_S7dve I2Ng-m@nt - logu) ing (_S4v I2N - x) ing (_+S3v I2N - el) ing (_+S3dv I2N - @@om) ing (_S3dv I2N - en) ing (_S3v I2N - en) ings (_S4v I2Nz - en) ingly (_S5vf I2Ng-lI - er) ing (_S3v I2N - er) ings (_S4v I2Nz - er) ingly (_S5vf I2Ng-lI - er) ingment (_S7v I2Ng-m@nt + @) ing (_+S3dve IN + @) ings (_S4dve INz + @) ingly (_S5dve INg-lI + @) ingment (_S7dve INg-m@nt + logu) ing (_S4v IN + x) ing (_+S3v IN + el) ing (_+S3dv IN + @@om) ing (_S3dv IN + en) ing (_S3v IN + en) ings (_S4v INz + en) ingly (_S5vf INg-lI + er) ing (_S3v IN + er) ings (_S4v INz + er) ingly (_S5vf INg-lI + er) ingment (_S7v INg-m@nt Br) ing (_ IN ?7 &) in (_ @n @@ -2955,6 +2903,7 @@ _) in (k IN _) in (l In _) in (m In + _) inn (K In _) inno (ce In@ _) inno (v In@ _) inn (um %In @@ -3076,6 +3025,34 @@ _) intra Intr@ _) intra (CC %Intra +.group io + io (_ =I2oU +?7 io (_ =i:oU + b) io aIoU + b) io (logy aI0 + v) io aI0 + io (li_ I2'oU + &) ion (_ =i@n +?8 &) ion (_ =IVn + n) ion =i@n + v) io (l aI@ + g) io (n @ + m) io (n I20 + sh) io (n @ + _) io (n aI0 + _l) ion aI@n + z) io (n aI@ + r) ior (_ I3 + &) ior (+ i@3 + &) ior (_ j3 + iority I'0rI2t%I + iou (rA j@ + iour (K j3 + @) ious (_ =I2@s + ioux u: + _r) io (t aI@ + io (t_ I|@ + .group ir _) ir (a I2r ir (a_ 'i@r @@ -3124,6 +3101,45 @@ ir (ru I iry (_ aI@rI + +.group is + adv) is aIz + prAm) is Is + b) is (_ Is + c) is (_ Is + @Cs) is (_ =Is + &) is (abl aIz + isa (tion aIzeI +?3 isa (tion @zeI + @) isc (enC 'Is + @) is (co_ 'Is + v) is (coun aI + _d) is (e I2s + ise (_ aIz + ise (d_ aIz + is (er+_ aIz + iser (_ aIz3 + &) ish (_ I2S + is (ive aI + _) is (lan aI + is (land aI + _) is (le aI + is (le_ aI + an) ism (_S3d Iz@m + @iB) ism (_S3d Iz@m + @) ism (_S3de Iz@m + _) is (o aIs + is (o_ aIz + is (or_ aIz + issimo (_ 'IsImoU + chr) is (t_ aIs + @) istan (_ =Istan + @) istani (_ Ist'A:nI + @) iste (_ 'i:st + @) is (tic 'Is + r) is (y_ =@s + + .group it _) it' %It _m) it (o aIt @@ -3158,7 +3174,7 @@ x) ite (_ aIt it (erat It l) it (er It - ithe_ aID + ithe (_ aID l) ithe aID l) ith (er ID it (i_ 'i:t @@ -3210,7 +3226,6 @@ .group j j dZ j (j - n) j (a_ j _) jere (C dZEr@ _) jes (ui dZEz _) joa (n@ dZoU'a @@ -3334,6 +3349,8 @@ @) men (_ mEn &) ment (_S4 m@nt &) ments (_S5 m@nt|s + u) ment (_ m@nt + u) ments (_ m@nt|s ?8 &) ment (_S4 mEnt ?8 &) ments (_S5 mEnt|s mEnt (_ m@nt @@ -3354,6 +3371,7 @@ @) most(_S4 moUst &) mouth (_ m@T _) multi mVltI + _) multi (@@P5 m,VltI .group mi millen mI2lEn @@ -3389,7 +3407,7 @@ n) n &ia) n (_S1 n &ia) ns (_S2 nz - @) name (_ neIm + @) name (_S4 neIm _) nano (P4 n,anoU nause nO:sI necessit n@sEsIt @@ -3429,6 +3447,7 @@ ng (e ndZ ng (y Ng mA) ng (y ndZ + u) ng (y ndZ nged ndZd o) nged Nd spo) nged ndZd @@ -3454,48 +3473,47 @@ .group o o 0 _) o'(P2 %oU // prefix - o (Be# oU - o (Cet_ 0 - o (BenC oU - o (BeCo_ 0 - o (Bing oU - o (BiA 'oU + o'er o@ + o (Ba_ 'oU _) o (Bal oU XC) o (Bal oU - o (_ oU - @@C) o (_ =oU - ig) o (_ oU - o (Ba_ 'oU + o (Be# oU + o (BeCo_ 0 + o (BenC oU o (Beon 'oU + o (BiA 'oU + o (Bing oU XC) o (Bus_ oU + o (Cemic 0 + o (Cet_ 0 @) o (Ci_ 'oU - o (Co_ 'oU - o (Coist 'oU - @) o (lo_ 0 o (Cic_ '0 o (Cical '0 - o (Cemic 0 - of (fen @ - oa (_ 'oU@ + o (Co_ 'oU + o (Coist 'oU + o (_ oU + ig) o (_ oU + @@C) o (_ =oU oa oU - oar (_ o@ - oar o@ - o (atia oU + oa (_ 'oU@ br) oa (d O: + oar o@ + oar (_ o@ + cr) o (at oU o (ba oU t) o (bacc @ o (bed oU + _r) o (ber 0 _) o (bes %oU o (bic_ 'oU n) o (bil oU - n) o (bl oU _m) o (bil oU o (bje %0 _) o (bl %0 + n) o (bl oU o (bliga 0 o (bligato %0 o (blo 0 - _r) o (ber 0 _r) o (bo oU _) o (bs %0 _) obs (er %0bz @@ -3505,155 +3523,145 @@ o (bu %0 o (by_ oU f) o (cA oU - ff) o (cA @ _l) o (cA oU + _v) o (cA oU + ff) o (cA @ l) o (cat %oU + o (ccasi @ o (cclu @ + occur @k3: +?5 occur @kVR + occurr @k3: +?5 occurr @kVR tr) och oUk - _v) o (cA oU + d) o (cil oU &%C) ock (_ @k l) o (com ,oU ocrates (_ '0kra2ti:z o (cre_ 'oU - cr) o (cu oU _h) o (cu oU - o (ccasi @ - d) o (cil oU - occur @k3: - occurr @k3: -?5 occur @kVR -?5 occurr @kVR + cr) o (cu oU + cust) o (d @ + k) o (dA oU meth) o (d_ @ peri) o (d_ @ - cust) o (d @ - cust) o (di 'oU o (da_ oU - k) o (dA oU d) o (dec %oU m) o (del 0 m) o (der 0 m) o (dest 0 - odo (rA oUd@ - mm) o (dor @ + cust) o (di 'oU odor oUd3 + mm) o (dor @ + odo (rA oUd@ odour oUd3 oe oU - o'er o@ - oea (_ i@ - oer oU@ - oe (soph I2 sh) oe (+ u: + oea (_ i@ _) oe (d i: + p) oe (m oUI + oer oU@ _) oe (s i: &) oe (s_S2 z - f) oe (tA i: - p) oe (m oUI + oe (soph I2 p) oe (t oUI + f) oe (tA i: p) oe (ti oUE oe (ve ,oU'E -?3 _) o (ff O ?3 &) o (ff O +?3 _) o (ff O ?3 c) o (ff O -?3 o (ft O - o (ffici @ + of (fen @ o (ffic 0 + o (ffici @ +?3 o (ft O o (gan_ oU + @l) oge (_ 0g &) o (gen_ @ - hom) o (gen '0 ogeni (c oUdZ'EnI + o (genous '0 + o (geny '0 r) o (ger 0 - l) o (gy @ l) o (gies @ r) ogue oUg v) ogue oUg @@) ogue 0g - @) oged 0gd + l) o (gy @ oh oU o (hA oU j) oh (n 0 oi OI + oi(na_ 'OI oia OI@ oi (c oUI2 oi (ce OI oi (ck OI - oi(na_ 'OI + c) o (inci %oU o (ing oU d) o (ing u: - c) o (inci %oU - oire wA@ oir wA@ + oire wA@ @) ois (_ wA: o (ism oU @) o (ist oU oix (_ wa o (ky_ oU + @) o (lo_ 0 ?3 g) o (ng O ?3 r) o (ng O ?3 s) o (ng O t) o (ngu V - &) oped (_ @pd - c) oped (_ oUpd - _) o (per 0 - _) ope (n oUp@ - un) ope (n oUp@ - @) opol (L02 '0p@l - opolitan @p'0lIt@n - oppor (tu %0p3 - opp (res @p - pr) o (pe 0 appr) o (p oU bish) o (p @ &) o (p_ @ - sh) o (p_ 0 - fl) o (p_ 0 p) o (p_ 0 r) o (p_ 0 t) o (p_ 0 + fl) o (p_ 0 + sh) o (p_ 0 + pr) o (pe 0 + &) oped (_ @pd + c) oped (_ oUpd + _) ope (n oUp@ + un) ope (n oUp@ + _) o (per 0 &) ophe (_ =@f%I - s) o (phistic @ &) o (pher =@ + s) o (phistic @ o (pini @ - o (se_ oU -?3 b) o (ss O -?3 m) o (ss O -?3 l) o (ss O -?3 r) o (ss O -?3 c) o (st O -?3 fr) o (st O + @) opol (L02 '0p@l + opolitan @p'0lIt@n + oppor (tu %0p3 + opp (res @p + piv) o (t @ &g) ot (_ @t rr) ot (_ @t n) o (ta oU - n) o (tor oU r) o (ta oU - r) o (to oU t) o (ta oU - piv) o (t @ - o (tat oU - _C) o (ti oU - m) o (tiv oU c) o (tan oU + o (tat oU p) o (tenti @ - n) otic (A oUtI2s - o (tion oU - o (ther+ V b) o (th oU - b) o (ther 0 -?3 cl) o (th O - l) oth (i oUD + betr) oth oUD ?3 m) o (th O +?3 cl) o (th O cl) othe oUD - betr) oth oUD tr) othe oUD - l) oth (ian oUD + b) o (ther 0 _r) o (ther 0 - ph) oto oUtoU - ph) o (ton oU - ph) otocop oUt@k0p - ph) oto (grapher @t0 - ph) oto (graphy @t0 + o (ther+ V + l) oth (i oUD + l) oth (ian oUD + _C) o (ti oU + n) otic (A oUtI2s + o (tion oU + m) o (tiv oU + r) o (to oU pr) oto oUtoU pr) oto (n oUt0 m) otor oUt@ + n) o (tor oU otro (py '0tr@ m) o (x @ o (x++ 0 @@ -3665,6 +3673,7 @@ _) o (zo oU o (zy_ oU + .group ol &st) ol (_ @L ol (and_ oUl @@ -3708,7 +3717,7 @@ olo (gic @l'0 v) olt oUlt w) olv Ulv - _p) oly ,0lI + N_p) oly ,0lI .group om &) om (_ @m @@ -3891,6 +3900,7 @@ @) or (ic_ '0r or (ig 0r &) ored (_ @d + h) ored (_S1 d _f) ore (C O@ f) ore (clo %o@ f) ore (st 0rI @@ -3902,7 +3912,7 @@ _) or (iC 0r @t) ore (_ 3 st) ore (_ o@ - @) orily (_ '0r@l%I + @) orily (_ =@r@l%I h) ori (z @raI h) ori (zont 0rI ?!3 _h) or (o 0r @@ -3944,6 +3954,7 @@ .group os os (al_ 'oUz _l) os (e u:z + ose (_ oUz purp) ose (_ @s c) os (ec oUs c) os (ine_ oUs @@ -3953,6 +3964,12 @@ os (ive 'oUs p) oss (ess @z gr) oss oUs +?3 b) oss Os +?3 l) oss Os +?3 m) oss Os +?3 r) oss Os +?3 c) os (t Os +?3 fr) os (t Os h) ost (_ oUst gh) ost oUst m) ost oUst @@ -3990,7 +4007,6 @@ r) ouge u:Z _) ough O: ough (t O: - ough (* OI ough oU b) ough aU b) ough (t O: @@ -4198,6 +4214,14 @@ p (haza p ph (erd p phila fIla + _) photo (@@P5 f,oUtoU + photo foUtoU + photon foUt0n + photocop foUt@k0p + photo (grapher f@t0 + photo (graphy f@t0 + photo (met foUt'0 + _) phyco f,aIkoU p (hole p sym) pa p@ _) paleo (@P5 p,eIli:oU @@ -4247,6 +4271,8 @@ per (v@ p3 per (vi p3: per (form p3 + per (fun p3 + per (fus p3 per (su p3 .group pr @@ -4281,7 +4307,7 @@ _) pre (ss prE _) pre (st prE _) pre (u pr%i: - _) pre (val prE + _) prev (al prEv _) pre (vio pri: _) pre (view pri: _) pri (o praI @@ -4425,6 +4451,7 @@ _) re (emP2 r%i: _) re (enP2 r%i: _) re (eqP2 r%i: + _) re (esP2 r%i: _) re (exP2 r%i: referend rEf@r'End re (fug rE @@ -4437,6 +4464,7 @@ _) re (i@P2 r,i: _) rei (c raI _) rei (l raI + rei (s raI _) rele (g rElI2 rele (nt rI2lE rele (v rElI @@ -4489,7 +4517,7 @@ s (s s (sh s _) sch S - sch (em sk + sche (m ski: _) sch (ism sk _) schiz skIts sch (o sk @@ -4615,6 +4643,8 @@ .group su _ca) su Zu: _) sus (A su:z + su (al Zu: + n) su (al sju: _) su (b sV su (bdue s%V su (bmerg s@ @@ -4700,6 +4730,7 @@ tsch tS _) two tu: ttu (r t@ + @) tu (al tSu: @) tu (late =tSU @) tur (A tS@r @) tur (al_ tS=@r @@ -4739,6 +4770,7 @@ ca) th (eri T _e) th (er T th (ern_ D + _) thio T,aIoU th (ith D th (ole th _) th (om@ t @@ -4756,128 +4788,132 @@ .group u u V - u (_ ju: - r) u (_ u: - l) u (_ u: - w) u (_ u: - h) u (_ =u: - u (ga_ 'u: - u (ki_ 'u: - u (ma_ 'u: - u (mo_ 'u: + man) u ju: + _sol) u (C ju: u (CA ju: -?3 d) u (CA u: -?3 n) u (CA u: -?3 t) u (CA+ u: - u (CeCo_ ju: - l) u (CA u: - _l) u (a u: j) u (CA u: - &j) u (CA u: + l) u (CA u: + r) u (CA u: s) u (CA u: - s) u (CA_ 'u: - s) u (le_ ju: w) u (CA u: - w) u (chA u: - vol) u (m ju: - r) u (CA u: + &j) u (CA u: rh) u (CA u: +?3 d) u (CA u: +?3 n) u (CA u: +?3 t) u (CA+ u: + s) u (CA_ 'u: + u (CeCo_ ju: u (CiA 'ju: r) u (CiA 'u: - man) u ju: - _sol) u (C ju: + u (Cu_ u: + u (_ ju: + h) u (_ =u: + L01) u (_ u: + men) u (_ ju: + u (_N u: u (a ju: - u (a_ =ju: + _g) ua wA: + _l) u (a u: r) u (aC+ u: + u (a_ =ju: + s) ua (d weI + s) uag weIdZ @g) ua (ge wI - uary (_ ju:@r%I - r) uary (_ u:r%I + u (al_ ju: g) ua (rA a g) uar (d A@ - _g) ua wA: - s) ua (d weI - s) uag weIdZ + uary (_ ju:@r%I + r) uary (_ u:r%I s) ua (s weI - u (al_ ju: l) u (bri u: - lett) u (ce I _l) u (c u: + lett) u (ce I + w) u (chA u: l) u (ck V - ucul VkjUl n) ucle ju:klI - n) uclear ju:kli@3 ?3 n) ucle u:klI + n) uclear ju:kli@3 ?3 n) uclear u:kli@3 + ucul VkjUl @) u (da_ 'ju: - u (guC V + b) u (ddh U + u (ga_ 'u: f) u (gal 'ju: ug (er_ u:g s) ugge (st @dZE + h) ugh ju: mp) ug (n ju: + u (guC V uh (C u: u (i ju: -?3 t) u (i u: - s) u (i u: - r) u (i u: g) u (i w - &f) ul (_ @L - &f) ully (_ @l%I -?8 &f) ul (_ Vl -?8 &f) ully (_ Vl%I - f) ul (fil %Vl - u (le_ ju: + r) u (i u: + s) u (i u: +?3 t) u (i u: + u (ki_ 'u: + ll) u (l ju: u (lA jU _) u (lA u: + &f) ul (_ @L +?8 &f) ul (_ Vl @) u (la_ =jU - @) u (late =jU @) u (lar =jU - @) u (lum =jU - @) uli (_ =jUlaI - &) u (lous_ =jU - ll) u (l ju: + @) u (late =jU + u (le_ ju: + s) u (le_ ju: + f) ul (fil %Vl j) u (li u: + @) uli (_ =jUlaI b) ull Ul + f) ull Ul + p) ull Ul b) ully UlI + _f) ully UlI + &f) ully (_ @l%I +?8 &f) ully (_ Vl%I + &) u (lous_ =jU b) ul (r Ul + _) ultra (@ ,Ultra + u (lul V + @) u (lum =jU b) ul (w Ul - _f) ully UlI - f) ull Ul - p) ull Ul u (ly u: d) u (ly ju: - u (lul V + vol) u (m ju: + u (ma_ 'u: h) u (man ju: u (me ju: r) um (ent @m - fl) uor u:3 + u (mo_ 'u: u (o ju: + fl) uor u:3 @) uous =ju:@s uoy OI - _) us (_ Vz _) us (A ju:z &) us (_ @s - usua (l ju:Zu: + _) us (_ Vz u (sh V b) u (sh U c) u (sh U p) u (sh U + b) us (iA Iz + b) usiness Izn@s u (sion 'ju: - r) u (sion 'u: l) u (sion 'u: + r) u (sion 'u: p) u (ss U - b) us (iA Iz + usu (al ju:Zu: usurp ju:z'3:p ?5 usurp ju:z'VRp b) us (y Iz - b) usiness Izn@s b) u (tch U + min) u (te I r) u (th u: _) u (til ju: u (tion 'ju: K) u (tri ju: u (ty ju: ?3 d) u (ty u: - min) u (te I vac) uu ju: uu (m ju:@ u (xA+ V @@ -4885,6 +4921,7 @@ uy aI uy (A_ 'u:j + .group ue ue ju: uee ju:i: @@ -4941,24 +4978,20 @@ _) una (b ,Vna2 t) un (e ju:n ?3 t) un (e u:n - _) un (if ju:n un (ani %ju:n _) under (@P5 ,Vnd3 // prefix _) un (deP2 ,Vn _) un (dula Vn _) un (enP2 ,Vn _) un (exP2 ,Vn - _) un (ic ju:n _) un (imP2 ,Vn - _) unin ,VnI2n - un (inj %Vn + _) uni ju:nI + _) un (id ,Vn + _) un (inP2 ,Vn _) un (il ,ju:n _) un (io ju:n _) un (iq %ju:n - _) un (is ju:n - _) un (it ju:n unit (e ju:n'aIt - _) un (iv ju:n _) un (ix ju:n un (i ju:n p) un (ish Vn @@ -5037,6 +5070,8 @@ .group v v v v (v + + @) va (len veI _) vehem vi@m _) vi (brat v%aI vivi (@ vIvI @@ -5063,6 +5098,7 @@ wh (ol h m) w (ich_ B) wing (_ wIN + B) wing (s_ wIN @) wise (_S4 waIz e) with (_ w'ID with (C w%ID @@ -5073,7 +5109,7 @@ ?5 ss) wor (d wVR wor (th_ w3: ?5 wor (th_ wVR - s) w (ick + As) w (ick .group x _) x (C Eks @@ -5083,6 +5119,7 @@ _) x z xio (n kS@ xious =kS@s + xu (a =kSu: .group y y j @@ -5093,7 +5130,6 @@ _) y (n@ V _) y (s@ V C) y (abl I2 - y (y y (C I C) y %I y (ar j @@ -5132,7 +5168,7 @@ d) ynam aInam @C) y (mAn_ I w) y (n I - gl) y (ce I + gl) y (cer I d) yse (n Is@ f) y (_ aI ff) y (_ I @@ -5237,10 +5273,12 @@ Em (_ @m @) E (mber 'E Eme (_ i:m + Em (ic_ 'i:m Ensk (_ 'Ensk En (_ @n ?8 En (_ En En (atA @n + En (dA_ 'En E (ndous E Ener (_ _n@ Ening (_ _nI2N @@ -5283,6 +5321,7 @@ Esque 'Esk E (ss E Ess (_ Es + E (te_ i: E (tric E Etta (_ 'Et@ Ette (_ 'Et @@ -5376,7 +5415,7 @@ ž Z þ T ð D - ñ n^ + ñ _^_ES ' @@ -5396,17 +5435,8 @@ A_) - (_D _ C_) - (_D _ - + plVs - _) ++ (_ plVspl'Vs - \+\+\+) + // ignore + after the first 3 - - \#\#) # (_ _:: - A_) # haS - C_) # haS - \#) # . d0t - D) . (D+ ,pOInt . (. _: \.) . diff --git a/dictsource/eo_list b/dictsource/eo_list index c3078e8..30d23bd 100755 --- a/dictsource/eo_list +++ b/dictsource/eo_list @@ -30,14 +30,14 @@ _0M4 duili'ono _dpt _komo_ // ordinal numbers -_0a a -_0aj aI -_0an an -_0ajn aIn -_0-a a -_0-aj aI -_0-an an -_0-ajn aIn +_#a a +_#aj aI +_#an an +_#ajn aIn +_#-a a +_#-aj aI +_#-an an +_#-ajn aIn // accent names _lig ligat'uRa diff --git a/dictsource/es_rules b/dictsource/es_rules index 8f0899a..7272dc6 100644 --- a/dictsource/es_rules +++ b/dictsource/es_rules @@ -37,6 +37,7 @@ _) d d m) d d n) d d + r) d d .group e diff --git a/dictsource/fr_list b/dictsource/fr_list index af4ca7c..c1a05a3 100755 --- a/dictsource/fr_list +++ b/dictsource/fr_list @@ -24,7 +24,7 @@ // 2006-11-18 Gilles Casse // -// Updated 2009-07-3128 Michel Such +// Updated 2010-02-07 Michel Such // // * Numbers, a few abbreviations and exceptions. // @@ -83,8 +83,8 @@ z zEd // accent names _lig ligat'yr -_acu aksA~tEg'y -_ac2 dublaksA~tEg'y +_acu aksA~tE2g'y +_ac2 dublaksA~tE2g'y _brv br'Ev _ced sed'ij _cir aksA~sirkO~fl'Eks @@ -104,29 +104,29 @@ _cap maZysk'yl _?A l'Etr _?? sE~b'Oll _#9 tabylasiO~ -_#32 Espas +_#32 E2spas -_" gijmE +_" gijmE2 _# djEz _' apostr'Of _( 'uvr@-parA~t'Ez _) f'Erm parA~t'Ez _, virgyl -_- tirE +_- tirE2 _. _|pw%E~ -_/ bar||oblik +_/ bar||o2blik _: d'Y||pw'E~ _; pwE~||virg'yl _< E~feri-Wr _= egal _> syperi-Wr -_? pwE~||dE~terogasj'O~ +_? pwE~||dE~tE2rogasj'O~ _! pwE~||dEksklamasj'O~ -_[ uvr@-_kroSE +_[ uvr@-_kroSE2 _\ b'aksl'aS -_] f'Erm_kroS'E +_] f'Erm_kroS'E2 _^ sirkOnflEks __ sulin^e _` aks'A~_gr'av @@ -134,8 +134,8 @@ _{ uvr_akOlad _| bar_vErtik'al _} f'Erm_akOl'ad ² pw^is'A~s||d'Y -_« uvre||gijm'E -_» fErme||gijm'E +_« uvre||gijm'E2 +_» fErme||gijm'E2 _’ apostr'Of _‘ apostr'Of _µ mikr'o @@ -144,8 +144,8 @@ _§ sEksj'O~ // symbols that are normally spoken when reading text @ _!arobaz % pursA~ $max3 -& _|e $u -_& _e_komErsi'al +& e $u $brk +_& _e_komErsi-'al * asterisk: $max3 + plys $max3 ~ tilde @@ -233,6 +233,7 @@ _dpt virgyl abc $abbrev ac $abbrev +acrobat acrobate $text adn adeEn adsl adeEsEl alt _::alt @@ -248,30 +249,32 @@ cci $abbrev cia $abbrev cio $abbrev cm centimètre $text +collins kolins cpu $abbrev ctrl _::kO~tro2l -dept depart@-mA~ +dept depart@mA~ divx diviks ebay _^_en (e bay) ebay $text edf @deEf -etc Etsetera +etc E2tsetera ghz ZigaErts +(g hz) ZigaErts hmm h@m (http ://) aSt,et,ep'e_ hz _|Erts ibm ibeEm ide $abbrev ip ipe -irc i:_|Er:se -jaws _^_en +irc i:_!Er_!se +jaws dZo3:z kbit kilobit kde $abbrev -kg kilogram +kg kilogramme $text khz kiloErts km kilomètre $text -(km player) ka,EmplEj'Wr -(kmplayer) ka,EmplEj'Wr +(km player) ka,EmplE2j'Wr +(kmplayer) ka,EmplE2j'Wr kw kilowatt $text m. m@siY mbit megabit @@ -283,32 +286,35 @@ mm millimètre $text mme madame $text mn minyt mns minytz2 -(mp 3) _|Empetrwa +(mp 3) _!EmpetrwA mr m@siY nsi $abbrev nsis $abbrev nti $abbrev nvda $abbrev ocr oseEr -oem $abbrev +oem _!,o_!,@_!'Em ogm oZeEm ong oEnZe pci $abbrev +pcmcia $abbrev pda $abbrev philips filips p.s pOstskriptOm qq quelque $text qqs quelques $text ratp $abbrev -riscos rIskoEs +riaa $abbrev +riscos riskoEs sap $abbrev scsi $abbrev -s.t.p silt@:pl'E -s.v.p silvu:pl'E +sos $abbrev +s.t.p silt@:pl'E2 +s.v.p silvu:pl'E2 st s'E~t2 ste s'E~t -stp silt@:pl'E -svp silvu:pl'E +stp silt@:pl'E2 +svp silvu:pl'E2 tva $abbrev uk $abbrev ups ypeEs @@ -317,8 +323,10 @@ usb y:Esbe utc $abbrev utf $abbrev u.s y:Es +virgin virZin vip v,i||,aj||p'i (web visum) webvisum $text +windows windo3z wma $abbrev xfce iksEfse@ xy $abbrev @@ -329,8 +337,6 @@ prof $dot pr professeur $text *dot $capital - - // articles le $nounf $u+ le $verb $verbextend $u @@ -345,29 +351,31 @@ une $nounf $u+ // conjonctions mais $u+ -ou _|u $u +ou u $u $brk eh $u $brk -et _|e $u +en $u +et e $u $brk ni $u car $u car $noun -cependant néanmoins $u+ toutefois $u+ +afin afE~ $u+ $brk avant $u+ -après $u+ +après aprEz2 $u+ (temps en temps) tA~zA~tA~ -alors alOr $u+ -depuis $u+ ainsi $u+ +alors alOr $u+ aussi $u+ +encore $u+ +depuis $u+ certes $u+ dont dO~t2 $u -lorsque lO2rsk@ $u+ -puisque pw^isk@ $u+ -presque $u+ +lorsque lOrsk=@ $u+ +puisque pw^isk=@ $u+ +presque prEsk=@ $u+ que $u+ (parce que) parsk@ $u+ (parce qu'il) parskil $u+ @@ -387,7 +395,7 @@ je $u $verbf tu $u+ $verbf il $u+ $verbf elle $u+ $verbf -y $u $verbf +y $u+ $verbf nous $u+ $verbf vous $u+ $verbf elles $u+ $verbf @@ -468,21 +476,21 @@ parmi $u+ pour $u+ autant $u+ tandis $u+ -dès $u +dès dEz2 $u entre $u+ entre $verb contre $u+ chaque $u+ plusieurs $u+ durant $u+ -avec $u+ +avec $u+ $brk sans $u+ trop trop2 $u+ assez $u+ beaucoup bokup2 $u+ peu $u+ -très $u+ -près $u+ +très trEz2 $u+ +près prEz2 $u+ loin $u+ // negative @@ -508,8 +516,8 @@ pourtant $u+ // auxillary verbs (be, have, can, etc) suis $u+ $verb -es Ez2 $u+ -est Et2 $u+ +es E2z2 $u+ +est E2t2 $u+ sommes $u+ $verb êtes $u+ $verb sont $u+ $verb @@ -525,7 +533,7 @@ sois $u+ $verb soit $u+ ai $u+ $verb -(ai je) EZ=@- $u+ +(ai je) E2Z $u+ as as as az2 $u+ $verb (as tu) aty @@ -559,16 +567,13 @@ d'est d'Est quel $u+ quelle $u+ quelles $u+ -quelque $u+ -quelques $u+ +quelque kElk=@ $u+ +quelques kElk=@z2 $u+ tel $u+ telle $u+ telles $u+ -tout t'ut2 $u+ -toute t'ut $u+ -toutes t'utz2 $u+ -tous $u+ -rien ri-'E~n2 $u+ +tout t'ut2 +rien ri-'E~n2 // Letters which can be words //=========================== @@ -604,13 +609,13 @@ tunis tynis (1 ers) pr@mjez2 (1 ère) pr@mjEr (1 ères) pr@mjErz2 -(1 èrement) pr@mjEr@-mA~ +(1 èrement) pr@mjErmA~ monsieur m@sjY messieurs mesjYz2 montréal mO~real -(n'est ce pas) n'Es@-||p'az2 +(n'est ce pas) n'Es||p'az2 (qu'est ce que) kEsk@ $u absent absA~ adam adA~ @@ -620,12 +625,16 @@ adsltv adeEs'El||tev'e airbus airbuss $text alan alan albinos albinoss $text +alleluia alelui'a +anis anis arte arte auvent ovA~ beta beta -bien bi-E~n2 $u+ +bien bi-E~n2 bis bis bissus bisys +blues _^_en +broglie breuil $text buffer bWfWr bus bys bus by $verb @@ -636,22 +645,29 @@ canyon kanjO2n choeur kWr cocus koky couscous kuskus +delete _^_en dernier dErnjer2 -éloquent ElokA~t2 +éloquent elokA~t2 enfer A~fEr faut fot2 $u+ fier fjer $verb +francis franciss $text fred frEd free fri: fuel fjul +gangster gA~gstEr gars ga gin dZin +granit granitt $text gulf gWlf +gus gys gym Zim hélas elas $u+ -iris iris +karaoke karaoke laser lazEr +listbox listbO2ks malus malys +mai mE2 mailto mEjltu_ mapper _^_en mars mars @@ -660,19 +676,26 @@ mieux mi-Y $u+ mrs _^_en ours urs pataquès patakEs +peter pi:tWr phallus falys polder pOldEr premier pr@mjer2 program _^_en (program files) program||fajlz +query kueri +queries kueri quit _^_en recorder ricordeur $text +requiem rekw^ijEm +revolver revOlvEr +scan skan scanner skaner2 $verb scanner skanWr $noun scanners skanWr shampoing SA~pwE~ sir _^_EN souris suri +stocker stoker2 sus sys sus sy $verb to _^_en @@ -711,24 +734,24 @@ zut zyt // et (t is said) -exocet EgzOsEt +exocet E2gzOsEt fret fr'Et -budget bydZE +budget bydZE2 hamlet hamlEt -knesset knEsEt -lazaret lazarE +knesset knesEt +lazaret lazarE2 margaret margarEt net nEt offset OfsEt set sEt -soviet sOviEt +soviet soviEt stewart sti:wart // urt (t is said) kurt kurt -yaourt iaurt -yoghourt iogurt -yogourt iogurt +yaourt _!i-aurt +yoghourt _!i-ogurt +yogourt _!i-ogurt // ort (t said) short SOrt @@ -741,12 +764,12 @@ kart kart smart smart // irt -(sweat shirt) swEtSW2rt -(sweat shirts) swEtSW2rt -(tee shirt) t,i:S'W2rt -(tee shirts) t,i:S'W2rt -(t shirt) t,i:S'W2rt -(t shirts) t,i:S'W2rt +(sweat shirt) swEtSWrt +(sweat shirts) swEtSWrt +(tee shirt) t,i:S'Wrt +(tee shirts) t,i:S'Wrt +(t shirt) t,i:S'Wrt +(t shirts) t,i:S'Wrt // words from other languages @@ -764,10 +787,10 @@ computer _^_en (cyber link) _^_en debian debjan edit _^_en -emacs Emaks -emacspeak Emakspi:k +emacs E2maks +emacspeak E2makspi:k end _^_en -epson EpsOn +epson E2psOn espeak @spi:k ethernet etErnEt exit egzit @@ -782,7 +805,7 @@ help _^_en hot _^_en in in $u+ inside _^_en -(internet explorer) E~tErn'Et||EksplOr'Wr +(internet explorer) E~tErn'Et||E2ksplOr'Wr klaxon klaksOn let _^_en lite _^_en @@ -839,11 +862,15 @@ vincent vE~sA~ afrikaans afrikans bahamas baamas bangladesh bA~gladES +bayeux bajY bélarus belarys +belize beliz +bissau bisa'o (burkina faso) byrkina||faso burundi burundi +calvados calvadoss $text croatie kroasi -esperanto EsperA~to +esperanto E2sperA~to groenland groEnlA~d guatemala gwAtemala honduras _!O~dyras @@ -853,17 +880,20 @@ lesotho lezoto liechtenstein liStEnStajn malawi malaui mayotte majO2t +nevis nevis niger niZEr oman oman palaos palaO2s samoa samoa +swaziland swAzilA~d leone leO2n koweït kowEjt taïwan tajwAn -texas tEks'as +texas tE2ks'as +tuvalu tuvalu +vanuatu vanuatu venezuela venezyela -(viêt nam) viEtnam +(viêt nam) vi-Etnam wallis wAlis futuna futuna zimbabwe zimbabwe - diff --git a/dictsource/fr_rules b/dictsource/fr_rules index 2725bd3..1a7444c 100755 --- a/dictsource/fr_rules +++ b/dictsource/fr_rules @@ -23,7 +23,7 @@ // 2006-11-18 Gilles Casse // -// Updated: 2009-07-31 Michel Such +// Updated: 2010-02-07 Michel Such // // Letter classes: @@ -37,6 +37,7 @@ .L03 d l m n s t v .L04 c d f g l m n v .L05 g h k l m v w +.L06 l r s .group a @@ -46,19 +47,23 @@ aî E // maître aim (K W~ // faim ain (K E~ // pain - CC) ain (_ E~n2 // prochain arret + Ct) ain (_ E~n2 // certain ami + ch) ain (_ E~n2 // prochain arret ai (_ e // dirai ferai... - _ess) ai (_ E // essai - _vr) ai (_ E // vrai - ais (_ Ez2 // dirais ferais... - ait (_ Et2 // dirait ferait... - aient (_ Et2 // diraient feraient... + _ess) ai (_ E2 // essai + _vr) ai (_ E2 // vrai + ai (b E // faible + ais (_ E2z2 // dirais ferais... + ait (_ E2t2 // dirait ferait... + aient (_ E2t2 // diraient feraient... f) ai (sA @ // faisons faisan a (ill a a (ils_ a a (il_ a - aie (me E // paiement - ai E // aile + aie (me E2 // paiement + ai E2 // aile + ai (L06 E // aile + ai (CAX E // aile am (b A~ // jambon am (p A~ // camp am (m a // programmation @@ -77,28 +82,33 @@ a (nnA a // manne an (K A~ // ancien, élan @@m) an (_ an // tennisman + zm) an (_ an // jazzman L02m) an (_ an lism) an (_ A~ // talisman ulm) an (_ A~ // musulman + ïm) an (_ A~ // caïman _C) aon (_ A~ // faon, paon, taon s) aoul (_ u // saoul s) aou (le u // saoule août ut // août août (i aus // aoûtien aut (_ ot2 + a (ô // saune au o // autruche au (l_ O // Paul au (re O // dinosaure + au (r_ O _) audio (@P5 odio _) auto (@P4 oto _) autom (n otO _) au (treX o2 bb) aye (X ei // abbaye - p) a (ys E // pays paysage ay (C E // aymé ay Ej // paye - ay (_ E // display - Xl) ayer (X EjWr // player, layer + ay (_ E2 // display + p) a (ys E2 // pays paysage + Xl) ayer (X E2jWr // player, layer + w) an (_ an a a // bateau // group a: English section @@ -130,6 +140,7 @@ _) ch (arism k // charisme, charismatique _) ch (irop k // chiroptère a) ch (_ k // almanach + ar) c (ti // arctique e) ch (_ k // varech _A) ch (o_ k // écho mani) ch (é k // manichéisme @@ -157,8 +168,7 @@ x) c (Y c (Y s // cède _) cyber (P5 sibEr - ban) c (_ // banc - blan) c (_ // blan + Can) c (_ // banc Con) c (_ // tronc, jonc _don) c (_ k // donc cler) c (_ // leclerc @@ -177,6 +187,7 @@ // group c: English section n) ch (_ _^_en // french + ch (ment _^_en // attachment cut (_ _^_en // cut, shortcut @@ -225,26 +236,24 @@ _) ç' (P2v s // Define use of the final 'e' in french e (_ - elqu) e =@ - uisqu) e =@ - rsqu) e =@ _C) e (_ @2 // je te - -c) e (_ @- - -j) e (_ @- - C) e (- @- + -c) e (_ + -j) e (_ + C) e (- e (Ce_ E eau o // bateau cheveaux g) ea (s_ a // mangeas gh) e (tAX e // spagheti j) e (a // Jean Jeanne - p) ect (_ E // suspect + p) ect (_ E2 // suspect ect (_ Ekt // direct pi) ed (_ e // pied _cl) ef (_ e // clef + _cr) e (at e _) ein (K En // peindre ein (K E~ // peindre - CC) ein (_ E~n2 // plein emploi + pl) ein (_ E~n2 // plein emploi e (il E // vieille ei E // neige eoi wA // asseoir @@ -253,15 +262,12 @@ _) ç' (P2v s _f) em (me a // femme i) e (mA // remerciement, d�ploiement A) e (rA // remerciera - gu) e (rA @ - qu) e (rA @ - v) e (lop @- tch) e (rX W @) em (me a // patiemment em (b A~ // décembre em (mACC A~ // emmancher em (mACAC A~ // emmagasiner - em (ma e // emmanuel + em (ma E2 // emmanuel em (mai A~ // emmailloter l) em (n a // solemnel il) emn Em // dilemne @@ -294,6 +300,7 @@ _) en (A A~n // enivrer ol) en (t_ A~ // somnolent, violent Vol) en (t_ // somnolent, violent Xol) ent (_ t2 // volent + eul) ent (_ t2 // veulent ul) en (t_ A~ // turbulent Vul) en (t_ imCoC) en (t_ A~ // impotent @@ -322,6 +329,7 @@ _) en (A A~n // enivrer Xig) ent (_ t2 // figent, pigent oblig) en (t_ A~ // obligent, d�sobligent Voblig) ent (_ t2 // obligent (verbe) + orrig) ent (_ t2 // corrigent tang) en (t_ A~ // tangent man) en (t_ A~ // permanent @@ -457,7 +465,7 @@ _) en (A A~n // enivrer dg) et (_ Et // Bridget, gadget k) et (_ Et - tick) et (_ E + tick) et (_ E2 m) et (_ Et2 eu Y // eu @@ -467,20 +475,18 @@ _) en (A A~n // enivrer eu (h_ Y eu (x_ Y eu (i W - eu (rC W2 - _l) eu (r_ W2 - eu (tr Y + eu (rC W + _l) eu (r_ W _) eut (_ yt2 eut (_ Yt2 - _) extra (uP5 Ekstra - _) extra (CP5 Ekstra + _) extra (uP5 E2kstra + _) extra (CP5 E2kstra _) eû y // eût eû Y: // jeûne - e (x E // exact - ey (_ E // dahomey - ey (C E // ceylan + ey (_ E2 // dahomey + ey (C E2 // ceylan ey Ej // asseye ez (_ ez2 // nez mangez chez @@ -493,7 +499,8 @@ _) en (A A~n // enivrer _r) e (ch @ // recherche e (Cl @ - _l) e (xA E + _l) e (xA E2 + _m) e (xA E2 _l) e (CA @ _l) e (ChA @ _l) e (ClA @ // Leclerc @@ -504,36 +511,47 @@ _) en (A A~n // enivrer e (Cr @ _) e (C% e // effet, effectuer e (C_ E - e (t_ E + e (t_ E2 e (rC E es (_ z2 - %C) e (Ca @- -// %C) e (Ce // actuellement guillemets - %C) e (xA E - %C) e (mA // actuellement guillemets - ct) e (ment @ - nC) e (ment @- - rC) e (ment @ - AC) e (rie_ @- - AC) e (ries_ @- - AcC) e (rie_ @- - AcC) e (ries_ @- - %C) e (rie_ @- - %C) e (ries_ @- - AC) e (ment - u) e (ment @- - ul) e (CA - ull) e (CA - - As) e (gA - As) e (pA - Av) e (gA // sauvegarde - Av) e (pA + %C) e (xA E2 + +@gu) e (CA +@gu) er (A r +@qu) e (CA +@qu) er (A r +_qu) e (CA @ +@L06gu) e (CA @ +@L06qu) e (CA @ +@C) e (CA +@C) er (A r +@C) e (rion++ @ +@C) e (riez++ @ +@ch) e (CA +@ch) er (A r +L06ch) e (CA @ +@L06C) e (CA @ +@CL06) e (CA @ +@bC) e (CA @ +@ct) e (CA @ +%C) e (CA++ +%C) er (A++ r +@C) e (xA++ E2 +@c) e (v++ @ +@d) e (v++ @ + +@C) e (CrA +@ch) e (CrA +@L06ch) e (CrA @ +@L06C) e (CrA @ +@CL06) e (CrA @ +%C) e (CrA++ + e (rr+++ E e @ // menue _) e (CA e - _) e (xA E + _) e (xC++ E2 Cr) eam i:m Cr) eamer i:mWr Cl) eaner i:nWr @@ -541,6 +559,7 @@ _) en (A A~n // enivrer eïn (_ 'Ein _y) en (_ En iew) er (X er2 +_m) e (ga e // group e: English section @@ -571,6 +590,11 @@ iew) er (X er2 Z) ème i-Em è E + ès E +Ar) ès (_ Es +m) ès (_ Es +n) ès (_ Es +p) ès (_ Es .group ë @@ -600,7 +624,8 @@ iew) er (X er2 gg g // agglomérer ai) gni n^ // craignions châtaignier gn n^ // agneau - gn (ie n // comagnie + gn (ie n // compagnie +dia) g (no g _quatrevin) gts (_ z2 vin) gt (_A t // liaison: vingt ans @@ -619,14 +644,14 @@ iew) er (X er2 gt (_ // vingt doigts gt t // vingtaine doigté - gui gi // anguille + gu (i g // anguille ai) gui (l gw^i // aiguillage in) gui (s gw^i // linguiste g (C g _ran) g (_ // rang _san) g (_ // sang - tan) g (_ // sang + étan) g (_ // étang _lon) g (_ // long bour) g (_ // Strasbourg @@ -720,13 +745,16 @@ C) i (es_ i ot) ien (t_ i-A~ // quotient i (e_ i - _) ill ill // illégal + _) ill il // illégal + ill (_ il // Bill + _C) ill (y_ il // Billy aigu) ill ij // aiguille anqu) ill il // tranquille c) ill (i il dist) ill il // distiller _L05) ill il // Lille, mille, ville, william osc) ill il // osciller + gu) ill ij // guillaume qu) ill ij // quille A) ill j // caillou C) ill ij // famille @@ -753,24 +781,28 @@ C) i (es_ i _) intra (neP5 E~tra _) intra (uP5 E~tra C) is (_ i + Kir) is (_ is bor) is (_ is dor) is (_ is tor) is (_ is - fl) irt W2rt + fl) irt Wrt otl) i (neX aj onl) i (ne_ aj offl) i (ne_ aj + dr) i (ve aj + pr) int (_ int // group i: English section ibuter (X _^_en iev _^_en ife (_ _^_en igh _^_en + iven (_ _^_en ind (X _^_en // find, mind _C) ind (erX _^_en // finder AC) ind (erX _^_en // reminder ize (X _^_en // realize - dr) i (veX _^_en + _bAl) i (ze i ram_f) i (le _^_en @@ -782,17 +814,20 @@ C) i (es_ i .group ï ïn (C E~ // coïncider ïn (_ E~ - ïs is // maïs, archaïsme + ïs (K is // maïs, archaïsme ï (q i // archaïque ï (c i // laïc - a) ï j // aïeul + a) ï (A j // aïeul + a) ï (C i // naïf + tha) ï (K j // thaï + _ha) ï (K i // haïr ï i // ambiguïté .group j j Z // adjoint joujoux _) j' (P2v Z - _) j (azz dZ + _) jazz dZaz _) j (obK dZ _) j (ohK dZ _) jusqu' (P6 Zysk @@ -835,7 +870,7 @@ C) i (es_ i // group m: English section _) mail (_ _^_en // mailer - mov (A _^_en // move, movy + mov (ieX _^_en // move, movy .group n @@ -847,6 +882,7 @@ C) i (es_ i _) n (_° nymero _) neuro (@@P5 nYro + _) nvda (P4 Envedea .group o @@ -891,7 +927,7 @@ C) i (es_ i C) o (d_ O2 oe (ll wA // moelleux - oe (i W2 // oeil + oe (i W // oeil _) oe (C Y // oesophage _ph) oe (C e // phoetus oeu W // soeur coeur @@ -965,8 +1001,8 @@ C) oing (_ _^_en // going _) one _^_en oun (C _^_en // bounce, found _) over _^_en // over - ow (K _^_en // cow, town, down ow (e _^_en // flower, power + ow (X _^_en oy (X _^_en // boy, toy @@ -989,7 +1025,7 @@ C) oing (_ _^_en // going m) ps (_ // temps champs r) ps (_ // corps - cham) p (_ // contrechamp + cham) p (_ // champ cam) p (_ // camp @@ -1005,12 +1041,12 @@ C) oing (_ _^_en // going se) pt (_ t // sept se) pt (iè t // septième + scul) p (t // sculpture _) puisqu' (P7 pw^isk // group p: English section pad (_ _^_en plug _^_en // plug - print (_ _^_en // print printer (_ _^_en // printer @@ -1039,8 +1075,8 @@ C) oing (_ _^_en // going _su) rr rr // surréaliste cou) rr rr // courrai -cou) rr (i r // courrier mou) rr rr // mourrai +cou) rr (i r // courrier r r // rien rr r _) radio (@P5 radio @@ -1091,7 +1127,6 @@ mou) rr rr // mourrai scien (t si-A~ // conscient scientifique sql (_S3 EskyEl - _u) s (_ s Cu) s (_ Abu) s (_ s @@ -1160,6 +1195,7 @@ _) t (_ te _) t' (P2v t Vn) t (_ t2 A) t (- t2 +VCi) t (_ t2 t (_ peti) t (_ t2 _) th t // thon @@ -1266,6 +1302,8 @@ A) t (- t2 u y // cruel nuage brut ui w^i // nuit, fuite uin (K yE~ // juin + _s) u (rfX W + _s) u (rfeX W uy (A w^ij C) ucci utSi // capuccino @@ -1282,7 +1320,7 @@ A) t (- t2 C) u (bX W // hub, club C) u (gX W // bug, mug - _n) u (rse W2 // nurse + _n) u (rse W // nurse r) u (nX W // run, autorun um (_ Om // album f) um (_ W~ // parfum @@ -1299,6 +1337,7 @@ A) t (- t2 g) u (A // fatigue g) u (ï y // ambiguïté g) u (ë y // ambiguë + uz (z W // group u: English section _b) usi _^_en // business, businessman @@ -1325,6 +1364,7 @@ A) t (- t2 .group v v v vers (_ vErz2 +dri) ver (X vWr _) view (X vju _) view (A vjuv @@ -1337,10 +1377,12 @@ A) t (- t2 .group w w w w (agon v // wagon +_r) w (an u // Rwanda + wa (ve_ wE:j // wave + wa (re_ wE: // hardware software // group w: English section e) w (K _^_en - wa (Ce_ _^_en // hardware software wave _) wan _^_en wr _^_en // write way _^_en // way, away @@ -1404,6 +1446,7 @@ A) t (- t2 zz dz t) z s // tzigane C) zer (_ zEr + C) zer (_ zWr .group @@ -1435,4 +1478,3 @@ A) t (- t2 - diff --git a/dictsource/hi_list b/dictsource/hi_list index 17e05a4..d81e028 100755 --- a/dictsource/hi_list +++ b/dictsource/hi_list @@ -10,7 +10,7 @@ _4 c'a:r: _5 p'a:nc _6 ch'@2 _7 s'a:t -_8 'a:t.h +_8 'a:th. _9 n'O: ?3 _9 n'aU @@ -22,7 +22,7 @@ _14 ch'O:d@2 _15 p'Vndr@2 _16 s'o:l@2 _17 s'Vt:r@2 -_18 Vt.h:'a:r@2 +_18 Vth.:'a:r@2 _19 Unn'Is _20 b'i:s @@ -69,15 +69,15 @@ _57 sVt:'a:w@n _58 ath:'a:w@n _59 Uns'Vth -_60 s'a:t.h -_61 'Iks@t.h -_62 b'a:s@t.h -_63 t'Irs@t.h -_64 c'O~s@t.h -_65 paIns@t.h -_66 ch'Ija:s@t.h -_67 s'Vrs@t.h -_68 ars@t.h +_60 s'a:th. +_61 'Iks@th. +_62 b'a:s@th. +_63 t'Irs@th. +_64 c'O~s@th. +_65 paIns@th. +_66 ch'Ija:s@th. +_67 s'Vrs@th. +_68 ars@th. _69 Un@h,at:'Vr: _70 sat:'Vr: @@ -137,10 +137,10 @@ _dpt _d@s@ml'o:_ // ?? what is Hi for "." ? झ Jh@ ञ n^@ ट t.@ -ठ t.h@ +ठ th.@ ड d.@ ड़ r.@ -ढ d.h@ +ढ dh.@ ण n.@ // retroflex n.@ त t@ थ th@ @@ -172,6 +172,9 @@ _dpt _d@s@ml'o:_ // ?? what is Hi for "." ? फ़ f@ य़ j@ +// Punctuation +। dVn.d.V + // Pronouns मैं $u // main: I मुझे $u diff --git a/dictsource/hi_rules b/dictsource/hi_rules index 906a2a6..d83f8dd 100755 --- a/dictsource/hi_rules +++ b/dictsource/hi_rules @@ -2,7 +2,7 @@ // This file is UTF8 encoded // letter groups: -// A vowel letters +// A vowel letters and vowel signs // B vowel signs and virama ् // C consonants // Y vowel letters and vowel signs @@ -238,9 +238,9 @@ ?1 ट (_ t. .group ठ - ठ t.hV - ठ (B t.h -?1 ठ (_ t.h + ठ th.V + ठ (B th. +?1 ठ (_ th. .group ड ड d.V @@ -252,9 +252,9 @@ ?1 ड़ (_ r. .group ढ - ढ d.hV - ढ (B d.h -?1 ढ (_ d.h + ढ dh.V + ढ (B dh. +?1 ढ (_ dh. ढ़ r.hV // nukta (should retroflex flap) ढ़ (B r.h // nukta ?1 ढ़ (_ r.h // nukta diff --git a/dictsource/hu_list b/dictsource/hu_list index e08bbd6..4534be6 100755 --- a/dictsource/hu_list +++ b/dictsource/hu_list @@ -1,14 +1,12 @@ // Translations for Hungarian words // This file is UTF-8 encoded. -// Conditional rules: -// ?1 speak "i" as Roman number - // Numbers _0 nullA _1 EJ _2 kEt:Y: +_2a ke:t // for 200, 2000 _3 ha:R2om _4 ne:J _5 Yt @@ -28,32 +26,49 @@ _7X hEtvEn _8X n^oltsvAn _9X kilEntsvEn _0C sa:z -_1C sa:z _0M1 EzER2 _1M1 EzER2 _2M1 ke:tEzER2 _0M2 millio: -_1M2 millio: +_1M2 EJmillio: _2M2 ke:tmillio: _0M3 millia:R2d -_1M3 millia:R2d -_1M3 ke:tmillia:R2d +_1M3 EJmillia:R2d +_2M3 ke:tmillia:R2d + _0M4 billio: _1M4 billio: _2M4 ke:tbillio: -_dpt ||_v,Ess2Y:_ - -_0Z1 tizAd // tenths +_dpt ||Ege:s //Not need the pause before this word + + +// variants used when followed by hyphen and suffix starting with 'e' or 'a' +_1e EJ: +_2e kEt: +_3e ha:R2m +_7e hEt +_0M1e EzR2 +_1M1e EzR2 +_2M1e ke:tEzR2 +// used after decimal point +_0Z1 tizEd // tenths _0Z2 sa:zAd // hundredths _0Z3 EzR2Ed _0Z4 ti:zEzR2Ed - +_0Z5 sa:zEzR2Ed +_0Z6 miliomod +_0Z7 ti:zmiliomod +_0Z8 sa:zmiliomod // ordinal numbers + _ord Edik -_1o ElSY: -_2o ma:Sodik +_0o n'ullAdik +_1ox ElSY: // number = '1' only +_2ox ma:Sodik // number = '2' only +_1o EJ:Edik +_2o kEt:Edik _3o hAR2_mAdik _4o nEJEdik _5o YtYdik @@ -62,10 +77,223 @@ _7o hEtEdik _8o n^oltsAdik _9o kilEntsEdik _10o tizEdik -_12o tizENkEt:Edik _20o husAdik +_30o hAR2_mintsAdik +_60o hAtvAnAdik +_80o n^oltsvAnAdik _0Co sa:zAdik - +_2Co ke:tsa:zAdik +_0M1o EzR2Edik +_1M1o EzR2Edik +_2M1o ke:tEzR2Edik + +// ordinal numbers with -a or -e suffix, which is spoken but not written (eg. "december 2. óta") +// Use this pronunciation when a number (with a dot) is between a $alt word and a $alt3 word. +// Set $alt3 flag for: óta, és. közt, között + +_1qx ElSEjE +_2qx ma:SodikA +_1q EJ:EdikE +_2q kEt:EdikE +_3q hAR2_mAdikA +_4q nEJEdikE +_5q YtYdikE +_6q hAtodikA +_7q hEtEdikE +_8q n^oltsAdikA +_9q kilEntsEdikE +_10q tizEdikE +_20q husAdikA +_30q hAR2_mintsAdikA + + +// $alt2 means these rules only apply if the previous word +// has $alt1 (language specific). $text implies $only (for this group only) + +_#-a A $alt2 +_#-i Ei $alt2 +_#-e E $alt2 +_#-án a:n //Need remove the $alt2 tag with this line, because some +//time with the book the sentences beginning with this form, and need +//spokening ordinal number alwais. For example: In 20th, the rain is raining. +_#-ára a:R2A //need remove the $alt2 tag, because with a books lot of +//string using following form: január 19-ről 20-ára. With this situation, +//need spokening huszadikára, not húsz-ára string. +_#-ére e:R2E //Same as prewious doed fix. +_#-ra a:R2A $alt2 //But this line for example need the $alt2 tag. +_#-re e:R2E $alt2 +_#-én e:n //need remove the $alt2 attribute with this line +_#-ai Ai $alt2 +_#-ei Ei $alt2 +_#-től e:tY:l $alt2 +_#-tól a:to:l $alt2 +_#-ig e:ig $alt2 //special date ordinal numbers for example elsejéig, negyedikéig etc. +_#-éről e:R2Y:l +_#-áról a:R2o:l $alt2 + +_#-ától a:to:l $alt2 +_#-ről e:R2Y:l $alt2 +_#-ról a:R2o:l $alt2 +_#-ével e:vEl $alt2 +_#-ával a:vAl $alt2 +_#-éig e:ig $alt2 +_#-áig a:ig $alt2 +_#-étől e:tY:l $alt2 +_#-ét e:t $alt2 +_#-át a:t $alt2 + +(1-e) elseje $text $alt2 +(1-én) elsején $text $alt2 +(1-jén) elsején $text $alt2 +(1-i) elsejei $text $alt2 +(1-ei) elsejei $text $alt2 +(1-ére) elsejére $text $alt2 +(1-re) elsejére $text $alt2 +(1-től) elsejétől $text $alt2 +(1-ig) elsejéig $text $alt2 +(1-éről) elsejéről $text $alt2 +(1-ről) elsejéről $text $alt2 +(1-ével) elsejével $text $alt2 +(1-éig) elsejéig $text $alt2 +(1-étől) elsejétől $text $alt2 +(1-ét) elsejét $text $alt2 +(1-je) elseje $text $alt2 +(1-jei) elsejei $text $alt2 +(1-jével) elsejével $text $alt2 +(1-jére) elsejére $text $alt2 +(1-jétől) elsejétől $text $alt2 +(1-jéig) elsejéig $text $alt2 +(2-i) másodikai $text $alt2 +(2-ig) másodikáig $text $alt2 +(3-i) hAR2_mAdikAi $alt2 +(3-ig) harmadikáig $text $alt2 +(6-i) hAtodikAi $alt2 +(6-ig) hatodikáig $text $alt2 +(8-i) n^'oltsAdikAi $alt2 +(8-ig) nyolcadikáig $text $alt2 +(13-ig) tizenharmadikáig $text $alt2 +(16-ig) tizenhatodikáig $text $alt2 +(18-ig) tizennyolcadikáig $text $alt2 +(20-i) huszadikai $text $alt2 +(20-ig) huszadikáig $text $alt2 +(23-ig) huszonharmadikáig $text $alt2 +(26-ig) huszonhatodikáig $text $alt2 +(28-ig) huszonnyolcadikáig $text $alt2 +(30-ig) harmincadikáig $text $alt2 +(30-i) harmincadikai $text $alt2 + + +// these exceptions only for 0, not for other numbers ending in '0' +(0-ás) nul:a:S +(0-t) nul:a:t +(0-val) nul:a:vAl +(0-ra) nul:a:R2A +(0-nál) nul:a:na:l +(0-hoz) nul:a:hoz +(0-s) nul:a:S +(0-ára) nul:a:R2A //But if the 0-ára string have the text (only 0 number before the suffix, need spokening this exception. +(0-án) nul:a:n //same as prewious exception. +(0-ig) nul:a:ig +(00-ig) nul:Anul:a:ig //special exception +(0-ban) nul:a:bAn +(0-ba) nul:a:bA +(00-s) nul:Anul:a:S +(1-gyet) EJ:Et +(1-gyes) EJ:ES +(2-őt) kEt:Y:t + +// entries with a single digit such as (2-i) also apply to 22, 32, etc, unless $only +(30-cal) hAR2mints:Al + +//4 number suffixes +(4-el) ne:J:El //Nneed J: phoneme, not J phoneme contains one suffix) +(4-gyel) ne:J:El //Need J: phoneme, not J phoneme +(4-t) ne:JEt //special number suffix exception +(5-tel) Yt:El +(5-el) Yt:El +(5-től) Yt:Y:l +(5-től) YtYdike:tY:l $alt2 +(6-al) hAt:Al +(6-tal) hAt:Al +(6-tól) hAt:o:l +(6-tól) h'Atodika:to:l $alt2 + +(7-től) he:t:Y:l +(7-től) hEtEdike:tY:l $alt2 +(7-tel) he:t:El +(8-cal) n^olts:Al +_10e tiz +_20e hus +(10-szer) ti:s:ER2 +(10-szeres) ti:s:ER2ES + + + + +//special number exceptions +(10-el) ti:zzEl +(20-al) hu:s:Al +(30-al) hAR2mints:Al +(40-el) nEJvEn:El +(50-el) YtvEn:El +(60-al) hAtvAn:Al +(70-el) hEtvEn:El +(80-al) n^oltsvAn:Al +(90-el) kilEntsvEn:El + + +// These words mean that a dot after number, immediately preceding, does not mean an ordinal number +január $alt +február $alt +március $alt +április $alt +május $alt +június $alt +július $alt +augusztus $alt +szeptember $alt +október $alt +november $alt +december $alt + + +//The following 12 row contains shorter hungarian month names +jan $alt +feb $alt +febr $alt +márc $alt +ápr $alt +máj $alt +jún $alt +júl $alt +aug $alt +szept $alt +okt $alt +nov $alt +dec $alt + +//this following 7 lines means the 7 hungarian day name +hétfő $alt +kedd $alt +szerda $alt +csütörtök $alt +péntek $alt +szombat $alt +vasárnap $alt + +//Following four seasons and suffixes not need spokening ordinal number +tavasz $alt +nyár $alt +ősz $alt +tél $alt +tavaszán $alt +nyarán $alt +őszén $alt +telén $alt +tavaszi $alt +nyári $alt +őszi $alt +téli $alt // accent names _lig ligAtu:R2A @@ -88,58 +316,109 @@ _tld tildE _#9 tAb _#32 so:kYz _cap n'AJ_| +_?? kAR2AktEr||ko:d // unknown characters (change this) + // Abbreviations +ADSL a:de:ESEl $allcaps //Internet connection type, we pronouns this with ádéesel +ÁNTSZ a:Ente:Es $allcaps +ATM a:te:Em $allcaps //The ATM stands. We pronouns this abbreviation with átéem word. Default, Espeak pronouns this abbreviation with atéem word. +cm tsEntime:tER2 km kilo:me:tER2 + +GYSEV JESEv $allcaps +GYESEV JESEv $allcaps +HÉV he:v $allcaps +IPTV $abbrev $allcaps +GDP dZi:di:pi: $allcaps +?2 GDP $abbrev $allcaps +HSDPA $abbrev $allcaps +kb kYR2ylbElyl $hasdot +ORTT $abbrev $allcaps +ORFK oEREfka: $abbrev $allcaps +MÁV ma:v $allcaps +MTI $abbrev $allcaps mm milime:tER2 +RAM R2Am $allcaps //Espeak normaly spokening this abbreviation with erraem, but this is not good +Psszt ps:t $capital // similar word with quiet word. Espeak default spokening this abbrew quiet word with letter by letter by default. +Pszt ps:t $capital //same as prewious abbrewiation +VDSZSZ ve:de:EsEs $allcaps +WC ve:tse: $allcaps +LST ElESte: $allcaps +BAR bAR2 $allcaps +SS EsEs $allcaps a.m An^n^i||m'int $dot +ún u:JnEvEzEt: $hasdot dr doktoR2 $dot +mr mistER2 $hasdot //in hungarian we not use, but lot of books contains this word. +mrs misis $hasdot //In hungarian we not use, but lot of book contains this word. +miss mis: $hasdot gpu $abbrev -id idY:SEb: $dot -ill illEdvE $dot -ifj ifjAb: $dot +GB gigAba:jt $allcaps +MB mEgAba:jt $allcaps +OK ok $allcaps +mvgyosz Emve:Je:oEs +OTP o:te:pe: $allcaps +id idY:SEb: $hasdot +ill illEtvE $hasdot +ifj ifjAb: $hasdot mta $abbrev -pl pe:lda:ul $dot -stb SAtYb:i $dot -u.n u:JnEvEzEt: $dot -ú.n u:JnEvEzEt: $dot +pl pe:lda:ul $hasdot +stb SAtYb:i $hasdot +u.n u:JnEvEzEt: $hasdot +ú.n u:JnEvEzEt: $hasdot vö v'EZd||_'Yss2E -?1 i EJ $abbrev // option for Roman number -// Articles -a $u // the -az $u -aki $u+ // that -ez $u+ // this +// Articles +a $u $strend2 // the +az $u $strend2 //Need remove the $alt3 attribute this article, because +//following context result bad spokening output if $alt3 attribute is used: +//az 5. és 6. hadsereg. +//This text means in english: the 1th and 2th solders +//Espeak spokening following phoneme if $alt3 attribute is used: +//Az YtYdikE és hAtodik hAdSER2Eg +//This is wrong this context, the right phoneme is: +//Az YtYdik és hAtodik hAdSER2Eg +//But for example the following sentence part need the $alt3 attribute with +//az article word, but now impossible doing this right: +//Június 6. az a nap +//If I removed the $alt3 attribute with az word, Espeak sending this phoneme: +//ju:niuS hAtodik Az A nAp +//The right phoneme is: +//ju:niuS hAtodikA Az A nAp + +//aki $u+ // that + +ez $unstressend // this // Pronouns // If these are only used for emphasis then then don't need $u -// én $u -// te $u -// ő $u -// mi $u -// ti $u -// ők $u -// maga $u -// maguk $u +én $unstressend +te $unstressend + +ők $unstressend $pause +mi $unstressend +ti $unstressend +ők $unstressend +maga $unstressend +maguk $unstressend // Conjunctions -és $u $strend2 // and +és $u $strend2 $alt3 // and de $u+ $pause // but vagy $u+ $pause // or -mert $u $pause // because -miatt $u // because +mert $u $pause // because +miatt $unstressend // because bár $u $pause // although habár $u $pause // although - ha $u $pause // if noha $u $pause // even thought @@ -148,51 +427,59 @@ noha $u $pause // even thought // Negative -nem $alt2 $strend -ne $u+ +nem $strend2 $combine +?2 nem $strend2 +ne $unstressend e $u // "-e" question e $atend // stressed at end of sentence // Unstressed adverbs prepositions etc. -néhány $u+ +néhány $unstressend is $u // also -elöl $u // in front of -elől $u -elé $u -előtt $u - -mögül $u // behind -mögött $u -mögé $u - -kívül $u -után $u // after - -alól $u -alá $u -alatt $u // below - -felől $u // above -felé $u -fölé $u -felett $u // above -fölött $u - -mellől $u // besides -mellé $u -mellett $u - -közül $u -közé $u -között $u - +elöl $unstressend // in front of +elől $unstressend +elé $unstressend +előtt $alt3 $unstressend +este $alt3 +estéjén $alt3 +mögül $unstressend // behind +mögött $unstressend +mögé $unstressend + +kívül $unstressend +után $unstressend $alt3 // after + +alól $unstressend +alá $unstressend +alatt $unstressend // below + +felől $unstressend // above +felé $unstressend +fölé $unstressend +felett $unstressend // above +fölött $unstressend + +mellől $unstressend // besides +mellé $unstressend +mellett $unstressend +lett $unstressend +ott $unstressend +itt $unstressend +neked $unstressend +nektek $unstressend +nekik $unstressend +neki $unstressend +nekem $unstressend +közül $unstressend +közé $unstressend +között $u $alt3 an $u // so many persons as $u -ba $u // into +ba $unstressend // into ban $u // in -be $u +be $unstressend ben $u ból $u // from inside ből $u @@ -200,80 +487,438 @@ e $u // in query, his/her ei $u // his her multiole en $u es $u -hez $u -hoz $u // to -höz $u -ig $u // up to -ik $u // -th -nak $u // of, him/her -nek $u -nál $u // by -nél $u -on $u // on -en $u // on +hez $unstressend +hoz $unstressend // to +höz $unstressend +ig $unstressend // up to +ik $unstressend // -th +nak $unstressend // of, him/her +nek $unstressend +nál $unstressend // by +nél $unstressend +on $unstressend // on +en $unstressend // on os $u -ra $u // onto -re $u -ról $u // from top of, about -röl $u -ről $u +ra $unstressend // onto +re $unstressend +ról $unstressend // from top of, about +röl $unstressend +ről $unstressend szer $u szor $u // times +szó $unstressend +szót $unstressend szór $u ször $u -tól $u // from -töl $u -től $u -val $u // with -vel $u +tól $unstressend // from +töl $unstressend +től $unstressend +val $unstressend // with +vel $unstressend án $u // on that day é $u // his, her éi $u // his, her multiple -én $u +én $unstressend ón $u ós $u -ön $u +ön $unstressend ös $u -ellen $u // against -elé $u // before -óta $u // since - -sok $u // many -kevés $u // few -se $u // neither -sem $u // nor - - -be $u //into -ki $u // out of -le $u // down -fel $u // up -föl $u // up -meg $u // finish an action -el $u // away -át $u //through -rá $u //onto -ide $u // here -oda $u // there -szét $u //apart -össze $u //connect with -vissza $u //back -ellen $u //against - -volna $u // would -részén $u //on ... part of - -nélkül $u // without -folytán $u // because of -úgy $u // like that -így $u // like this -egyaránt $u // alike -minden $u // all -részben $u // partly - -egyik $u // one of -másik $u // the other +ellen $unstressend // against +//elé $u // before +óta $alt3 // since +hétfőig $alt3 +keddig $alt3 +szerdáig $alt3 +csütörtökig $alt3 +péntekig $alt3 +szombatig $alt3 +vasárnapig $alt3 + +sok $unstressend // many +kevés $unstressend // few +se $unstressend // neither +sem $unstressend // nor + + +be $unstressend //into +ki $unstressend // out of +le $unstressend // down +fel $unstressend // up +föl $unstressend // up +meg $unstressend // finish an action +el $unstressend // away +át $unstressend //through +rá $unstressend //onto + +ide $unstressend // here +oda $unstressend // there +szét $unstressend //apart +össze $unstressend //connect with +vissza $unstressend //back +volna $unstressend // would +//részén $u //on ... part of + +nélkül $unstressend // without +//folytán $u // because of +úgy $unstressend // like that +így $unstressend // like this +egyaránt $unstressend // alike +//minden $strend // all +mindent $strend +//részben $u // partly + +egyik $unstressend // one of +//másik $u // the other +lehet $unstressend +rossz $unstressend +jó $unstressend +jót $unstressend +kér $unstressend +tartják $unstressend +erős $unstressend +lenni $unstressend +lennie $unstressend +levegőjére $unstressend +ad $unstressend +kapják $unstressend +kap $unstressend +már $unstressend +maradt $unstressend +jobb $unstressend +most $unstressend +még $unstressend +gép $unstressend +részt $unstressend +lenne $unstressend +őt $unstressend +helyes $u+ +fák $unstressend +fát $unstressend +et $unstressend +megvédeni $unstressend +sztrájk $unstressend +hír $unstressend +magukat $unstressend +majd $unstressend +áll $unstressend +állt $unstressend +arról $unstressend +innen $unstressend +érjen $unstressend +nap $unstressend +név $unstressend +lány $unstressend +lányt $unstressend +vár $unstressend +várt $unstressend +ért $unstressend +ér $unstressend +tag $unstressend +tesz $unstressend +tett $unstressend +tette $unstressend +baj $unstressend +csak $unstressend +vált $unstressend +jut $unstressend +legyen $unstressend +azt $unstressend +ezt $unstressend +út $unstressend +tiszt $unstressend +vesz $unstressend +cég $unstressend +járt $unstressend +jár $unstressend +él $unstressend +élsz $unstressend +élt $unstressend +hát $unstressend +fiú $unstressend +srác $unstressend +ült $unstressend +ám $unstressend +rám $unstressend +tűnik $unstressend +nyújt $unstressend +nincs $unstressend +nincsen $unstressend +mégy $unstressend +nő $unstressend +nőt $unstressend +sas $unstressend +sast $unstressend +fél $unstressend +félt $unstressend +félsz $unstressend +düh $unstressend +más $unstressend +mást $unstressend +rúd $unstressend +mint $unstressend $combine +?2 mint $unstressend +iránt $unstressend +légy $unstressend +tűnt $unstressend +ösét $unstressend +új $unstressend +nyúlt $unstressend +magát $unstressend +engem $unstressend +téged $unstressend +minket $unstressend +titeket $unstressend +őket $unstressend +cikk $unstressend +vont $unstressend +mond $unstressend +jutni $unstressend +jött $unstressend +szólsz $unstressend +lőtt $unstressend +sor $unstressend +sort $unstressend +árt $unstressend +fest $unstressend +fújt $unstressend +kért $unstressend +tét $unstressend +kém $unstressend +jön $unstressend +bent $unstressend +kezd $unstressend +ránk $unstressend +gondolt $unstressend +dönt $unstressend +véli $unstressend +folyt $unstressend +döntött $unstressend +fájt $unstressend +hozni $unstressend +lát $unstressend +kép $unstressend +nyert $unstressend +függ $unstressend +hidd $unstressend +megy $unstressend +hírt $unstressend +hely $unstressend +jutott $unstressend +mit $unstressend +forrás $unstressend +terv $unstressend +mind $unstressend +ment $unstressend +jól $unstressend +napját $unstressend +több $unstressend +tart $unstressend +hág $unstressend +sors $unstressend +küzd $unstressend +vert $unstressend +csaj $unstressend +tárgy $unstressend +lágy $unstressend +pont $unstressend //This is mean pont word, not dot character. +pontok $unstressend +bújt $unstressend +mély $unstressend +úr $unstressend +szép $unstressend +szék $unstressend +nagy $unstressend +kár $unstressend +hó $unstressend +tánc $unstressend +füst $unstressend +két $unstressend +őr $unstressend +őrt $unstressend +nyílt $unstressend +fényt $unstressend +éjt $unstressend +ég $unstressend +lépett $unstressend +perc $unstressend +halk $unstressend +busz $unstressend +gyors $unstressend +vett $unstressend +kést $unstressend +fess $unstressend +szín $unstressend +szög $unstressend +sincs $unstressend +tér $unstressend +sztár $unstressend +vers $unstressend +mondja $unstressend +mondják $unstressend +mondta $unstressend +mondták $unstressend +szert $unstressend +látja $unstressend +szél $unstressend +óra $unstressend +hegy $unstressend +colt $unstressend +róla $unstressend +rólunk $unstressend +rólatok $unstressend +róluk $unstressend +szád $unstressend +nos $u +no $u +na $u +vall $unstressend +magam $unstressend +magad $unstressend +tűz $unstressend +egy $unstressend +lehetett $unstressend +arra $unstressend +erre $unstressend +arról $unstressend +erről $unstressend +ölt $unstressend +rosszak $unstressend +helyt $unstressend +bort $unstressend +látszik $unstressend +látszott $unstressend +látszanak $unstressend +látszotok $unstressend +körül $unstressend +dőlt $unstressend +vér $unstressend +sót $unstressend +múlt $unstressend +ügy $unstressend +cél $unstressend +célt $unstressend +láb $unstressend +bőr $unstressend +víz $unstressend +fagy $unstressend +nyelt $unstressend +sokk $unstressend +hét $unstressend +zajt $unstressend +pest $unstressend +stáb $unstressend +súlyt $unstressend +szólt $unstressend +vidd $unstressend +fönn $unstressend +szűk $unstressend +fordul $unstressend +fordult $unstressend +hús $unstressend +bor $unstressend +húsz $unstressend +tőle $unstressend +tőled $unstressend +tőlük $unstressend +tőletek $unstressend +tőlünk $unstressend +mászni $unstressend +jel $unstressend +szállt $unstressend +száll $unstressend +sínt $unstressend +kút $unstressend +bőrt $unstressend +vért $unstressend +lóg $unstressend +vette $unstressend +lenn $unstressend +indult $unstressend +völgy $unstressend +frászt $unstressend +hang $unstressend +fény $unstressend +kösz $unstressend +gramm $unstressend +húst $unstressend +telt $unstressend +zár $unstressend +rész $unstressend +nyom $unstressend +hiszem $unstressend +hiszed $unstressend +hiszi $unstressend +telik $unstressend +adott $unstressend +gázt $unstressend +csap $unstressend +falán $unstressend +hitte $unstressend +nyár $unstressend +túl $unstressend +fáj $unstressend +tudni $unstressend +hinni $unstressend +hopp $unstressend +vinni $unstressend +hozni $unstressend +hittem $unstressend +hitted $unstressend +hittük $unstressend +hittétek $unstressend +hitték $unstressend +folt $unstressend +írva $unstressend +vele $unstressend +veled $unstressend +velem $unstressend +velünk $unstressend +veletek $unstressend +velük $unstressend +közt $unstressend $alt3 +hiszik $unstressend +hiszitek $unstressend +önt $unstressend +benn $unstressend +kinn $unstressend +kés $unstressend +néz $unstressend +vont $unstressend +fiút $unstressend +von $unstressend +nézett $unstressend +rám $unstressend +rád $unstressend +mód $unstressend +győz $unstressend +repült $unstressend +ül $unstressend +gyújt $unstressend +hajt $unstressend +köp $unstressend +látni $unstressend +sült $unstressend +roncs $unstressend +is $unstressend +fut $unstressend +ló $unstressend +véljük $unstressend +vélik $unstressend +vélem $unstressend +véled $unstressend +véli $unstressend +vélitek $unstressend +szól $unstressend +tank $unstressend +adta $unstressend +kellett $unstressend +főt $unstressend +nőtt $unstressend +vitt $unstressend +rést $unstressend +brit $unstressend +természetes $u $1 // word pairs @@ -287,14 +932,14 @@ másik $u // the other vagyok $u // to be, present vagy $u -van $u -vagyunk $u -vagytok $u -vannak $u +van $unstressend +vagyunk $unstressend +vagytok $unstressend +vannak $unstressend voltam $u // to be, past voltál $u -volt $u +volt $u $alt3 voltunk $u voltatok $u voltak $u @@ -307,7 +952,7 @@ lesztek $u lesznek $u -kell $u+ // should +kell $unstressend // should szabad $u+ // can (allowed) @@ -318,7 +963,7 @@ fogunk $u+ fogtok $u+ fognak $u+ -tud $u+ // can +tud $unstressend // can tudok $u+ tudsz $u+ tudunk $u+ @@ -351,12 +996,15 @@ w duplAve: x iks y ipsilon z ze: - _é e: é $atend +V // this means that "v ve:" is only used for lower-case +X + cs tSe: dz dze: + dzs dZe: sz Es zs Ze: @@ -372,48 +1020,144 @@ ny En^ ø $accent ß _^_DE -. pont $max3 -* tS'illAg $max3 +… _p%ontp%ontp%ont // 3 or more dots are changed to elipsis +. p%ont $max3 +_. pont +* tSillAg $max3 % sa:zAle:k $max3 + plus $max3 -= EJEnlY:Se:g $max3 -# sa:mjEl $max3 -@ kukAts -& e:SjEl +/ pER2 $max3 += EJEnlY: $max3 +# kEt:Y:SkER2Est $max3 +@ kukAts $max3 +& e:S $max3 € EuR2o ¶ bEkEzde:S -§ pAR2AgR2AfuS +§ s'AkAs ~ tildE -^ hia:n^ ° fokjEl Ft foR2int -\ viss2ApER2 $max3 +\ bEks2lES $max3 +^ fYlfEle:n^i:l _, vEss2Y: _; pontoSvEss2Y: _: kEt:Y:Spont -_! fElkia:lto: -_? ke:R2dY: -_- kYtY:jEl -__ Ala:hu:za:S +_! fElkia:lto:jEl +_? ke:R2dY:jEl +_- m'inus $max3 +__ Ala:hu:za:S $max3 _' ApostR2o:f -_– nAJkYtY: +_– gondolAtjEl _— kviR2tmi:nus -_" ide:zY: -_( za:R2o: -_) za:R2o: -_[ s'YglEtES||z'a:R2o: -_] s'YglEtES||z'a:R2o: -_{ k'AptSoS||z'a:R2o: -_} k'AptSoS||z'a:R2o: -_… ha:R2_mASpont -_• di:spont +_" ide:zY:jEl +_( b'Alza:R2o:jEl $max3 +_) j'obbza:R2o:jEl $max3 +_[ n^'ito:sYglEtES $max3 +_] z'a:R2o:sYglEtES $max3 +_{ k'EzdY:kAptSoS $max3 +_} v'e:gkAptSoS $max3 +_… pontpontpont + +_• fElSoR2ola:SjEl +_| fyg:Y:lEgESvonAl +_> nAJob +_< kiSSEb +_¤ pe:nznEmjEl +® bEjEJzEt: +™ ve:djEJ +_` tompA +_  so:kYz +_« bElSY:|bAl|ide:zY:jEl +_» bElSY:|jobb|ide:zY:jEl +_­ la:JkYtY:jEl +_² ma:Sodik|hAtva:n^ +_³ hArmAdik|hAtva:n^ +_· kYze:pSY:pont +_¹ ElsY:hAtva:n^ +_º Sorsa:m +_‘ bAloldAli|ide:zY:jEl +_’ job:oldAli|ide:zY:jEl +_‚ ide:zY:jEl +_‛ ide:zY:jEl +_“ ide:zY:jEl +_” ide:zY:jEl +_„ ide:zY:jEl +_‟ ide:zY:jEl +_‣ ha:R2omsYgAlAku:|fElSoR2ola:SjEl +_‰ EzR2Ele:k +_′ ApostR2o:f +_″ duplA|ApostR2o:f +© tsopiR2ight-jEl +° fok +− minus +± plusminus +µ my: +¼ nEJEd +½ fe:l +¾ ha:R2omnEJEd +× tAlpAS +÷ osta:S +¬ logikAinEm +√ JYkjEl +∞ vEgtElEn +≠ nEmEJEnlY: +_ˇ lEfEle:n^i:l // Main Exceptions List //===================== nato na:to: +(end-of line) u:jS,oR2 + + $textmode -(1-én) elsején +MSZP emeszpé +SZDSZ eszdéesz + + +egyezség eggyesség + + + +(Szvsz) eszvéesz +(CD-k) cédék +(cd-k) cédék +(CD-n) cédén +(cd-n) cédén +(cd-d) cédéd +(CD-d) cédéd +(db-os) darabos +(db-ot) darabot +(LST-k) elesték +(LST-n) elestén +(PC-k) pécék +(://) (kettőspontperper) $pause //Hungarian Nwda users ask me put this entry +//again, because Nwda unfortunately does'nt spokening colondashdash +//characters for example with a http or an ftp url. +//The parenthese with second part is required, because if I using this form, +//Orca speech driver does'nt pronouns wrong the url's if I navigating word +//after word and don't disturb Orca working. +(PC-n) pécén +(USB-n) úesbén +(USA-ból) usából +(USA-nak) usának +(DVD-k) dévédék +(dvd-k) dévédék +(DVD-n) dévédén +(dvd-n) dévédén +(dvd-d) dévédéd +(DVD-d) dévédéd + + + + + + + + + + + diff --git a/dictsource/hu_rules b/dictsource/hu_rules index 633d6fb..5cb6a81 100644 --- a/dictsource/hu_rules +++ b/dictsource/hu_rules @@ -4,336 +4,1137 @@ .replace // allow o,u-circumflex for o,u-double-acute - ô ő - û ű +ô ő +û ű + .group a - a A - _) a (_ %A + a A + _) a (_ %A + D00_-) al (_ zAl // double z for 100-al + 000_-) al (_ Al // ... but not 1000-al + _) alattvaló AlAtvAlo: + ahhoz Ahoz +?!2 auschwitz AuSvits .group á - á a: + á a: + @) ában (_S4q a:bAn + @) ának (_S4q a:nAk + @) ától (_S4q a:to:l .group b - b b -// bb b: - - biz (A b'iz, // bizalmas etc. - biedermeier bi:dER2ma:jER2 + b b + bb b: + @) ban (_S3q bAn + @) ben (_S3 bEn + + biz (A biz, // bizalmas etc. + biedermeier bi:dER2ma:jER2 + _) batthiány bAc:a:n^i + tö) bb (ször b + tö) bb (ség b + tö) bb (nyire b + tö) bb (nek b .group c - c ts - cc ts: - cs tS - ccs tS: - !) cz ts // in names which start with a capital letter - - anar) ch (i C -hierar) ch (i C - me) ch (a C - te) ch (n C - pszi) ch C - pszy) ch C - mün) ch (en C - maso) ch (istA C - monar) ch (i C - _pe) ch C - szé) ch tS - _zi) ch (y tS - - c (szín tS - - dA) c (sz ts - kilen) c (sz ts - kvar) c (sz ts - mala) c (sá ts - nyol) c (sz ts - har) c (sz ts - lán) c (sz ts - per) c (sz ts - pol) c (so ts - por) c (sé ts - por) c (sz ts - rán) c (sz ts - tán) c (sz ts - - _szé) che (ny tSe: - _szé) ché (ny tSe: - _sto) ck (holm k - - _) church tSYR2tS - + c ts + cc ts: + cs tS + ccs tS: + !) cz ts // in names which start with a capital letter + + + csz ts|s + papu) cs tS + + ar) c (cson ts + mala) c (sá ts + pá) c (só ts + pol) c (so ts + por) c (sé ts + por) c (sz ts + _sto) ck (holm k + har) c (csoport ts + lán) c (cs ts + _) colt kolt + _) coltt kolt: + _) coltj kolc + kudar) c (sorozat ts + gerin) c ts + tán) c (cs ts + tán) c (s ts + kilen) c (csatorn ts + ner) c (stóla ts + kavi) cs (zátony tS +?!2 cherbourg SER2buR2g + har) c (cselek ts + + + +.group ch + anar) ch (i h + balda) ch (in h +hierar) ch (i h + me) ch (a h + te) ch h + pszi) ch h + pszy) ch h + mün) ch (en h + maso) ch (istA h + monar) ch (i h + _pe) ch h: + szé) ch tS + _zi) ch (y tS + _szé) che (ny tSe: + _szé) ché (ny tSe: + ja) ch (t h + ce) ch (et h: + or) ch (ídea h + stri) ch (el h: + ar) ch (ív h + ar) ch (ivál h + +?!2 _) church (il tSYR2tS +?!2 bu) ch (enwald h +?!2 da) ch (au h .group d - d d -// dd d: - dz dz - A) dz (A d:z - dzs dZ - A) dzs dZ: - - C) ds tS - ds (C tS - A) ds (A tS: - dsz ts - dsz (C ts - A) dsz (A ts: - dz dz - C) dzs dZ - A) dzs (A dZ: - C) dj J - A) dj (A J: - - ren) d (szer d + d d + dd d: + dts tS: + dt t: + dtszé t:se: + apró) d (sz d + dsz (_S3 ts: + beszé) d (szin d + beszé) d (sebesség d + cselé) d d + dobermann dob:ER2mAn + föl) d (sánc d + ha) dd (_S2 d + ha) d (járat d + ha) d (sor d + hor) d (szék d + máso) d (sor d + + pa) d (sor d + ren) d (sza d + + va) d (sző d + C) ds tS + ds (C tS + A) ds (A tS: + dsz ts + dsz (C ts + dsz (a ds + dsz (á ds + a) dsz (A ts: + e) dsz (A ts: + o) dsz (A ts: + a) dsz (í ds + é) dsz ds + ó) dsz ts: + C) dj J + A) dj (A J: + dj J: + min) dny n^ + ná) d d + ná) dd d: + diesel di:zEl + hí) d (szerkezet d + dühvel dyvEl + epizó) d (szerep d + negye) d (száz d + dühbe dybE + fülle) dtt (é t: + föl) d (sáv d + dühtől dytY:l + rövi) d (zárlat d + ren) dsz (erint d|s + szaba) d (szájú d +menetren) dsz (erű d|s + hazár) d (játék d + főha) d (segéd d + csalá) d (szerető d + föl) d (szoros d + min) d (jobban d + bri) ddzs (el dZ: + rekor) d (sebesség + hol) d (sü d + árpá) d (sáv d + ötö) dsz (ör ts: + +.group dz + fogó) dz (kod ts + fogó) dz (ó z +fenyegető) dz z + akaró) dz z +hallgató) dz z + húzó) dz ts +harapó) dz z +himbáló) dz z + lopó) dz z +szedelő) dz z +tapogató) dz z + ó) dz (kod ts + villó) dz z + e) dz (ő dz: + e) dz (és dz: + kére) dz ts +mentegető) dz z + dz dz: + A) dz (A dz: + dzs dZ + A) dzs dZ: + dz dz: + C) dzs dZ + A) dzs (A dZ: + borsó) dz z + beszé) dz (avar d|z +dobáló) dz z + kérő) dz z +követelő) dz z +rángató) dz z +titkoló) dz z +ringató) dz z .group e - e E - D_-_) es (_ %ES + e E + 000_-) el (_ REl // double R for 1000-el +000000_-) el (_ El // ... but not 1000000-el + + + _) ehhez EhEz + _) egyezség EJ:ESSe:g + .group é - é e: - éi (é e::i: + é e: + éi (é e::i: + @) ében (_S4q e:bEn + @) ének (_S4q e:nEk + @) étől (_S4q e:tY:l + éhség e:Se:g + éhségg e:Se:g: .group ë - ë Y + ë Y .group f - f f + f f + führer fy:R2ER2 + .group g - g g -// gg g: - gy J - ggy J: - - gys tS - A) gys (A tS: - gysz Js - A) gysz (A Js: - C) gyj J - A) gyj (A J: - - _e) gy (es J: - _e) gy (et_ J: + g g + gg g: + ggy J: + + _) goethe gY:tE + _) goethé gY:te: + me) g (gy g + me) ggy (fa J + me) ggy (piros J + me) ggy (vörös J + me) ggy (es J: + me) ggy (et J: + me) ggy (_S3 J: + me) ggy (szín J + le) g (gy g + orszá) g (gyűlés g + fü) gg (vény g + fo) g (gyűrű g + fo) g (gyö g +kuplun) g (gyár g + bélye) g (gyűjt g + jo) g (gyakor g + dö) g (gyapjú g + fo) g (gyalu g +hadianya) g (gyár g + ide) g (gy g + lé) g (gyök g + műjé) g (gyár g +régisé) g (gyűjt g +ritkasá) g (gyűjt g + üve) g (gy g + vilá) g (gyűlöl g + gk k: + é) gh (ajla kh + +.group gy + gy J + gys tS + A) gys (A tS: + gysz Js + A) gysz (A Js + C) gyj J + A) gyj (A J: + ha) gyj J: + e) gy (jelentésű J + _e) gy (es J: + _e) gy (et_ J: _e) gy (etlen J: - _e) gy (ik J: - _e) gy (üt J: -_minde) gy (ik J: + _e) gy (ik J: + _e) gy (üt J: + e) gyj (elentésű Jj + lá) gy (sá J + gyön) gy (sor J +_minde) gy (ik J + + na) gysz (a Js + na) gy (sokára J + na) gy (siet J + ú) gys (e J|S + seho) gy (se J + ho) gy (se J + na) gy (ság J + he) gy (ség J + e) gys (ég J|S + e) gy (sarkú J + e) gy (sejtű J + e) gy (sínű J + e) gy (sor J + né) gy (sor J + e) gy (es-egyedül J //need one J phoneme with this word, not J: phoneme + ú) gy (sem J + né) gy (sarok J + na) gy (stíl J + fa) gy (sérül J + _e) gy (ezmény J: + _mege) gy (ez J: + e) gy (-egy J: + na) gy (stratégia J + e) gy (értelmű J: + e) gy (ezked J: + e) gy (eztet J: + e) gy (etért J: + e) gy (irányú J: + kie) gy (ez J: + belee) gy (ez J: + _e) gy (ez J: + e) gy (általán J: + e) gy (ensúly J: +tizene) gy (edszer J: +tizene) gy (es J: + ú) gy (sincs J + e) gy (ért J: + a) gy (sérül J - na) gysz (a Js - - _) goethe gY:tE - _) goethé gY:te: .group h - h h + h h + hertz hER2ts + .group i - i i + i i + @) i (_S1 i + + _) itthon ithon .group í - í i: + í i: + íts i:tS: + ítsd i:tSd -.group j - j j + t) í (zen i + t) í (zet i + v) í (zen i + sz) í (vatás i + v) í (zére i -.group k - k k - kk k: - kk (C kk - _) köz kYz -.group l - l l - ly j - lly jj - A) lj (A l^j +.group j + j j + @) jában (_S5q ja:bAn + @) jának (_S5q ja:nAk + @) jától (_S5q ja:to:l + _) javíts jAvi:tS: + _) javítsd jAvi:tSd - C) ly (_ li - _kéth) ly li -szamue) lly lli -szamue) ly lli - mi) ll (i l +.group k + k k + kk k: + kk (C k: + _) köztársaság k'Ysta:R2SASa:g + központ kYspont + központt kYspont: + központj kYsponc + _) köz kYz + község kYSSe:g + készség ke:SSe:g + kossuth koSu:t + kossutht koSu:t: + készségg ke:SSe:g: + _a) kk (reditál k +.group l + l l + fe) l (ju l + fe) l (jö l + fe) l (jegy l + fe) l (jelen l + fe) l (jár l + + lj l^j + cé) l (já jj + + ly j + lly jj + A) lj (A l^j + e) l (jut l + e) l (jus l + _e) lj (ö lj + á) ll (j j + beszé) lj jj + bére) lj jj + fáj) l l + fájla) l (j jj + gondo) lj jjj + ke) lj jj + sajná) lj jjj + llj jjj + C) ly (_ li + _kéth) ly li +szamue) lly lli +szamue) ly lli + + mi) ll (i l + szá) ll (t l + szé) l (jár l + szé) l (jegy l +keresztü) l (j l + _) tú) l (j l: + e) l (játsz l + fe) l (javít l + fe) l (jogosít l + ökö) l (jog l: + ha) ll (gatom l + me) ll (kas l -.group m - m m - ko) mm (uni m +.group m + m m + ko) mm (uni m + mauser mAuzER2 + mosquito moskito: + mosquitó moskito: + messerschmitt mEs:ER2Smit: +?!2 hi) mm (ler m .group n - n n - n (g N - n (k N - ny n^ - nny n^n^ - nj n^n^ - - - _) nem (- n,Em // has $alt2 attribute in hu_list, combine with the next word + n n + n (g n + n (k n + n (p m + ny n^ + nny n^n^ + nj n^n^ + szí) n (ját n + szí) n (józan n + nyj n^n^ + + _) nem (- nEm // has $combine attribute in hu_list, combine with the next word + me) nny (ország n^ + me) nny (d n^ + me) nny (k n^ + pihe) nj (_S2 n^ + főbe) n (jár n + + ingye) n n + _) nylon nEjlon + + + sze) nny (víz n^ + ajá) nlj j: + i) nny (ekció n^ + bű) n (jel n +negyve) n (yard n + ötve) n (yard n + benzi) n (jegy n + elle) n (javaslat n + késő) n (jövő n + közbe) n (jár n + magá) n (jog n + óceá) n (jár n + pero) n (jegy n + ö) n (járó n +tulajdo) n (jog n + ko) nn (ektor n //connector word, we spokening one n letter, not two n letter + be) nn (szülött n + éle) n (jár n + magá) n (jelleg n + elle) n (játék n + elle) n (javallt n + fé) ny (jel n^ + i) nj (ekció n^ + elle) n (jegy n + fe) nn (tartás n + fe) nn (sík n + egye) n (jogú n + beto) n (járda n .group o - o o - - _r) oose (velt u:z + o o + otthon othon + oscar oska:R2 .group ó - ó o: + ó o: .group ö - ö Y + ö Y .group ő - ő Y: + ő Y: .group p - p p - pp p: - pp (C pp - p (v p_ + p p + pp p: + pp (C pp + p (v p_ + + _) potsdam potsda:m + - _) potsdam potsda:m .group q - q kv - qu kv + q kv + qu kv .group r - r R2 - rr RR - rm R2_m - r (cc R - - _) richa (rd R2iCa: - _) richá (rd R2iCa: + r R2 + rr RR + rm R2_m + r (cc R + _) richa (rd R2iCa: + _) richá (rd R2iCa: + reichsmarschall R2EjsmAR2SAl: +?!2 _) roose (velt R2u:z +?!2 _) reichs R2Ejs .group s - s S - sz s - ssz ss2 - - s (színű S - hel) s (inki z - ki) s (ebb SS - _má) s (szó S -_munká) s S -_nyílá) s S - _o) slo slo: - _o) sló slo: - tojá) s S - - _) semmelweiss sEmmElvEjs - _) semmelweis sEmmElvEjs + s S + föld) s (ánc S + hel) s (inki z + ki) s (ebb SS +_munká) s S +_nyílá) s S + _o) slo slo: + _o) sló slo: + tojá) s S + _) semmelweiss sEmmElvEjs + _) semmelweis sEmmElvEjs _) semmelweiß sEmmElvEjs - engel) s s - mu) ss (olini ss2 - _) saar sa:R2 - _wa) sh (ing S - - sz (öld Sz - va) s (zabl S|| - egé) szs (ég S - + engel) s s + _) saar sa:R2 + _wa) sh (ing S + pénze) s S +robbaná) s S + schmeisser SmEjsER2 +danubiu) s s //a radio station name +juventu) s s //a radio station name + va) s (s S + óriá) s S + látá) s (zavar S + hallá) s (zavar S +?!2 _) sherman SER2mAn +?!2 siegfried sigfR2i:d +gyalogo) s (zászló S + + +.group ss + ssz ss2 + ssz (ínű Ss + mu) ss (olin ss2 + _má) ssz (ó Ss +mennydörgé) ssz (erű Ss +robbaná) ss S: +robbaná) ssz (er Ss +danubiu) ss s: //a radio station name +danubiu) ssz s: //a radio station name +juventu) ss s: +juventu) ssz s: //a radio station name +ejtőernyő) ssz S|s + farka) ssz (em Ss +villamo) ssz (ék Ss + titko) ssz (olgál Ss + karo) ssz (ék Ss + hú) ssz (elet Ss + vörö) ssz (em Ss + dőlé) ssz (ög Ss + vonó) ssz (erenád Ss + maro) ssz Ss + szepe) ssz (ombat Ss + ko) ssz (arv Ss + kaka) ssz (ék Ss + vérte) ssz (őlő Ss + leve) ssz (ed Ss + adá) ssz (ünet Ss + adó) ssz (ámla Ss + állá) ssz (ög Ss + almá) ssz (ürke Ss + ugatá) ssz (erű Ss + autó) ssz (emüveg Ss +zuhaná) ssz (erű Ss + bélé) ssz (öv Ss + karo) ssz (éria Ss + bor) ssz (em Ss + bor) ssz (ór Ss + kéke) ssz (ürke Ss + éde) ssz (áj Ss + égé) ssz (abály Ss +egyene) ssz Ss + má) ssz (or Ss + éke) ssz (ól Ss + éle) ssz (em Ss +ellenállá) ssz (ekrény Ss +előírá) ssz (er Ss + löké) ssz (ám Ss +érzékelé) ssz (int Ss + esé) ssz (ög Ss + fagyo) ssz (ent Ss + farka) ssz (erű Ss + farka) ssz (őlő Ss +fedele) ssz (árny Ss + hajlá) ssz (ög Ss + féti) ssz (erű Ss + hő) ssz (erel Ss + fióko) ssz (ekr Ss +rendelkezé) ssz (er Ss + foga) ssz (eg Ss +foglalkozá) ssz (erű Ss + maga) ssz (árú Ss +gondviselé) ssz (er Ss +gyújtá) ssz (abály Ss + hárma) ssz (ab Ss + hárma) ssz (ö Ss + ver) ssz (ak Ss +hártyá) ssz (árny Ss + hegye) ssz (ög Ss +hirdeté) ssz (öveg Ss +hivatá) ssz (erű Ss + pulzu) ssz (ám Ss + hú) ssz (ekrény Ss + írá) ssz (akér Ss +jelené) ssz (erű Ss + kampó) ssz Ss + ka) ssz (ék Ss +katalógu) ssz (ám Ss +kattogá) ssz Ss + ki) ssz (ám Ss + ki) ssz (erű Ss + ki) ssz (ob Ss + ki) ssz (ék Ss + ki) ssz (ótár Ss +könyve) ssz (ek Ss + köté) ssz Ss + laká) ssz (en Ss + lapo) ssz (ár Ss +látomá) ssz (erű Ss + lejté) ssz (ög Ss + lengé) ssz (abály Ss + lépé) ssz (ám Ss + nyomá) ssz (erű Ss + löké) ssz (erű Ss + luxu) ssz Ss + mágne) ssz (alag Ss +megállapodá) ssz (erű Ss +meglepeté) ssz (erű Ss +motoro) ssz (án Ss + ülé) ssz (ak Ss + tölté) ssz (abályoz Sss + orvo) ssz (övetség Ss + orvo) ssz (akértő Ss + orvo) ssz (emély Ss + orvo) ssz (er Ss + ökrö) ssz (ekér Ss + ő) ssz (üle Ss + padlá) ssz (ob Ss +pikkelye) ssz (árny Ss + piro) ssz (em Ss + plü) ssz (erű Ss + pré) ssz (er Ss + púpo) ssz (únyog Ss +rajtaüté) ssz (er Ss + karo) ssz (ériájú Ss + ruhá) ssz (ekrény Ss + sárgá) ssz Ss + sa) ssz (em Ss + serté) ssz Ss + sonká) ssz Ss + sor) ssz (erű Ss + töré) ssz (ög Ss + uta) ssz (ál Ss +szerzete) ssz (er Ss +szerződé) ssz (e Ss + tudá) ssz (int Ss + szoká) ssz (er Ss + szólá) ssz (abad Ss +születé) ssz (ab Ss +tágulá) ssz (abály Ss + tár) ssz (ekér Ss + tár) ssz (er Ss + tava) ssz (a s: + váro) ssz (iluett Ss +tejfele) ssz (áj Ss +tejfölö) ssz (áj Ss + többe) ssz (ám Ss + tölté) ssz (ám Ss + tövi) ssz (úr Ss + tudá) ssz (omj Ss + szúrá) ssz (erű Ss + ugrá) ssz (erű Ss + vallá) ssz (ab Ss +vöröse) ssz (őke Ss +zökkené) ssz (erű Ss + zölde) ssz (ürke Ss + zsíro) ssz (én Ss +köhögé) ssz (erű Ss + üté) ssz (erű Ss + olva) ssz s: + vi) ssz (hang s +felelő) ss (ég S +égzengé) ssz (erű Ss +világo) ssz (ürke Ss +motoro) ssz (emüveg Ss + bőgé) ssz (erű Ss +kavará) ssz (erű Ss + _sa) ssz (eg Ss + ké) ssz (úrás Ss +gyalogo) ssz Ss + puská) ssz Ss + mozgá) ssz Ss + _ke) ss (elring s: + rádió) ssz (ob Ss + +.group sz + sz s + szts stS: + sztsz st|s + sztsze stsE + sztsza stsA + sz (öld Sz + va) sz (abl S||z + egé) szs (ég S +liszte) szs (ák SZ + rend) sz (er s: +krumpli) szs (ák SZ +szerszámo) szs (ák SZ + maro) sz (ug Sz + körö) sz (ug Sz +fáklyá) sz (ene Sz + hallá) sz (avar Sz + evé) sz (avar Sz + vonó) sz (ene Sz + va) sz (ár Sz +kenyere) szs (ák SZ + sonká) szs (eml SZ + vize) szs (em SZ + iga) szs (ágos S: + li) sztsz (erű st|s + tava) sz (ára s +rongyo) szs (ák SZ + para) sztsz (ek st|s .group t - _) t (_ te: - -) t (_ t - t t - tt t: - tt (C tt - ty c + + _) t (_ te: + -) t (_ t + t t + tc ts: + tt t: + ttk t:k + tth t:h + @) tól (_S3q to:l + @) től (_S3q tY:l + tt (C tt + ttn t:n + ttm t:m + ttl t:l + ttr t:R2 + ttv t:v + ty c // s) ty c: // // z) ty c: // keztyű - ttj tc: - tty c: - - C) tj c - A) tj (A c: - C) tyj c - A) tyj (A c: - - _ka) ty (n ti -vörösmar) ty ti + ttj c: + tty c: +becsüle) t t +becsüle) tt t: + csapa) t (jel t + cson) t t + cson) tt t: + cson) tj c + ezüs) t t + ezüs) tt t: + éle) t t + éle) tt t: + fron) t (szolgál t + gyapo) t t + gyapo) tt t: +gondola) t (sor t + gráni) t t + gráni) tt t: + ada) t t + ada) tt t: + ké) t (sarok t + ké) t (sor t + ké) t (sáv t + ké) t (sarkú t + ké) t (sebességes t +kegyele) t t +kegyele) tt t: + korán) t (se t + üzle) tt t: + üzle) tj c: + nemze) t (szo t + min) t t + t (cs t + tts (á tS: + tts (é tS: + C) tj c + A) tj (A c: + C) tyj c + ttyj c: + A) tyj (A c: + + _ka) ty (n ti + +vörösmar) ty ti + á) t (cikáz t + á) t (caplat t + á) t (sza t + á) tj (ár t|j + á) t (szö t + á) tsz (ő t|s + á) t (szú t + á) t (szű t + á) t (jut t + á) t (juss t + á) t (jö t +állapo) t (sor t +felada) t (sor t +művele) t (sor t + szige) t (sor t +folyama) t (jel t + hi) t (sze t + hi) t (szó t + korlá) tj (ára c: + t (jel t //need this general rule when any not added word contains the tjel part + kür) t t + kür) tj c + kür) t (jel t + kür) t (szó t + küldö) ttj c: + o) tt t: + szen) t (szék t + szé) t t + szé) tt t: + á) t (sor t + á) t (sze t + á) t (sug t + á) t (suh t + á) t (sur t + ne) t (c t + ne) t (se t + ne) t (szo t + + lá) t (sze t + lé) t (szám t + ké) t (száz t + ö) t (száz t + ha) t (száz t + hé) t (száz t + vona) t (jegy t + tesz) t (sor t + tes) t (sér t + fron) t (jár t + á) t (söpör t + ala) tt (jár t: + fri) tz ts: + halo) tt (sápad t: + mi) t (se t + há) t (szél t + thököly tYkYli + nosz) ty ti + ké) t (szín t +passzá) t (szél t + szen) t (jános t + ö) t (yard t + bi) t (sebesség t + álla) t (sereg t + á) t (segít t + épüle) t (sarok t + mene) t (sor t + skó) t (sapka t + lé) t (jogosultság t + bérle) t (jegy t + csapa) t (játék t + ese) t (jog t +fejeze) t (jel t + ké) t (jegyű t + krike) tt (játék t: + mene) t (jegy t + mene) t (jeggy t + szüne) t (jel t + ú) t (jelző t + ú) t (jog t +gondola) t (jel t +helyze) t (jel t +folyama) t (sáv t + ada) t (szolgáltat t + _ú) t (sáv t +négyze) t (centi t + á) tj (öt t|j + á) tj (ön t|j + á) t (süvít t + bará) tj (ára c: +kísérle) t (sorozat t + á) t (sült t + á) t (süt t + épüle) t (sarok t +terüle) ts (áv t|S +terüle) t (cél t + hé) t (jegyű t + természetes tER2me:sEtES + ha) t (sáv t + szen) t (szobrok t + tesz) t (cél t + dró) t (sövény t + dró) t (sövénny t + a) th (én t + huncu) t (ság t + +.group ts + ts (_S2 tS //general rule with word end of ts letters + tsü tSy + apá) ts (ág tS: + bizo) ts (ág tS: + já) tsz ts: + já) tssz ts: + já) tsz (m ts + já) tsz (hat ts + tsz (_S3 ts: + tsz (é ts: + tsz (o ts: + tsz (ő ts: + tszó (_S4 ts:o: + tsz (a t|s + tsz (e t|s + tsz (á t|s + me) tsz (et ts: + ké) tsz (er ts: + ö) tsz (ör ts: + hé) tsz (er ts: + szorí) ts (a tS: + sie) ts tS: + ürí) ts (e tS: + mula) ts tS: + nemze) ts tS: + néme) ts (ég tS: + ts (a tS + ts (á tS + ts (e tS + ts (é tS + ts (o tS + ts (u tS + tsd tSd + bará) ts tS: + dön) ts (ön tS + köve) ts (ég tS: + neve) ts (ég tS: + tsö tSY + j) ts tS + állí) ts tS: + szé) tszé t|se: + szöve) ts (ég tS: + söté) ts (ég tS: + sajá) ts (ág tS: + lehe) ts (ég tS: + tehe) ts (ég tS: + lá) tsz ts: + lá) tssz (on ts: + lá) tssz (anak ts: + te) tsz ts: + fize) ts (ég tS: + segí) ts tS: + á) ts (ó tS: +ismere) ts (ég tS: + vé) ts (ég tS: + fű) ts tS: + halla) tsz (ik ts: + ké) ts (ég tS: + ére) ts (ég tS: + men) ts (vár tS + süke) ts (ég tS: + ú) tsz (él t|s +becsüle) tsz (ó t|s +indula) tsz (ó t|s + cson) tsz (én t|s + dró) tsz (őr t|s + lá) tsz (erész t|s + skó) tsz (okny t|s + söté) tsz (őke t|s + á) ts (é t|S + halla) tssz (on ts: + me) tsz (ik ts: + me) tsz (e ts: + hű) ts tS: + huncu) ts (ág tS: .group u - u u + u u .group ú - ú u: + ú u: + h) ú (szan u + h) ú (szas u + h) ú (szat u .group ü - ü y + ü y + ütt yt: + ütty yc: + .group ű - ű y: + ű y: + t) ű (zijáték y + _t) ű (nés y //If this word is a single word, need y phoneme, not y: phoneme. For example the tűnés word, but not need this rule with eltűnés word. + _t) ű (njön y .group v - v v + v v + _) v (_ ve: _) versailles vER2sa:j .group w - w v + w v + wehrmacht vER2mAht .group x - x ks + _) x (_ iks + x ks .group y - _) y j - y i - K) y (K i + _) y j + y i + K) y (K i + yard jAR2d + yardd jAR2d: .group z - z z - zs Z - zzs Z: - - gá) z (sz z - gé) z (sz z - ké) z (sz z - há) z (so z - há) z (sz z - lá) z (sz z - má) zc (sz z - mé) zc (sz z - nehé) z (sé z - pén) z z - szá) z (sz z - tí) z (sz z - tű) z (sz z - ví) z (sz z - tor) z (szülött z - tor) z (ság z - _vité) z z - _ví) z (s z + z z + + zs Z + zzs Z: + a) z (t s + a) z (tán s +befeje) z (te s + bi) z (tons s + bi) z (tos s +csontvá) z z + e) z (t s + ho) z (ta s + ho) z (tá s + helye) z (ked s + inté) z (ked s + költö) z (köd s + +lefeje) z (te s +lefeje) z (ték s + pén) z (tár s + ré) z (serpenyő z + tartó) z s + + gá) z (cső z + + + ké) z (sz zz + há) z (so z + + + má) zc (sz z + mé) zc (sz z + nehé) z (sé S + nehé) z (súlyú z + iga) zs (ág SS + + ga) zs (ág SS + pén) z z + tor) z (ság z + _vité) z z + _ví) z (s z ga) zs (ág zS - _gá) zsz (ámla zs: - _gá) zsz (ámlá zs: + _gá) zsz (ámla zs + _gá) zsz (ámlá zs _ré) zs (ó zS + ő) zs (uta zS _vá) zs (or zS -_szára) zs (ág zS - _kö) zs (ég zS +_szára) zs (ág SS + _nehé) zs (ely zS _) zürich tsyR2iC - + vigyá) zz (ba z + vigyá) zz (t z + tí) zsz (er s: + szá) zsz (or s: + mé) z (sör z + leme) z (szerz z + ké) z (zsibbadás z + ké) z (sérül z + szű) z (sült z + + gő) z (sugár z +találko) z (t s + eszkö) z (sor z + gő) z (síp z + matró) z (sapka z + nehé) z (súly z + tör) zsz (ászló Z|z + zsz z|s //general exception. Need difference first z and second sz phoneme. For example, rajzszög, rajzszeg, mézszín words. + pén) z (t s + rende) z (ked s + kocká) z (tat s + hibá) z (tat s +különbö) z (tet s + válto) z (tat s + válto) z (tass s +tájéko) z (tat s +tájéko) z (tass s + bi) z (tat s + rá) z (kód s + ré) z (síp z + gará) zs (tároló S + dará) zs (fészek S + ri) zs (t S + tű) zsz (erész s: + tű) zsz (eréssz s: + búcsú) z (ko s +nyújtó) z (ko s + ő) z (sörét z .group - $ dolla:R2 - ä E - æ E - ß s - ç tS - ñ n^ - ø Y + + + $ dolla:R2 + ä E + æ E + ß s + ç tS + ñ n^ + ø Y diff --git a/dictsource/id_list b/dictsource/id_list index 0c1b897..0025b58 100644 --- a/dictsource/id_list +++ b/dictsource/id_list @@ -58,7 +58,7 @@ _7X t'udZuhpuluh _8X d@l'apanpuluh _9X s@mb'ilanpuluh _0C R'atus_| -_1C s@*'atus_| +_1C s@R2'atus_| _0M1 R'ibu_ _1M1 s@r'ibu_ _0M2 dZ'uta_ @@ -90,34 +90,34 @@ _tld t'ild@ // punctuation _! t,anda||s'ER2u _" t,andak'utip -£ ponst'E*RliN -% p@*Rs'En +£ ponst'ER2liN +% p@R2s'En $max3 ^ t,andat'opi & t,andad'an -_* b'intaN +* b'intaN $max3 ++ t'ambah $max3 += s,ama||d'ENan $max3 +~ t'ilde +# p'agaR $max3 +@ a||k'EOng +/ g,aR2is||m'iR2iN $max3 +\ 'bEkslES _( k,uR2uN||b'uka _) k,uR2uN||t'utup __ g,aR2is||b'awah _- t,andah'ubuN -+ t'ambah -= s,ama||d'ENan _{ k,uR2uN||kuR2'awal _} k,uR2uN||kuR2,awal||t'utup _[ k,uR2uN||s'iku _] k,uR2uN||s,iku||t'utup _: t,iti?||d'ua _; t,iti?||k'oma -@ a||k'EOng _' k,utip||t'uNgal -~ t'ilde -# p'agaR _< k,uR2aN||d'aR2i _> l,Ebih||d'aR2i _, k'oma _. t'iti? _? t,anda||t'an^a -/ g,aR2is||m'iR2iN -_\ 'bEkslES // unstressed words diff --git a/dictsource/id_rules b/dictsource/id_rules old mode 100644 new mode 100755 index 2d7cbd2..98e9e8f --- a/dictsource/id_rules +++ b/dictsource/id_rules @@ -12,8 +12,8 @@ .group b b b - _) be (@@ b@ + be (n b@ .group c @@ -27,7 +27,7 @@ e E e) e _|E A_) e _|E - e (_ e + e (_ E .group f f f @@ -49,10 +49,10 @@ .group k k k - k (_ ? + k (_ k kh x - _) ke (@@ k@ + ke (n k@ .group l @@ -92,7 +92,7 @@ .group r r R2 r (K R - e) r (K *R + e) r (K R .group s @@ -107,8 +107,9 @@ .group t t t tj tS // Dutch + _) tel t@l + _) ter (@@ t@R - _) ter (@@ t@*R .group u @@ -143,3 +144,4 @@ ** **) * (_ _:: + diff --git a/dictsource/jbo_list b/dictsource/jbo_list index 660312c..0053a0a 100644 --- a/dictsource/jbo_list +++ b/dictsource/jbo_list @@ -28,12 +28,12 @@ g g@ _i ibu j Z@ k k@ -_l l@ -_m m@ -_n n@ +l l@ +m m@ // should "words" l,m,n,r say the syllable consonant? +n n@ _o obu p p@ -_r R@ +r R@ s s@ t t@ _u ubu @@ -42,9 +42,9 @@ x x@ y '@bu z z@ -h @h@bu -q k@bu -w v@bu +h @h'@bu +q k'@bu +w v'@bu // stressed cmavo @@ -74,12 +74,12 @@ po'u _;_pohu $u goi _;_goI $u ija _;_iZa // should this series be unstressed? -ijanai _;_iZanaI +ijanai _;_iZan'aI ije _;_iZe ije'i _;_iZehi ijenai _;_iZenaI ijo _;_iZo -ijonai _;_iZonaI +ijonai _;_iZon'aI inaja _;_inaZa to _::to $u // start parenthesis, pause but don't raise intonation @@ -90,3 +90,4 @@ boi boI_:: $u vau vaU_:: $u kei keI_:: $u toi toI_:: $u + diff --git a/dictsource/jbo_rules b/dictsource/jbo_rules index 318e094..413213d 100644 --- a/dictsource/jbo_rules +++ b/dictsource/jbo_rules @@ -14,13 +14,15 @@ .group b b b + b (C b_ .group c c S + K) c (C S_! .group d d d - dj dZ + dj dZ // ?? .group e e e @@ -81,8 +83,8 @@ .group r r r- // syllabic A) r R - C) r (A @-* r (A R + r (C R_ // ?? do this in phonemes data instead? .group s diff --git a/dictsource/nci_list b/dictsource/nci_list new file mode 100755 index 0000000..5e3990f --- /dev/null +++ b/dictsource/nci_list @@ -0,0 +1,25 @@ + +// This file is UTF8 encoded +// Spelling to phoneme words for Nahuatl. + +// Note: initial/final "." has already been removed + +// numeric + +//_0 zero $text // TEST +_0 a?tle +_1 se: +_2 O:me +_3 e:ji +_4 na:wi +_5 ma:kwi:lli +_6 tSikwase: +_7 tSicO:me +_8 tSiwke:ji +_9 tSiwkna:wi +_10 ma?tlaktli +_1X ma?tlaktlion +_20 sempO:walli +_2X sempO:wallion +_30 sempO:walliomma?tlaktli +_3X sempO:walliomma?tlaktlion diff --git a/dictsource/nci_rules b/dictsource/nci_rules new file mode 100755 index 0000000..7c36a9c --- /dev/null +++ b/dictsource/nci_rules @@ -0,0 +1,90 @@ +// translation rules for Classical Nahuatl +// This file is UTF-8 encoded + +.L01 e ē i ī // letter group for front vowels + + +.group a + a a + +.group ā + ā a: + +.group c + c k + c (L01 s + ch tS + cu kw + +.group e + e e + +.group ē + ē e: + ē (_ 'e: // vocative, stress in final vowel + +.group h + h ? + hu w + +.group i + i i + +.group ī + ī i: + +.group l + l l + +.group m + m m + + +.group n + n n + +.group o + o o + +.group ō + ō o: + +.group p + p p + +.group q + qu k + +.group t + t t + +.group u + u o + u (A w + uc wk + uq k + uh w + + +.group x + x S + +.group y + y j + +.group z + z s + +.group + b b + d d + f f + g g + j x + k k + r R + s s + v v + w w + ç s + # _: diff --git a/dictsource/no_list b/dictsource/no_list index 513cdc4..5c313ca 100755 --- a/dictsource/no_list +++ b/dictsource/no_list @@ -19,7 +19,7 @@ h ho: j je: k ko: l El -m e:m +m Em n En p pe: q ku-: @@ -34,7 +34,7 @@ z sEt // numeric //******** -_0 n'Ul +_0 n'u-l _1 'e:n _2 t'u: _3 tR'e: @@ -72,24 +72,51 @@ _1M2 'e:n||m'Illi:;,u:n _0and u:g _dpt kOmmA +// ordinal numbers +_ord @nd@2 +_1o f'WRst@2 +_2o 'AndR@2 +_3o tR'Edj@2 +_4o fj'a:R@2 +_5o f'Emt@2 +_6o S'Et:@2 +_8o 'Ot:@nd@2 +_11o 'EllEvt@2 +_12o t'Olvt@2 +_13o tR'Et:@nd@2 +_14o fj'URt@md@2 +_15o f'Emt@nd@2 +_16o s'Ekst@nd@2 +_17o s'yt:@nd@2 +_18o 'At:@nd@2 +_19o n'It:@nd@2 +_2Xo s;'u-:@nd@2 +_0Co h'u-ndR@d@2 +_0M1o t'u-:s@nd@2 + + // punctuation and symbols //======================== +* ss;aRn@2 $max3 += aRli:k $max3 ++ plu-s $max3 +% pR'u:s'Ent $max3 +& O:g +# nu-mm@RtENn $max3 +/ skROstR@k $max3 +\ OmvEndt||skROstR@k $max3 + _! u-:tRu:pstENn _" AnfY:RS@l -_# nu-mm@RtENn _$ dOllA:R -% pR'u:s'Ent -& O:g _' ApUstR'u:f _( paRaNt'e:s||b@j'ynn@R _) paRaNt'e:s||Sl'u-t: _* ss;aRn@2 -+ plu-s _, kOmmA _- stRe:k _. pu-Nktu-:m -/ skROstR@k _: ku:lOn _; se:mi:ku:lOn _< mIndR@2||En @@ -104,11 +131,23 @@ _] h'YyR@2||h'A:ke:paRaNt'e:s __ u-ndaRStR@k _` 'OmvEndt||ApUstR'u:f +_#09 tA:b +_#32 mEllOmRu:m + +_acu A:'ku-t: +_ced s'e:dIll@2 +_cir s'IRku-mflEks +_dia tR'e:mA +_grv gR'A:vi:s +_tld t'Ild@2 +é $accent +ü $accent // abbreviations //************** +ooxml $abbrev // articles @@ -250,6 +289,15 @@ _i i: i i: $atend +// English Words +firefox _^_EN +screen _^_EN +reader _^_EN +cancel _^_EN +continue _^_EN +magnifier _^_EN +and @2nd $only + // MAIN WORD DICTIONARY //********************* @@ -258,4 +306,7 @@ der dE:R her hE:R kom kOm loe lu: $capital +noe nU:@2 +noen nU:@n // no+en +office Offi:s system syst'e:m diff --git a/dictsource/no_rules b/dictsource/no_rules index 0ba1eb4..9c9ad98 100644 --- a/dictsource/no_rules +++ b/dictsource/no_rules @@ -29,6 +29,7 @@ .group c c k cc k: + _) c (e s c (i s c (y s c (ei s @@ -207,7 +208,6 @@ ü y: $ dOllA:R - \\ OmvEndt||skROstR@k ! _:'u-:tRu:pstENn_: !) ! @@ -218,14 +218,4 @@ __) - (_D mi:nu-:s A_) - (_D _ C_) - (_D _ - --) - - * ss;aRn@2 - *) * (* - ** - **) * (_ _:: - - = aRli:k - = (== - =) = (= - ==) = (_ _:: diff --git a/dictsource/pl_list b/dictsource/pl_list index faf92f7..21c4b9f 100644 --- a/dictsource/pl_list +++ b/dictsource/pl_list @@ -804,11 +804,11 @@ winegret $3 (ze mną) z'EmnO~ -// words marked with $alt2 are combined with word marked with $alt +// words marked with $combine are combined with word marked with $alt // (used for 'nie' with single-syllable verbs) -nie $u $alt2 -ni $u $alt2 +nie $u $combine +ni $u $combine diff --git a/dictsource/pt_list b/dictsource/pt_list index 70fc1ef..81a878d 100755 --- a/dictsource/pt_list +++ b/dictsource/pt_list @@ -7,6 +7,11 @@ // ?3 Epenthetic [I] between consonants // ?4 Brazil mbrola voice +// $alt change [e] or [o] in the stressed syllable to [E] or [O] +// $alt2 change [E] or [O] in the stressed syllable to [e] or [o] +// Any [E] or [O] phonemes in unstressed words must be listed explicitly + + // Note for "pt-pt" [R] is the same sound as [r] // for "pt" [y] is the same sound as [i] @@ -44,7 +49,7 @@ _à $accent _à $accent _â $accent _ã $accent -_ç $accent +ç $accent _é $accent _ê $accent _í $accent @@ -205,42 +210,45 @@ vi vi // ABBREVIATIONS //************** -aapp $abbrev -abadv $abbrev -abc $abbrev -a.c 'as'e -adsl $abbrev -ae $abbrev -aids $abbrev -apedv $abbrev -avc $abbrev -bios b'i,OS -d.c d,es'e -cne $abbrev -cpu $abbrev -cpuc $abbrev -dpoc $abbrev -ecg $abbrev -edp $abbrev +aapp $abbrev +abadv $abbrev +abc $abbrev +a.c 'as'e +adsl $abbrev +ae $abbrev +aids $abbrev +apedv $abbrev +avc $abbrev +bios b'i,OS +d.c d,es'e +cne $abbrev +cpu $abbrev +cpuc $abbrev +dpoc $abbrev +ecg $abbrev +edp $abbrev ?1 etc ,ets'Et:*& ?2 etc ,ets'Ete*& -hiv $abbrev -(http ://) ag,atete'pe_ -icc $abbrev -ieee $abbrev // Institute of Electrical and Electronics Engineers -iss $abbrev -jpeg Z,Ot&p'Eg -mpeg ,Emp'Eg -nba $abbrev -nvda $abbrev -oms $abbrev -omt $abbrev -osi $abbrev +e.u.a Eua +eua $abbrev +fbi $abbrev +hiv $abbrev +(http ://) ag,atete'pe_ +icc $abbrev +ieee $abbrev // Institute of Electrical and Electronics Engineers +iss $abbrev +jpeg Z,Ot&p'Eg +mpeg ,Emp'Eg +nba $abbrev +nvda $abbrev +oms $abbrev +omt $abbrev +osi $abbrev ?1 sa ,Esj'a ?1 sos ,Esj,O'Es -ue $abbrev -unts $abbrev -usb $abbrev +ue $abbrev +unts $abbrev +usb $abbrev dr $dot @@ -596,48 +604,65 @@ governo gov'ernU $noun // MAIN WORD DICTIONARY //********************* -borboleta b,orbol'et& -catorze k&t'orzy -fosse f'osy -fossem f'oseIN -hoje 'oZi -líderes l'ide*ys -mexa m'eS& -mexi meS'i -mexo m'eSU -?2 mulher mulj'Er -?4 mulher mul^'Er -mui mu~j -muito m'u~jtu // -s is included as a suffix -muita m'u~jt& -praxedes pR&S'EdZys -?2 rede x'edZy -selvagem seUv'aZeIN -teta t'et& - -// $alt changes the first [o] phoneme to open [O] -novos $alt -mortos $alt -corpos $alt -modo $alt -modos $alt -fogos $alt -lopes $alt -jogos $alt - -// Close [O] -?1 calculadora k,Alkul&d'or& -?1 professora pr,ufys'or& -?1 senhora syn^'or& -?1 sobre s'obry +// $alt changes stressed [e] or [o] phoneme to open [E] or [O] +// $alt2 changes stressed [E] or [O] phoneme to close [e] or [o] +boca $alt2 +borboleta $alt2 +catorze $alt2 +copo $alt +escova $alt2 +fosse $alt2 +fossem $alt2 +hoje $alt2 +líderes $alt2 +mexa m'eS& +mexi meS'i +mexo m'eSU +?2 mulher mulj'Er +?4 mulher mul^'Er +mui mwi +muito mw'iNtU // -s is included as a suffix +muita mw'iNt& +paexa paeSa +perdem $alt +preto $alt2 +onu $1 +rede $alt2 +rixa xiS& +selvagem seUv'aZeIN +suor swOr +tapete $alt2 +teta $alt2 + +novos $alt +mortos $alt +corpos $alt +modo $alt +modos $alt +fogos $alt +lopes $alt +jogos $alt +doce $alt2 +drogas $alt +grosso $alt2 +torres $alt2 + +// Close [o] +?1 calculadora $alt2 +?1 professora $alt2 +?1 senhora $alt2 +?1 sobre $alt2 + +vanessa $alt2 +violeta $alt2 abacaxi abakaSy axé aSE elixir eliSir ?1 fixe f'iSy -roxo x'oSU -xiquexique S,ikeS'iky + + // foreign words ?1 alt 'alt ?2 agosto &g'ostU @@ -774,6 +799,7 @@ louis _^_FR ?2 Outlook ,aUtl'uk ?1 paint p'aint ?1 player pl'eI&r- +playstation _^_EN ?1 point p'oint ?1 power p'aU&r- ?1 product p:r'&d&kt @@ -831,7 +857,7 @@ stephen st'i:v@n steve st'i:v turing t'u*iNg voltaire vOlt'Er -von f'On +von f%On // foreign common names/surnames diff --git a/dictsource/pt_rules b/dictsource/pt_rules index a06f3da..e583d89 100755 --- a/dictsource/pt_rules +++ b/dictsource/pt_rules @@ -15,840 +15,880 @@ // K not a vowel .group a - _) a (_ a - _) a (_W 'a // in an acronym - a a - &) a (_ =& // in final unstressed syllable - &) a (s_ =& - &) a (_a =&/ // ?? elide final a before a - &) a (_à =&/ -?1 a (_ =& // in final unstressed syllable -?1 a (s_ =& -?1 a (_a =&/ // ?? elide final a before a -?1 a (_à =&/ - - a (C_ & - a (r_ 'a -?1 p) a (d_ =E - a (CC_ & -?1 a (l_ 'A // eg: Portugal, capital, etc. -?1 a (lK ,A // Algarve, Almerinda, etc... -?2 al (K aU - a (lh+ a - - a (m &~ - a (mAr_ & - a (mA@ & - a (n &~ - a (nA@ & - a (nAr_ & - am (_ =&~N - am (C &~m -?4 am (C &~N - an (K+ &~N - anh (A &~n^ - am (_ =&U~ -?1 a (z_ 'a //eg: paz, rapaz, capaz, etc... -?1 C) acç 'a's // eg: selecção, etc... - - ai aI - ai (s aI - a (iu_ a // caiu - a (iCK a - ay aI - ao aU - au aU - au (s aU - a (uCK a + _) a (_ a + _) a (_W 'a // in an acronym + a a + &) a (_ =& // in final unstressed syllable + &) a (s_ =& + &) a (_a =&/ // ?? elide final a before a + &) a (_à =&/ +?1 a (_ =& // in final unstressed syllable +?1 a (s_ =& +?1 a (_a =&/ // ?? elide final a before a +?1 a (_à =&/ + + a (C_ & + a (r_ 'a +?1 p) a (d_ =E + a (CC_ & +?1 a (l_ 'A // eg: Portugal, capital, etc. +?1 a (lK ,A // Algarve, Almerinda, etc... +?2 al (K aU + a (lh+ a + + a (m &~ + a (mAr_ & + a (mA@ & + a (n &~ + a (nA@ & + a (nAr_ & + am (_ =&~N + am (C &~m +?4 am (C &~N + an (K+ &~N + anh (A &~n^ + am (_ =&U~ +?1 a (z_ 'a //eg: paz, rapaz, capaz, etc... +?1 C) acç 'a's // eg: selecção, etc... + + ai aI + ai (s aI + a (iu_ a // caiu + a (iCK a + ay aI + ao (_ aU + au aU + au (s aU + a (uCK a .group â - â ''& - â (m ''&~ - â (n ''&~ - âm (K ''&~m - ân (K ''&~N - ânh ''&~n^ + â ''& + â (m ''&~ + â (n ''&~ + âm (K ''&~m + ân (K ''&~N + ânh ''&~n^ .group à - à a - _) à (s_ aI + à a + _) à (s_ aI - à (m &~ - à (n &~ - àm (K &~m - àn (K &~N - ành (A &~n^ + à (m &~ + à (n &~ + àm (K &~m + àn (K &~N + ành (A &~n^ .group á - á ''a - ái ''aI - ái (s ''aI - á (iCK ''a - áy ''aI - áu ''aU - áu (s ''aU -?1 ál ''Al - á (uCK ''a + á ''a + ái ''aI + ái (s ''aI + á (iCK ''a + áy ''aI + áu ''aU + áu (s ''aU +?1 ál ''Al + á (uCK ''a .group ã - ã &~ - ão &U~ + ã &~ + ão &U~ .group b - _) b (_ be - b b - b (b -?3 b (B bI -?3 b (s b -?3 b (_C b_ + _) b (_ be + b b + b (b +?3 b (B bI +?3 b (s b +?3 b (_C b_ .group c - _) c (_ se - c k - c (Y s // ce ci -?3 c (B kI -?3 c (s k -?3 c (t k -?3 c (_C k_ - ch S - ck k -?1 c (c //drop “c” in European Portuguese (eg: seleccionar) -?1 A) ct t //drop “c” in European Portuguese (eg: exacto) -?1 A) cç s //drop “c” in European Portuguese (eg: selecção) -?1 conta) ct (A kt // eg: contacto, contactar, contactável, incontactável, etc... + _) c (_ se + c k + c (Y s // ce ci +?3 c (B kI +?3 c (s k +?3 c (t k +?3 c (_C k_ + ch S + ck k +?1 c (c //drop “c” in European Portuguese (eg: seleccionar) +?1 A) ct t //drop “c” in European Portuguese (eg: exacto) +?1 A) cç s //drop “c” in European Portuguese (eg: selecção) +?1 conta) ct (A kt // eg: contacto, contactar, contactável, incontactável, etc... .group d - _) d (_ de - d d - d (d -?3 d (B dZI -?3 d (_C d_ -?2 d (i dZ -?2 d (í dZ -?2 d (e_ dZ + _) d (_ de + d d + d (d +?3 d (B dZI +?3 d (_C d_ +?2 d (i dZ +?2 d (í dZ +?2 d (e_ dZ .group e - _) e (_ E - e e - e (_ =y - e (s_ =y -?2 e (_AN =i/ // ?? elide to [j] if next word starts with a vowel -?2 &l) e (_AN =i // but not after l or r -?2 &r) e (_AN =i -?1 e (_iN =i/ // drop final [i] is next word starts with another i - -?1 e (e i //eg: candeeiro -?2 ee i -?2 pr) ee (n ee - -?2 el (K EU - e (lh+ e - v) e (lhA_ E - - e (be_ E - e (bem_ E - - e (ca_ E - e (ce_ E - e (cem_ E - - e (chA_ E - e (chAm_ E - r) e (cho_ e - - e (clA_ E - e (clAm_ E - e (co_ E - e (ctA_ E - e (ctAm_ E - - e (de_ E - e (dem_ E - - e (fa_ E - - e (gA_ E - e (gAm_ E - - e (grA_ E - e (grAm_ E - - h) e (gA_ e - h) e (gAm_ e - - e (gue_ E - e (guem_ E - - e (lA_ E - e (lo_ e - e (lAm_ E - - i) e (r_ E - @s) e (r_ E - u) e (r_ E - - ib) e (rA_ E - d) e (rA_ E - ed) e (rAm_ e - m) e (rA_ E - iv) e (rAm_ E - pod) e (rA_ e - d) e (rAm_ E - ib) e (rAm_ E - @s) e (rA_ E - @s) e (rAm_ E - sp) e (rA_ E - sp) e (rAm_ E - - e (rdA_ E - e (rdAm_ E - e (rgA_ E - e (rgAm_ E - - e (rsA_ E - e (rsAm_ E - - e (se_ E - e (sem_ E - - e (ssA_ E - e (ssAm_ E - - e (stA_ E - e (stAm_ E - e (strA_ E - - e (rnA_ E - e (rnAm_ E - - e (rtA_ E - e (rtAm_ E - - e (rrA_ E - e (rrAm_ E - - e (rvA_ E - e (rvAm_ E - - e (tA_ E - An) e (tA_ e - gaz) e (ta_ e - e (tAm_ E - - e (vA_ E - t) e (ve_ e - e (vi_ e - e (vê_ e - e (vAm_ E - - e (rrAs_ E - - e (x_ E - e (xA_ E - e (xAm_ E -?2 _n) e (t E - - em (C eIm - en (K eIN - enh en^ - - em (_ =eIN - em (s_ =eIN - en (_ =eIN - en (s_ =eIN - - ei eI - ei (s eI - e (iCK e - ey eI - eu eU - eu (s eU - e (uCK e - -?1 d) e (CAA y -?1 d) e (CACAA y -?1 d) e (CACAC y -?1 d) e (CACC y -?1 d) e (CCAA y -?1 d) e (nCAA ,e -?1 d) e (CCACA y -?1 d) e (nCACA ,e -?1 d) e (CCACCA y -?1 d) e (nCACCA ,e - - j) e (tA_ E - j) e (tAm_ E - -?1 _) es (C@@ S // drop initial "e". -?1 _) e (f i // efectuar, etc. -?1 _n) e (nhu i // eg: nenhum, nenhuma, nenhuns, nenhumas. -?1 e (la_ 'E // eg: cadela, janela, vela, etc... -?1 C) e (cC ,E // eg: seleccionar, efectuar, etc... -?1 C) ecç 'E's // eg: selecção, etc... -?1 C) e (ã i // leão, panteão, etc. -?1 C) e (a i // oceano, etc. -?1 C) e (o 'i // eg: geologia, etc... -?1 C) e (ú i // conteúdo, etc. -?1 Cã) e j // cães, mãe, etc... -?1 c) e (rea y // cereais -?1 d) e (fici y // deficiênte, deficiência, etc... -?1 _d) e (fini y //definições. -?1 _d) e (slig y // desligar. -?1 _d) e (sloc y // eg: deslocamento, etc... -?1 _f) e (ch y // fechar -?1 _p) e (rcentag y // percentagem -?1 p) e (ssoa y //pessoal, pessoais, etc. -?1 pr) e (cis y // precisar -?1 pr) e (f y // preferências, etc. -?1 _r) e (cicl y // recicla, reciclagem, etc... -?1 r) e (cor y // recorrer, recordar -?1 r) e (luz y // eg: reluzir -?1 r) e (lva ,E // eg: relvado -?1 r) e (smung y // resmungar -?1 r) e (ss y // eg: ressequidos -?1 r) e (volv y // revolver -?1 r) e (vel y // revelar -?1 _t) e (rmin y // terminar. -?1 _v) e (loci y // velocidade -?1 _f) e (rramenta y // ferramenta, ferramentas. -?1 _p) e (squ y // pesquisar -?1 hip) e (r ,E // eg: hiper -?1 sup) e (r ,E // super -?1 _m) e (ga ,E // mega -?1 _int) e (rn ,E // Interno -?1 n) e (t 'E // eg: net -?1 e (l_ 'E // eg: possível, manuel, etc... -?1 v) e (l_ ,E // eg: possível, amovível, disponível, etc... -?1 l) e (ta 'E // eg: bicicleta, atleta. + _) e (_ E + e e + e (_ =y + e (s_ =y +?2 e (_AN =i/ // ?? elide to [j] if next word starts with a vowel +?2 &l) e (_AN =i // but not after l or r +?2 &r) e (_AN =i +?1 e (_iN =i/ // drop final [i] is next word starts with another i + +?1 e (e i //eg: candeeiro +?2 ee i +?2 pr) ee (n ee + +?2 el (K EU + e (lh+ e + v) e (lhA_ E + + e (be_ E + e (bem_ E + + e (ca_ E + e (ce_ E + e (cem_ E + + e (chA_ E + e (chAm_ E + r) e (cho_ e + + e (clA_ E + e (clAm_ E + e (co_ E + e (ctA_ E + e (ctAm_ E + + e (de_ E + e (dem_ E + + e (fa_ E + + e (gA_ E + e (gAm_ E + + e (grA_ E + e (grAm_ E + + h) e (gA_ e + h) e (gAm_ e + + e (gue_ E + e (guem_ E + + e (lA_ E + e (lo_ e + e (lAm_ E + + i) e (r_ E + @s) e (r_ E + u) e (r_ E + + ib) e (rA_ E + d) e (rA_ E + ed) e (rAm_ e + m) e (rA_ E + iv) e (rAm_ E + pod) e (rA_ e + d) e (rAm_ E + ib) e (rAm_ E + @s) e (rA_ E + @s) e (rAm_ E + sp) e (rA_ E + sp) e (rAm_ E + + e (rgA_ E + e (rgAm_ E + + e (rsA_ E + e (rsAm_ E + + e (se_ E + e (sem_ E + + e (ssA_ E + e (ssAm_ E + + e (stA_ E + e (stAm_ E + e (strA_ E + + e (rnA_ E + e (rnAm_ E + + e (rtA_ E + e (rtAm_ E + + e (rrA_ E + e (rrAm_ E + + e (rvA_ E + e (rvAm_ E + + e (tA_ E + An) e (tA_ e + gaz) e (ta_ e + e (tAm_ E + + e (vA_ E + t) e (ve_ e + e (vi_ e + e (vê_ e + e (vAm_ E + + e (rrAs_ E + + e (x_ E + e (xA_ E + e (xAm_ E +?2 _n) e (t E + + em (C eIm + en (K eIN + enh en^ + + em (_ =eIN + em (s_ =eIN + en (_ =eIN + en (s_ =eIN + + ei eI + ei (s eI + e (iCK e + ey eI + eu eU + eu (s eU + e (uCK e + +?1 d) e (CAA y +?1 d) e (CACAA y +?1 d) e (CACAC y +?1 d) e (CACC y +?1 d) e (CCAA y +?1 d) e (nCAA ,e +?1 d) e (CCACA y +?1 d) e (nCACA ,e +?1 d) e (CCACCA y +?1 d) e (nCACCA ,e + + j) e (tA_ E + j) e (tAm_ E + _r) eex (A eez + +?1 _) es (C@@ S // drop initial "e". +?1 _) e (f i // efectuar, etc. +?1 _n) e (nhu i // eg: nenhum, nenhuma, nenhuns, nenhumas. +?1 e (la_ 'E // eg: cadela, janela, vela, etc... +?1 C) e (cC ,E // eg: seleccionar, efectuar, etc... +?1 C) ecç 'E's // eg: selecção, etc... +?1 C) e (ã i // leão, panteão, etc. +?1 C) e (a i // oceano, etc. +?1 C) e (o 'i // eg: geologia, etc... +?1 C) e (ú i // conteúdo, etc. +?1 Cã) e j // cães, mãe, etc... +?1 c) e (rea y // cereais +?1 d) e (fici y // deficiênte, deficiência, etc... +?1 _d) e (fini y //definições. +?1 _d) e (slig y // desligar. +?1 _d) e (sloc y // eg: deslocamento, etc... +?1 _f) e (ch y // fechar +?1 _p) e (rcentag y // percentagem +?1 p) e (ssoa y //pessoal, pessoais, etc. +?1 pr) e (cis y // precisar +?1 pr) e (f y // preferências, etc. +?1 _r) e (cicl y // recicla, reciclagem, etc... +?1 r) e (cor y // recorrer, recordar +?1 r) e (luz y // eg: reluzir +?1 r) e (lva ,E // eg: relvado +?1 r) e (smung y // resmungar +?1 r) e (ss y // eg: ressequidos +?1 r) e (volv y // revolver +?1 r) e (vel y // revelar +?1 _t) e (rmin y // terminar. +?1 _v) e (loci y // velocidade +?1 _f) e (rramenta y // ferramenta, ferramentas. +?1 _p) e (squ y // pesquisar +?1 hip) e (r ,E // eg: hiper +?1 sup) e (r ,E // super +?1 _m) e (ga ,E // mega +?1 _int) e (rn ,E // Interno +?1 n) e (t 'E // eg: net +?1 e (l_ 'E // eg: possível, manuel, etc... +?1 v) e (l_ ,E // eg: possível, amovível, disponível, etc... +?1 l) e (ta 'E // eg: bicicleta, atleta. .group é - é ''E - éi ''EI - éi (s ''EI - é (iCK ''E - éy ''eI - éu ''EU - éu (s ''EU - é (uCK ''E - ém (_ ''eIN - ém (s_ ''eIN - én (_ ''eIN - én (s_ ''eIN + é ''E + éi ''EI + éi (s ''EI + é (iCK ''E + éy ''eI + éu ''EU + éu (s ''EU + é (uCK ''E + ém (_ ''eIN + ém (s_ ''eIN + én (_ ''eIN + én (s_ ''eIN .group ê - ê ''e - êm (_ ''eIN - êm (C ''eIm - ên (K ''eIN - ênh ''en^ - êm (_ ''eIN + ê ''e + êm (_ ''eIN + êm (C ''eIm + ên (K ''eIN + ênh ''en^ + êm (_ ''eIN .group f -?1 _) f (_W Ef; // within an acronym -?1 _) f (_ Ef // individual letter or end-of-acronym - _) f (_ 'Efe - f f - f (f -?3 f (B fI -?3 f (_C f_ +?1 _) f (_W Ef; // within an acronym +?1 _) f (_ Ef // individual letter or end-of-acronym + _) f (_ 'Efe + f f + f (f +?3 f (B fI +?3 f (_C f_ .group g -?1 _) g (_ ge -?1 _) g (_W Ze // within an acronym - _) g (_ Ze - g g - g (g -?3 g (B gI -?3 g (_C g_ - g (Y Z // ge gi - gu (Y g -?1 guen (C gw'eIN // aguenta, etc. -?1 n) gu (A gw // eg: língua, etc. -?1 man) gu (ei g // mangueira -?1 gu (ém_ g // eg: alguém, ninguém, etc... +?1 _) g (_ ge +?1 _) g (_W Ze // within an acronym + _) g (_ Ze + g g + g (g +?3 g (B gI +?3 g (_C g_ + g (Y Z // ge gi + gu (Y g +?1 guen (C gw'eIN // aguenta, etc. +?1 n) gu (A gw // eg: língua, etc. +?1 man) gu (ei g // mangueira +?1 gu (ém_ g // eg: alguém, ninguém, etc... .group h - _) h (_ ag'a - h // silent + _) h (_ ag'a + h // silent .group i - _) i (_ i - i i - i (A j - Cr) i i - Cl) i i - i (_ 'i - -?2 il (K iU - i (lh+ i - - im (_ iN - im (C im -?4 im (C iN - in (C iN // ?4 ?? - in (g iN - in (k iN - inh in^ - - i (A_ 'i - i (am_ 'i - io (_ iU - io (s_ iU - i (oCK i - iu (_ iU - iu (s_ iU - i (uCK i - - áC) i (A_ j - áCC) i (A_ j - âC) i (A_ j - âCC) i (A_ j - éC) i (A_ j - éCC) i (A_ j - êC) i (A_ j - êCC) i (A_ j - íC) i (A_ j - íCC) i (A_ j - óC) i (A_ j - óCC) i (A_ j - ôC) i (A_ j - ôCC) i (A_ j - úC) i (A_ j - úCC) i (A_ j - -?1 _) i (ntern 'i //inter -?1 @) ing (_ _^_EN -?1 @) ings (_ _^_EN + _) i (_ i + i i + i (A j + i (o i + Cr) i i + Cl) i i + i (_ 'i + +?2 il (K iU + i (lh+ i + + im (_ iN + im (C im +?4 im (C iN + in (C iN // ?4 ?? + in (g iN + in (k iN + inh in^ + + i (A_ 'i + i (am_ 'i + io (_ iU + io (s_ iU + i (oCK i + iu (_ iU + iu (s_ iU + i (uCK i + + áC) i (A_ j + áCC) i (A_ j + âC) i (A_ j + âCC) i (A_ j + éC) i (A_ j + éCC) i (A_ j + êC) i (A_ j + êCC) i (A_ j + íC) i (A_ j + íCC) i (A_ j + óC) i (A_ j + óCC) i (A_ j + ôC) i (A_ j + ôCC) i (A_ j + úC) i (A_ j + úCC) i (A_ j + +?1 _) i (ntern 'i //inter +?1 @) ing (_ _^_EN +?1 @) ings (_ _^_EN .group í - í ''i - í (m ''i - í (n ''i - ím (_ ''iN - ím (C ''im - ín (K ''iN - ính ''in^ + í ''i + í (m ''i + í (n ''i + ím (_ ''iN + ím (C ''im + ín (K ''iN + ính ''in^ .group j - _) j (_ Z'Ot& - j Z -?3 j (B ZI -?3 j (_C Z_ + _) j (_ Z'Ot& + j Z +?3 j (B ZI +?3 j (_C Z_ .group k -?1 _) k (_ k'ap& -?2 _) k (_ ka - k k - k (k -?3 k (B kI -?3 k (s k -?3 k (t k -?3 k (_C k_ +?1 _) k (_ k'ap& +?2 _) k (_ ka + k k + k (k +?3 k (B kI +?3 k (s k +?3 k (t k +?3 k (_C k_ .group l -?1 _) l (_W El; // within an acronym -?1 _) l (_ El - _) l (_ 'Ele - l l - l) l - lh l^ - A) lh lj -?1 A) lh l^ -?4 A) lh l^ +?1 _) l (_W El; // within an acronym +?1 _) l (_ El + _) l (_ 'Ele + l l + l) l + lh l^ + A) lh lj +?1 A) lh l^ +?4 A) lh l^ .group m -?1 _) m (_W Em; -?1 _) m (_ Em - _) m (_ 'eme - m m - m (m -?3 m (B mI -?3 m (_C m_ +?1 _) m (_W Em; +?1 _) m (_ Em + _) m (_ 'eme + m m + m (m +?3 m (B mI +?3 m (_C m_ .group n -?1 _) n (_W En; -?1 _) n (_ En - _) n (_ 'ene - n n - n (n -?3 n (B nI -?3 n (_C n_ - nh n^ -?1 A) nn n //drop “n” (eg: connosco). +?1 _) n (_W En; +?1 _) n (_ En + _) n (_ 'ene + n n + n (n +?3 n (B nI +?3 n (_C n_ + nh n^ +?1 A) nn n //drop “n” (eg: connosco). .group o - o o - @) o (_ =U - o (s_ =U - ou ow - oi oI - oi (s oI - o (iCK o - oo u - oon u~N - c) oo oo -?1 C) oo (_ ow // eg: voo, enjoo, etc... - oy OI - - o (cA_ O - o (cAm_ O - - o (que_ O - o (quem_ O - - p) o (dA_ O - p) o (dAm_ O - - o (g_ O - o (gs_ O - - o (ge_ O - o (gem_ O - - o (jA_ O - o (jAm_ O - - o (ldA_ O - o (ldAm_ O - - o (lA_ O - o (lAm_ O - - o (ltA_ O - o (ltAm_ O - - o (sA_ O - o (so_ o - o (sAm_ O - - o (ssA_ O - o (ssAm_ O - - o (va_ O - o (vAm_ O - o (ve_ O - m) o (va_ o - m) o (vam_ o - o (veCs_ O - -?1 o (l_ 'O -?2 ol (_ Ow - o (lh+ o -?2 _) o (lhA_ O -?2 _) o (lhAm_ O - om (_ oN - o (ma_ o - - om (C om -?4 om (C oN - on (K oN - o (na_ o - onh on^ - - o (brA_ O - o (brAm_ O - o (dA_ O - o (dAm_ O - t) o (dA_ o - - o (rCA_ O - o (rCo_ o - o (rCAm_ O - - o (stA_ O - o (sto_ o - o (stAm_ O - o (strA_ O - os (trAm_ O - - o (tA_ O - o (tAm_ O - -?2 o (x_ O -?1 oz (_ Os# -?2 oz (_ Oz - o (zes_ O - o (rA_ O - b) o (re_ o - c) o (re_ o - d) o (re_ o - l) o (re_ o - t) o (re_ o - v) o (re_ o - o (rAm_ O - b) o (rA_ O - @@) o (rA_ o - - o (p_ O -?1 _) o (C O // eg: olá, orla, opção, etc... -?1 _C) o (CACAC u // Documento, documentação, localizar, etc. -?1 f) o (rmat u // formatar, formato. -?1 _p) o (rtuC u // Portugal, Portucalense, etc... -?1 pr) o (f u -?1 _s) o (lu u // solução, soluções. -?1 interr) o (g u // eg: interrogação -?1 f) o (rmulá u // eg: formulário, formulários. -?1 v) o (lt O + o o + @) o (_ =U + o (s_ =U + ou ow + oi oI + oi (s oI + o (iCK o + oo u + oon u~N + c) oo oo +?1 C) oo (_ ow // eg: voo, enjoo, etc... + oy OI + + o (cA_ O + o (cAm_ O + + o (que_ O + o (quem_ O + + p) o (dA_ O + p) o (dAm_ O + + o (g_ O + o (gs_ O + + o (ge_ O + o (gem_ O + + o (jA_ O + o (jAm_ O + + o (ldA_ O + o (ldAm_ O + + o (lA_ O + o (lAm_ O + + o (ltA_ O + o (ltAm_ O + + o (sA_ O + o (so_ o + o (sAm_ O + + o (ssA_ O + o (ssAm_ O + + o (va_ O + o (vAm_ O + o (ve_ O + m) o (va_ o + m) o (vam_ o + o (veCs_ O + +?1 o (l_ 'O +?2 ol (_ Ow + o (lh+ o +?2 _) o (lhA_ O +?2 _) o (lhAm_ O + om (_ oN + o (ma_ o + + om (C om +?4 om (C oN + on (K oN + @s) on (_ %oN // words ending in -son + o (na_ o + onh on^ + + o (brA_ O + o (brAm_ O + o (dA_ O + o (dAm_ O + t) o (dA_ o + + o (rCA_ O + o (rCo_ o + o (rCAm_ O + + o (stA_ O + o (sto_ o + o (stAm_ O + o (strA_ O + os (trAm_ O + + o (tA_ O + o (tAm_ O + +?2 o (x_ O +?1 oz (_ Os# +?2 oz (_ Oz + o (zes_ O + o (rA_ O + b) o (re_ o + c) o (re_ o + d) o (re_ o + l) o (re_ o + t) o (re_ o + v) o (re_ o + o (rAm_ O + b) o (rA_ O + @@) o (rA_ o + + o (p_ O +?1 _) o (C O // eg: olá, orla, opção, etc... +?1 _C) o (CACAC u // Documento, documentação, localizar, etc. +?1 f) o (rmat u // formatar, formato. +?1 _p) o (rtuC u // Portugal, Portucalense, etc... +?1 pr) o (f u +?1 _s) o (lu u // solução, soluções. +?1 interr) o (g u // eg: interrogação +?1 f) o (rmulá u // eg: formulário, formulários. +?1 v) o (lt O .group ô - ô ''o - ôm (_ ''oN - ôm (C ''om - ôn (K ''oN - ônh ''on^ + ô ''o + ôm (_ ''oN + ôm (C ''om + ôn (K ''oN + ônh ''on^ .group ó - ó ''O + ó ''O - ói ''OI - ói (s ''OI - ó (iCK ''O - óu ''Ow - óy ''OI + ói ''OI + ói (s ''OI + ó (iCK ''O + óu ''Ow + óy ''OI .group õ - õ o~ - õe o~j + õ o~ + õe o~j .group p - _) p (_ pe - p p - p (p -?3 p (B pI -?3 p (s p -?3 p (t p -?3 p (_C p_ -?1 ph f //Didn’t use in European Portuguese (eg: English) -?1 ple (_ _^_EN + _) p (_ pe + p p + p (p +?3 p (B pI +?3 p (s p +?3 p (t p +?3 p (_C p_ +?1 ph f //Didn’t use in European Portuguese (eg: English) +?1 ple (_ _^_EN .group q - _) q (_ ke - q k -?3 q (B kI - qu kw - qü kw - qu (Y k - qu (K ku -?1 _) qua kwa // quatro, etc. -?1 _) que ke // quente, etc. -?1 _) quei (C k'eI // queira, queima, etc -?1 C) quen (C kw'eIN // cinquenta, etc. -?1 A) quen (C kw'eIN // frequência, etc. -?1 quec kes // esquece, etc. -?1 queç kes // esqueça. -?1 A) que (nA_ ke // pequeno, etc. -?1 C) quê (_ ke // porquê, etc. -?1 que (l ke // aquele, etc. -?1 que (r_ kE // qualquer, etc. -?1 qui ki // quinta, esquilo, etc. -?1 _) quind kuind // quindecágono, etc. -?1 tran) qui kui // tranquilo, etc. -?1 _) quo kuo // quoficiente, etc. - - + _) q (_ ke + q k +?3 q (B kI + qu kw + qü kw + qu (Y k + qu (K ku +?1 _) qua kwa // quatro, etc. +?1 _) que ke // quente, etc. +?1 _) quei (C k'eI // queira, queima, etc +?1 C) quen (C kw'eIN // cinquenta, etc. +?1 A) quen (C kw'eIN // frequência, etc. +?1 quec kes // esquece, etc. +?1 queç kes // esqueça. +?1 A) que (nA_ ke // pequeno, etc. +?1 C) quê (_ ke // porquê, etc. +?1 que (l ke // aquele, etc. +?1 que (r_ kE // qualquer, etc. +?1 qui ki // quinta, esquilo, etc. +?1 _) quind kuind // quindecágono, etc. +?1 tran) qui kui // tranquilo, etc. +?1 _) quo kuo // quoficiente, etc. + + .group r -?1 _) r (_W 'Err; // within an acronym -?1 _) r (_ 'Err - _) r (_ 'Exe - _) r (_\$ xe'aU // currency - r r - A) r (A * - A) r (_A * - rr x - C) r (A R // for "pt-pt" [R] is the same as [r] - _) r x - l) r x - n) r (+ x - s) r x -?1 A) r (_ r- // [r-] is English linking-r +?1 _) r (_W 'Err; // within an acronym +?1 _) r (_ 'Err + _) r (_ 'Exe + _) r (_\$ xe'aU // currency + r * + r (_ r + r (C *@- + A) r (A * + A) r (_A * + rr x + XC) r (A R + C) r (A r +//?1 C) r (A r + _) r x + l) r x + n) r (+ x + s) r x +?1 A) r (_ r- // [r-] is English linking-r .group s -?1 _) s (_W Es|; within an acronym [s]+[;] not [s;] phoneme -?1 _) s (_ Es -?2 _) s (_ 'Ese - s s - ss s - sc (Y s - sç s - sh S -?4 _) s (C Is - A) s (A z -?1 @) s (_ s# -?2 s (_ s# - @) s (_A z // next word starts with vowel -?!4 @) s (_G z // next word starts with voiced consonant - - A) s (_S1 s - A) s (_AS1 z // next word starts with vowel - ese) s (_ s -?!4 A) s (_GS1 z // next word starts with voiced consonant - -?1 A) s (C s# -?1 A) ss s -?1 A) s (G+ Z -?1 A) s (_KS1 s# -?1 A) s (_G+S1 Z +?1 _) s (_W Es|; within an acronym [s]+[;] not [s;] phoneme +?1 _) s (_ Es +?2 _) s (_ 'Ese + s s + ss s + sc (Y s + sç s + sh S +?4 _) s (C Is + A) s (A z +?1 @) s (_ s# +?2 s (_ s# + @) s (_A z // next word starts with vowel +?!4 @) s (_G z // next word starts with voiced consonant + + A) s (_S1 s + A) s (_AS1 z // next word starts with vowel + ese) s (_ s +?!4 A) s (_GS1 z // next word starts with voiced consonant + +?1 A) s (C s# +?1 A) ss s +?1 A) s (G+ Z +?1 A) s (_KS1 s# +?1 A) s (_G+S1 Z + + _) sobre (@P5 sob*e .group t - _) t (_ te - t t - t (t -?3 t (B tSI -?3 t (_C t_ -?2 t (i tS -?2 t (í tS -?2 t (e_ tS -?1 th _^_EN -?1 tion (_ _^_EN + _) t (_ te + t t + t (t +?3 t (B tSI +?3 t (_C t_ +?2 t (i tS +?2 t (í tS +?2 t (e_ tS +?1 th _^_EN +?1 tion (_ _^_EN .group u - _) u (_ u - u u - u (A w - u (_A w - r) u (A u - r) u (_A u - u (A_ 'u - - ui 'uI - ui (_ uI - ui (s 'uI - u (iCK u - uy uI - - um (_ u~N - um (C u~m -?4 um (C u~N - un (K u~N - unh u~n^ - - g) u (Y + _) u (_ u + u u + u (A w + u (_A w + r) u (A u + r) u (_A u + u (A_ 'u + + ui 'uI + ui (_ uI + ui (s 'uI + u (iu w + u (iCK u + uy uI + + um (_ u~N + um (C u~m +?4 um (C u~N + un (K u~N + unh u~n^ + + g) u (Y .group ú - ú ''u - úm (_ ''u~N - úm (C ''u~m -?4 úm (C ''u~N - ún (K ''u~N - únh ''u~n^ + ú ''u + úm (_ ''u~N + úm (C ''u~m +?4 úm (C ''u~N + ún (K ''u~N + únh ''u~n^ .group v - v v - v (v -?3 v (B vI -?3 v (_C v_ + v v + v (v +?3 v (B vI +?3 v (_C v_ .group w -?1 _) w (_ d'&bl,iu -?2 _) w (_ d'ablju - w w -?1 w (_ _^_EN -?4 _) w u +?1 _) w (_ d'&bl,iu +?2 _) w (_ d'ablju + w w +?1 w (_ _^_EN +?4 _) w u .group x - x (A S - A) x (A ks - _e) x (A z - e) x (A ks -?1 e) x (CA S - ai) x (A S - ei) x (A S - au) x s - ou) x s - x (C s - x (s - x (_ ks - ale) x (a S - _fa) x (i S - _li) x (A S - _lu) x (A S - má) x (im s // máximo, máximas, etc. - me) x (A S - pro) x (i s // aproximado, aproximadamente, aproximar, etc. - pró) x (i s // próximo, etc. - pu) x (A S // verb "puxar" and all its conjugations - rela) x (A S - _xi) x (A S -?1 i) x (a_ S -?1 i) x (as_ S + x (A S + A) x (A ks + _e) x (A z + _ê) x (A z + _ine) x (A z + e) x (A ks +?1 e) x (CA S + ai) x (A S + ei) x (A S + _au) x s + ou) x (+ S + u) x (i S + x (iqu S + x (C s + xc (Y s + x (s + x (_ ks + x (AxA S + x (ó_ z + a) x (a S + a) x (á S + a) x (ar S + a) x (ei S + xA) x (A S + ale) x (a S + bau) x (A S + brA) x (A S + bY) x (A S + _ca) x (A S + _co) x (A S + _coe) x (A z + _fa) x (i S + _fle) x (a S + gra) x (A S + _he) x (A z + _li) x (A S + _lu) x (A S + _mar) x ks + má) x (im s // máximo, máximas, etc. + me) x (A S + _mé) x (i S + mo) x (a S + _o) x (A S + _o) x (i ks + pi) x (A S + _pro) x (A S + _pra) x (A S + prA) x (i s // aproximado, aproximadamente, aproximar, próximo, etc. + pu) x (A S // verb "puxar" and all its conjugations + qui) x (A S + ri) x (A S + rela) x (A S + _ro) x (A S + _ve) x (A S + _xi) x (A S +?1 i) x (a_ S +?1 i) x (as_ S .group y -?1 _) y (_ 'ips,ilON -?2 _) y (_ 'ipsiloN - y i - y (A j +?1 _) y (_ 'ips,ilON +?2 _) y (_ 'ipsiloN + y i + y (A j + y (_ %i // ?? stress on 1st syllable EN .group z - _) z (_ ze - z z - z (z -?3 z (B zI -?3 z (_C z_ -?1 @) z (_ S -?2 @) z (_ s - @) z (_A z - @) z (_G z - -?1 A) z (C S -?1 A) z (G+ Z -?1 A) z (_C S -?1 A) z (_G+ Z + _) z (_ ze + z z + z (z +?3 z (B zI +?3 z (_C z_ +?1 @) z (_ S +?2 @) z (_ s + @) z (_A z + @) z (_G z + +?1 A) z (C S +?1 A) z (G+ Z +?1 A) z (_C S +?1 A) z (_G+ Z .group - ç s - _) ç (_ s'esed'il^& + ç s - ü u - ß s + ü u + ß s - $ sifR'&U~ - _r_) $ + $ sifR'&U~ + _r_) $ - D_) º %o // ordinal - D_) ª %a // ordinal + D_) º %o // ordinal + D_) ª %a // ordinal - , (D v'irgul& + , (D v'irgul& - __) - (_D m'enUs - A_) - (_D _ - C_) - (_D _ + __) - (_D m'enUs + A_) - (_D _ + C_) - (_D _ diff --git a/dictsource/ro_list b/dictsource/ro_list old mode 100755 new mode 100644 index 93d9e8c..0597042 --- a/dictsource/ro_list +++ b/dictsource/ro_list @@ -79,7 +79,7 @@ _? ynt@-*eb'a*e _- k@-*'atim@ __ sublinj'at _' apost@-*'of -_" gilim'ele +_" ghilim'ele _( pa*ant,ez@desk'is@ _) pa*ant,ez@ynk'is@ _[ pa*ant,ez@p@t@-*'at@ @@ -126,7 +126,7 @@ _11 'unsp@-*ez,etSe _12 d'oIsp@-*ez,etSe _13 t@-*'eIsp@-*ez,etSe _14 p'aIsp@-*ez,etSe -_15 tS'intSI^sp@-*ez,etSe +_15 tS'insp@-*ez,etSe _16 S'aIsp@-*ez,etSe _17 S'aptesp@-*ez,etSe _18 'optsp@-*ez,etSe @@ -142,19 +142,19 @@ _19 n'oU@sp@-*ez,etSe //_18 'optiSpe //_19 n'oU@Spe -_20 doU@z'etSI^ +_20 dou@z'etSI^ _30 t@-*eIz'etSI^ _40 pat@-*uz'etSI^ -_50 tSintSI^z'etSI^ +_50 tSinz'etSI^ _60 SaIz'etSI^ _70 Saptez'etSI^ _80 optz'etSI^ _90 noU@z'etSI^ -_2X d'oU@zetSI^ +_2X d'ou@zetSI^ _3X t@-*'eIzetSI^ _4X p'at@-*uzetSI^ -_5X tS'intSI^zetSI^ +_5X tS'inzetSI^ _6X S'aIzetSI^ _7X S'aptezetSI^ _8X 'optzetSI^ @@ -162,7 +162,7 @@ _9X n'oU@zetSI^ _0C s'ute _1C ,os'ut@ -_2C d'oU@s'ute +_2C d'ou@s'ute _0M1 m'iI _1M1 ,om'ie @@ -189,12 +189,23 @@ vii viI // Abbreviations //************** -etc ettS'ete*a -s.a Si'aSa -ş.a. Si'aSa -s.a.m.d Se|aSamaIdeparte -ş.a.m.d Se|aSamaIdeparte -b-dul bulev'a*dul +$textmode +etc etcetera +(b-dul) bulevardul +udmr udemer'e +cf. conform +mm milimetri +cm centimetri +km kilometri +ml mililitri +mg miligrame +kg kilograme +$phonememode + +ş.a Si_!aS,a||maI||dep'arte +ş.a.m.d Si_!aS,a||maI||dep'arte +s.a.m.d Se|aSamaIdeparte +(km / h) kilom'et@-*i_!pe||'or@ // articles un $u @@ -209,6 +220,13 @@ unei $u1 unor $u1 unora $u1+ unele $u1 // some +nicio $u1+ +niciun $u1+ +niciunul $u1+ +niciuna $u1+ +niciunul $u1+ +niciunele $u1+ +niciunii $u1+ anumite $u3 anumitor $u3 @@ -290,6 +308,7 @@ cărora $u1 ceea $u $brk // that aceeaşi $2 +aceiaşi $2 căruia $u1 căreia $u1 cărora $u1 @@ -333,9 +352,9 @@ ale $u $brk in $u $brk în $u $brk pe $u $brk -că $u +că $u+ ca $u -ce $u +ce $u+ la $u $brk de $u (de la) dela $u @@ -475,15 +494,27 @@ puteţi $u+ $verbf trebui t@-*ebw'i // to have to +//ordinal numerals +doilea d'oIlea +treilea t@-*'eIlea +patrulea $1 +cincilea $1 +şăselea $1 +şaptelea $1 +optulea $1 +nouălea n'ou@lea +zecelea $1 // Final "i" is stressed absolvi $4 adăposti $4 +adormi $3 afurisi $4 agonisi $4 amăgi $3 ameţi $3 +aminti $3 amuţi $3 arcui arku'i @@ -501,6 +532,7 @@ cârmi $2 căzni $2 catadicsi $4 +cerea $2 cerşi $2 citi $2 cloci $2 @@ -508,6 +540,7 @@ cuceri $3 cutremura $4 cuveni $3 dărui d@*w'i +defini $3 deosebi $3 depăşi $3 descoperi $4 @@ -537,12 +570,14 @@ hohoti $3 încreţi $3 îndeplini $4 îndrăzni $3 +înflori $3 înghionti $3 înghiţi $3 îngriji $3 înlocui ynloku'i împleti $3 înşela $3 +însemna $3 înregistra $4 înroşi $3 întâlni $3 @@ -550,13 +585,12 @@ hohoti $3 învârti $3 înveli $3 învrednici $4 - +istovi $3 ivi $2 izbuti $3 izbi $2 izgoni $3 linguşi $3 - lipi $2 lovi $2 mânji $2 @@ -565,16 +599,15 @@ mirosi $3 moleşi $3 mulţumi $3 muri mur'i - năpusti $3 necăji $3 numi $2 - +ocoli $3 ocroti $3 odihni $3 oferi $3 opri $2 - +ostoi osto'i pândi $2 păşi $2 părăsi $3 @@ -587,9 +620,9 @@ prăbuşi $3 prăji $2 pregăti $3 preveni $3 +proveni $3 primi $2 porni $2 - răci $2 râfni $2 rânji $2 @@ -640,6 +673,7 @@ vieţui vjetsu'i vorbi $2 zugrăvi $3 zădărnii $4 +zâmbi $2 // final "a" or "ea" is stressed(verbs) @@ -655,14 +689,16 @@ aburea $2 aduna $3 afla afl'a accelera $4 +accentua $3 abona $3 acumula $4 adera $3 +administra $4 afirma $3 agăţa $3 agita $3 aglomera $4 - +alimenta $4 apărea $3 aprecia ap@-*etSj'a apropia ap@-*opi'a @@ -670,7 +706,9 @@ arăta $3 amuţea $3 ardea $2 apleca $3 +apuca $3 asculta $3 +ascundea $3 asigura $4 aşeza $3 aştepta $3 @@ -682,15 +720,18 @@ ajungea $3 alătura $4 alerga $3 ameninţa $4 +angaja $3 anunţa $3 apăra $3 apăsa $3 apela $3 ataca $3 atârna $3 +atribuia $4 auzea $2 balansa $3 băga $2 +binecuvânta $5 blestema $3 bloca $3 bucura $3 @@ -706,8 +747,11 @@ căşuna $3 căsători $4 căuta k@ut'a ceda $2 +cerea $2 +cerceta $3 cerşea $2 chema $2 +clătina $3 clasifica $4 claxona $3 clinti $2 @@ -719,13 +763,14 @@ comunica $4 concentra $3 concretiza $4 concura $3 +conducea $3 conecta $3 confunda $3 consta $2 constata $3 conta $2 continua kontinw'a - +controla $3 conţinea $3 coordona $4 costa kost'a @@ -733,10 +778,13 @@ crea k@-*e'a credea $3 creştea $2 croi kro'i +cumpăra $3 cunoştea $3 cutreiera $4 +cuvânta $3 dansa $2 dădea $2 +dăuna $3 debuta $3 demonstra $3 depăşea $3 @@ -744,6 +792,8 @@ desemna $3 deţinea $3 derula $3 decelera $4 +decidea $3 +decola $3 deconecta $4 dedica $3 degenera $4 @@ -754,18 +804,21 @@ depista $3 desconsidera $5 descurca $3 desfunda $3 - desprindea $3 devenea $3 +devia devi'a determina $4 digera $3 discuta $3 +diseca $3 dispărea $3 dispera $3 +dispreţuia $4 distra $2 domina $3 dorea $2 dormea $2 +dovedea $3 ducea $2 duhnea $2 dura $2 @@ -777,6 +830,7 @@ eficientiza $5 elibera $4 elimina $4 enumera $4 +estima $3 evita $3 evoca $3 evolua evolw'a @@ -787,11 +841,12 @@ exaspera $4 executa $4 experimenta $5 explica $3 +explora $3 facilita $4 făcea $2 ferea $2 fluiera $3 - +furniza $3 folosea $3 fredona $3 fremăta $3 @@ -800,13 +855,10 @@ fulgera $3 furişa $3 gândea $2 gâdila $3 -gâtuia gytu'ja -găzduia g@zdu'ja găsea $2 genera $3 germina $3 gonea $2 -hăcuia $3 holba $2 îmbâcsea $3 îngreuna $4 @@ -816,7 +868,10 @@ holba $2 încăiera $4 îndurera $4 înfiera $3 +//imagina $3 însera $3 +intersecta $4 +înţelegea $4 îmbrăca $3 încălzea $3 încărca $3 @@ -826,7 +881,6 @@ holba $2 îndrepta $3 înfăşura $4 înfunda $3 - înghiontea $3 încuraja $4 întâmpina $4 @@ -834,19 +888,24 @@ ieşea $2 insera $3 interesa $4 interfera $4 +interzicea $4 iubea $2 îmbulzea $3 împuşca $3 încheia ynke'ja încurca $3 îndesea $3 + identifica $5 îngrozi $3 întâmpla $3 înteţea $3 incinera $4 +îndoia $3 instala $3 înainta $3 înălţa $3 +înfigea $3 +irita $3 întreba $3 învârtea $3 învingea $3 @@ -854,8 +913,10 @@ invita $3 juca $2 lăsa $2 lărgea $2 +lansa $2 legifera $4 lingea $2 +localiza $4 lucea $2 mânca $2 mângâia $3 @@ -864,22 +925,28 @@ memora $3 mergea $2 merita $3 mira $2 +mişca $2 mişuna $3 +modela $3 modera $3 modifica $4 -mulţumea $3murea $2 +mulţumea $3 +murea $2 murmura $3 năştea $2 năpustea $3 numea $2 negocia negotSi'a nimerea $3 +nimicea $3 obiecta $3 +obliga $3 observa $3 ocupa $3 oferea $3 ofta $2 +ordona $3 paraliza $4 participa $4 @@ -899,17 +966,23 @@ ploua $2 pornea $2 potrivea $3 preda $2 +predea $2 +prefăcea $3 prefera $3 pregătea $3 prepara $3 +preocupa $3 prelungea $3 +presupunea $4 prezenta $3 +prezicea $3 privea $2 producea $3 promova $3 pronunţa $3 prospera $3 protesta $3 +proteja $3 provoca $3 purta $2 răbda $2 @@ -921,9 +994,11 @@ răsturna $3 răsucea $3 rătăci $3 râdea $2 +reacţiona $3 realiza $4 recupera $4 referea $3 +refuza $3 regenera $4 regiza $3 relaxa $3 @@ -932,18 +1007,21 @@ renunţa $3 repara $3 repera $3 repeta $3 +replica $3 +reprezenta $4 respecta $3 respira $3 reuşea $3 revenea $3 reverbera $4 rezema $3 +rezista $3 ridica $3 risca $2 rostea $2 +rula $2 salva $2 săpa $2 - sărea $2 sângera $3 scăpa $2 @@ -955,33 +1033,44 @@ scotea $2 sfărâma $3 sfârteca $3 simţea $2 +sista $2 specializa $4 speria spe*'ja spulbera $3 sosea $2 spăla $2 spera $2 - spumega $4 stagna stagn'a stăpânea $3 - stârnea $2 stătea $2 ştia St'ja stoca $2 străfulgera $4 strica $2 +subestima $4 sucea $2 +suspecta $3 +susţinea $3 strălucea $3 +strecura $3 sugea $2 sugera $3 suda $2 +suferea $3 supăra $3 +supraestima $5 şuiera $3 +suna $2 +superviza $4 +supunea $3 +surprindea $3 +tampona $3 temea $2 tempera $3 termina $3 +testa $2 tolera $3 topi $2 transfera $4 @@ -997,22 +1086,27 @@ urla $2 utiliza $4 valora $3 vâna $2 +vântura $3 vâslea $2 vedea $2 +venea $2 venera $3 vibra $2 visa $2 vira $2 - +voia $2 +vroia $2 vizualiza $4 vocifera $4 vorbea $2 vota $2 +trecea $2 zăcea $2 zugrăvea $3 zbiera $2 zbura $2 zgâria $3 +zicea $2 // hyphenated contractions @@ -1121,6 +1215,7 @@ agentu $3 agricultu $4 ahaa ah'a aha ah'a +ahile $2 aici a'itSI^ ajungem $2 ajungeţi $2 @@ -1133,6 +1228,7 @@ alegem $2 alegeţi $2 alergă $2 alergătu $4 +aleşi $2 alex $1 alintătu $4 altceva $3 @@ -1153,13 +1249,16 @@ amice $2 amici $2 amicii $2 amicilor $2 +amsterdam $1 andrei $2 - +apărării $3 aplecă $3 apoi $2 aprig $1 aprige $1 aprigi $1 +apropo $3 +apropos ap@-*op'o apucătu $4 apus ap'us arăt ar'@t @@ -1181,35 +1280,40 @@ asigur $2 astăzi $1 aşeză $3 ating $2 -aud a'ud -aude a'ude -aur 'aur -austria a'ustrja -auster aust'er +aur $1 +auriu au*'iU aventu $3 avicultu $4 avocatu $4 avu $2 +banner b'en@r +bannere b'en@*e bacterie $2 bacteriei $2 bacterii $2 badjocu $3 balint $1 băgă $2 +backup b'ekap barman $1 bătătu $3 batem $1 bateţi $1 +bătăi $2 bău b@'u băutu $3 belgia $1 biseric $2 bivol $1 bivoli $1 +blitzkrieg bl'itskrig +blogger bl'og@r bombăne $1 borătu $3 bordei $2 +broker b@-*'ok@r +brio b@-*'io broşu $2 bubuitu $4 bucur $1 @@ -1233,19 +1337,23 @@ cândva $2 cânepă $1 cântec $1 cântece $1 +cale $1 căută $3 capăt $1 capete $1 +capeţi $1 capitol $2 captu $2 caractere $3 caracterele $3 caracterelelor $3 +caracal $2 cărăruie $4 căzu $2 careva $3 caricatu $4 cârpitu $3 +caută kaUt@ cartele $2 câteva $3 câtorva $3 @@ -1253,13 +1361,15 @@ câtuşi $1 căzătu $3 ceainic tS'eajnik ceai tS'eaj +ceauşescu tSeauS'esku +ceauşu tSea'uSu centu $2 cenzu $2 cerbice $2 - -cerem $1 -cereţi $1 +$1 +cercetă $3 cetăţuie $3 +ceru $2 ceva $2 chelălăitu $5 chelner $1 @@ -1273,12 +1383,16 @@ cineva $3 civile $2 clănţăne $1 clatin $1 +clătină $3 +claudiu kla'udju +claudia kla'udja claviatu $3 clocot $1 clocote $1 cocin $1 cocine $1 confişte $2 +controlă $3 cocos $1 colaborăm $4 color kol'o* @@ -1311,10 +1425,14 @@ cratime $1 creatu $3 credem $1 credeţi $1 +crezu $2 +credit $1 +credite $1 creier $1 crescu $2 creştem $1 creşteţi $1 +cristi k@-*'isti crivăţ $1 cuget $1 cugeţi $1 @@ -1322,6 +1440,7 @@ cuib k'uIb cuiva $2 cultu $2 cusu $2 +cuvântă $3 cumpărăm $3 cumpărătu $3 $stem cumva $2 @@ -1337,12 +1456,18 @@ dantu $2 dădu $2 dărâmătu $4 dărăt $2 +dăună $3 david $1 +datorie dato@-*'ie +decolă $3 +deducem $2 +deduceţi $2 dedus ded'us degeratu $4 deget $1 degete $1 deja $2 +demon $1 denzic $2 denzice $2 depozit $2 @@ -1359,6 +1484,7 @@ desigur $2 desktop $1 despărţitu $4 $stem determin $2 +deţii $2 deunăzi $4 dezordine $2 diavol $1 @@ -1367,6 +1493,7 @@ dinăuntru din@'unt@-*u dincolo $1 dinînăuntrul dinyn@'unt@-*ul director $2 +display displ'ej dispus disp'us distingem $2 distingeţi $2 @@ -1379,9 +1506,11 @@ domină $1 domine $1 domniţă $2 dori $2 +două d'ou@ dradus t@-*ad'us dragoş $1 dragoste $1 +dragostea $1 drum dr'um ducem $1 duceţi $1 @@ -1392,10 +1521,10 @@ durerea $2 dureri $2 durerii $2 durerilor $2 - echilibrăm $4 edit $1 efeme $3 +einstein 'aInStaIn egale $2 eliberă $4 elice $2 @@ -1405,9 +1534,10 @@ enter ent@r $1 episcop $2 epoc $1 epoci $1 +eroilor err'oilor examen $2 exclus exkl'us -exe ekse +exerciţiu egzertS'itsju exista $3 exotic egz'otik ex'otice egzotitSe @@ -1423,7 +1553,9 @@ factice $2 factor $1 factori $1 factu $2 +fanatici $2 farfurie farfu*'ie +farmacie fa@-*matS'ie fasole $2 făcu $2 febrile $2 @@ -1446,12 +1578,15 @@ flăcăruie $3 flamură $1 fluier $1 fluiere $1 +fonetică $2 folosi $3 +folder f'old@r forfotă $1 fotbal $1 fractu $2 fraged $1 fragede $1 +frankenstein fr'ankenStaIn frântu $2 frigăruie $3 friptu $2 @@ -1459,9 +1594,11 @@ frizu $2 fulger $1 fulgere $1 fumeg $1 +furniză $3 gâdilă $1 gâgâlice $3 +găgăuţă g@g@'uts@ galben $1 galbene $1 galbeni $1 @@ -1477,20 +1614,25 @@ geamăt $1 gemu $2 gemeni $1 gemete $1 +gerard $1 +gerald $1 ghilimele $3 gimnastic $2 gimnaziu dZimn'azju gizor $1 gizori $1 glazu $2 +google g'ug@l gravu $2 guler $1 gulere $1 gutuie $2 - +gratis $1 +greoi g@-*e'oj hahale $3 haidem $1 haideţi $1 +hamster $1 hârtie hyrt'ie hârtii $2 hărnicie h@rnitS'ie @@ -1499,6 +1641,8 @@ hindus ind'us hohot $1 hohote $1 hoit h'oIt +holbă $2 +hunor $1 hurducătu $4 idile $2 @@ -1533,6 +1677,7 @@ inamicilor $3 încingeţi $2 înfăşurăm $4 inclus inkl'us +ilfov $1 ipsos $1 încercă $3 încrengătu $4 @@ -1543,6 +1688,7 @@ incultu $3 îndărăt $3 îndepărtă $4 indic $2 +iei 'jeI îndoitu $4 înfăşurătu $5 înfloritu $4 @@ -1552,6 +1698,7 @@ isterie $3 înghiţitu $4 ingine $3 îngrăditu $4 +ilie il'ie inima $1 inimă $1 inimi $1 @@ -1562,6 +1709,8 @@ indigo $3 inspector $2 instructor $2 insul $1 $stem +implică $2 +imagină $3 întâi $2 întâmpină $2 întăritu $4 @@ -1572,6 +1721,7 @@ insul $1 $stem întindeţi $2 interpus inte@-*p'us interzice $3 +intersectă $3 intim $1 intime $1 întrebă $3 @@ -1580,6 +1730,8 @@ intime $1 întoarceţi $2 întorsătu $4 întotdeauna yntotdea'una +dintotdeauna dintotdea'una +învăţă $3 intrăm $2 întredeschizătu $6 intriga $1 @@ -1588,9 +1740,17 @@ intrigi $1 introdus introd'us învătătu $4 invers $1 +iPhone aif'@Un +ipocrizii $4 istambul $3 izbitu $3 +kelemen $1 +kovesi k'oveSi + +japonia $2 +japoniei $2 + lacom $1 lacomi $1 lacrim $1 @@ -1601,13 +1761,16 @@ laser $1 latice $2 latură $1 latex $1 +lauzi l'auzI^ lazăr $1 lăsă $2 lefter $1 legătu $3 +lg eldZ'i liber $1 lider $1 lideri $1 +lili l'ili limit $1 limite $1 limpede $1 @@ -1615,16 +1778,20 @@ lingură $1 lipsi $2 linux $1 literatu $4 +liviu l'ivju logic $1 lovitu $3 lucrăm $2 lucrătu $3 - +ludovic $1 maculatu $4 magistratu $4 +mami m'ami manager m'enedZ@r -manager menedZ@r -mâneci $1 +manole $2 +mânec $1 +mânecă $1 +mânecii $2 manta $2 margini $1 marginii $1 @@ -1632,15 +1799,20 @@ mării $1 maritim $2 marius $1 marker m'ark@r +maro $2 martor $1 martore $1 martori $1 măsu $2 +matei $2 matrice $2 mătură $1 măturătu $4 maxim $1 +mediu m'edju menaje $3 +menţinem $2 +menţineţi $2 mergem $1 mergeţi $1 merit $1 @@ -1652,24 +1824,34 @@ metafore $2 metaforic $3 mia m'ia micul $1 +microsoft m'aIc@-*osoft mie m'ie mijloace $1 mijloc $1 +mimi m'imi minim $1 mişto $2 mişună $1 -moisei moIs'eI +modele $2 +modifică $2 +moisei mois'eI molim $1 +monica $2 molime $1 moscova $1 muget $1 mugete $1 mugur $1 +muia m'uja +muie m'uje murdărie murd@*'ie murmură $1 muzica $1 muzik $1 - +naturii $3 +năvăli $3 +neregulă $2 +nereguli $2 neted $1 netede $1 netezi $1 @@ -1678,13 +1860,18 @@ nevoi nev'oI nicicum nitSI^k'um nicidecum nitSI^dek'um nimic $2 +nimica $2 nistor $1 nivele $2 +nouă n'ou@ +nostim $1 +nostime $1 +nostimilor $1 +nostimelor $1 novice $2 numai $1 // only număr $1 numărătu $4 - oameni $1 oamenii $1 oareşice oa*eStSe $4 @@ -1692,15 +1879,21 @@ oaspete $1 oaspeţi $1 obicei $3 obiceiu $3 +obţii $2 +obţinu $3 ocol $2 oferă $2 ofere $2 oftă $2 ok ok'eI omăt om'@t +onofrei $3 operăm $3 optim $1 opus op'us +orange 'o@-*indZI^ +oră 'or@ +orban $1 ordin $1 ordine $1 oscar $1 @@ -1724,9 +1917,11 @@ părere $2 părerea $2 păreri $2 părerii $2 +păstră $2 parfum $2 parodii $3 parodi pa*od'i +parole $2 partene $3 partener $3 partenere $3 @@ -1761,6 +1956,7 @@ permitem $2 permiteţi $2 petrecem $2 petreceţi $2 +philips $1 picătu $3 pictor $1 pictori $1 @@ -1794,14 +1990,19 @@ prefacem $2 prefaceţi $2 preling $2 pretutindeni $3 +preşedinţie p@-*eSedints'ie pricepem $2 pricepeţi $2 pricin $1 prietenie p@-*jeten'ie prieten p@-*j'eten prietenului p@-*j'etenuluI +preocupă $4 +prezentă $3 privi $3 +proaspăt $1 proaspeţi $1 +proaspete $1 procedu $3 produs p*od'us profesor $2 @@ -1812,17 +2013,26 @@ promiteţi $2 propice $2 propui $2 propus prop'us -protocol $4 +prostie p@-*ost'ie + +protocol $3 +protocoale $3 +protejă $3 punem $1 puneţi $1 putere $2 puterea $2 puteri $2 puterii $2 +puternici $2 +putu $2 răcnet $1 răcnete $1 radar $1 +rahova $1 +rds 'erde'es +real re'al răget $1 răgete $1 rămâi $2 @@ -1836,6 +2046,7 @@ râsete $1 răsputeri $3 recepţione $4 reci $1 +recunoscu $3 recuperăm $4 regelui $1 regizor $2 @@ -1844,6 +2055,7 @@ reguli $1 reparăm $3 repede $1 repezi $1 +replică $1 rest $1 restu $1 reţinem $2 @@ -1853,12 +2065,15 @@ ridic $2 ridică $2 ridice $2 robert $1 +roberta $2 romînia $3 rotocol $3 - +ronald $1 +rulă $2 sadea $2 sadic $1 saltea $2 +samsung $1 sâmbăta $1 sarcin $1 sarcini $1 @@ -1867,6 +2082,7 @@ scăderea $2 scăderii $2 scăderile $2 scăderilor $2 +scanner sk'en@r scoatem $1 scoateţi $1 scrâşnet $1 @@ -1880,19 +2096,19 @@ sedus sed'us semene $1 semiprodus semip*od'us şenile $2 -sergiu s'ergju +senzor $1 +sergiu s'erdZju servicii $2 -serviciile $2 -serviciile $2 -serviciilor $2 -serviciul $2 -serviciului $2 +serviciul serv'itSjul +//serviciului $2 serviciu serv'itS'ju +server $1 sigur $1 simbolic $2 sincer $1 singur $1 singure $1 +şefia Sef'ia şmecher $1 şniţel $1 şoarece $1 @@ -1914,6 +2130,7 @@ standard $1 standarde $1 staroste $1 statuie $2 +stătu $2 ştergem $1 ştergeţi $1 ştie St'ie @@ -1923,24 +2140,28 @@ strecurăm $3 strigăt $1 strigăte $1 structu $2 - studie $2 +subordine $2 şubred $1 şubrede $1 sufăr $1 suflet $1 suflete $1 şuier $1 +suit su'it sunet $1 sunete $1 super $1 suprapus sup@-*ap'us +supremaţie sup@-*emats'ie supus sup'us +nesupus nesup'us surplus su*pl'us suspus susp'us susţinem $2 susţineţi $2 şedere $2 +stocă $2 tabache $3 tăcere $2 @@ -1949,6 +2170,7 @@ tăceri $2 tăcerii $2 tăcu $2 tânăr $1 +tabăra $1 ţandăra $1 ţăndări $1 tango $2 @@ -1958,8 +2180,10 @@ tăviţă $2 ţanţoş $1 târcol $2 tării $1 +tăviţe $2 târziu tyrz'iu tastatu $3 +tati t'ati ] tatăl $1 taxi t'aksi ţeapăn $1 @@ -1973,22 +2197,25 @@ terapii $3 termen $1 termeni $1 termin $1 +termine $1 ţinem $1 ţineţi $1 +ţinu $2 ţipete $1 totdeauna totdea'una tovarăş $2 tovarăşi $2 -tradus trad'us +tradus t@-*ad'us tragem $1 trageţi $1 +trăi t@-*@'i trăsătu $3 treacăt $1 -trebuia $3 trecem $1 treceţi $1 trecu $2 tremură $1 +trio t@-*'io trimitem $2 trimiteţi $2 trosnet $1 @@ -1999,18 +2226,25 @@ tunete $1 turele $2 turnă $2 +ţării $1 + ucidem $2 ucideţi $2 uitătu $3 ulei $2 ultim $1 ultime $1 +umbli 'umbli +umpli 'umpli +umplem $1 +umpleţi $1 umăr $1 umed $1 umede $1 umezi $1 umflătu $3 undeva $3 +upc upetS'e urăm $2 urătu $3 urlet $1 @@ -2018,16 +2252,23 @@ urlete $1 urzicătu $4 uscătu $3 usturătu $4 +utile $2 +unghiul 'ungjul +tri'unghiul t*iungjul +weber $1 windows 'wind@Us văduvă $1 văduve $1 văietătu $4 vâlvătăi $3 +vânătăi $3 +vântură $3 vărsătu $3 vărul $1 văzu $2 +valencia val'ensja vasile $2 vătămătu $4 veder $2 @@ -2043,6 +2284,7 @@ victime $1 victor $1 victorii $2 vie v'ie +view v'ju viitu $2 vindem $1 vindeţi $1 @@ -2056,6 +2298,8 @@ vitrege $1 vitregi $1 vizavi $3 vizită $1 +vodafone v'odafon +voila vual'a volum vol'um vopsea $2 voucher v'aUtS@r @@ -2065,6 +2309,7 @@ vultur $1 vulturi $1 vulturii $1 +yahoo jah'u zâmbet $1 zâmbete $1 zahăr $1 diff --git a/dictsource/ro_rules b/dictsource/ro_rules old mode 100755 new mode 100644 index b971f44..92b3f79 --- a/dictsource/ro_rules +++ b/dictsource/ro_rules @@ -1,9 +1,10 @@ + // translation rules for Romanian // This file is UTF-8 encoded -// replace s-comma, t-comma by s-cedilla, t-cedilla +// replace s-comma, t-comma by s-cedilla, t-cedilla .replace ș ş ț ţ @@ -11,113 +12,123 @@ Ț ţ .group a - a a - ai aI - ai (a aj - ai (_ 'aI - au aU // ?? only at end of word ?? - c) au (t au - au (_ 'aU - a (AAA a - &) a (_S1q a - - gi) a (_S1q a - V@) a (N_ 'a - ăi) a (_ 'a - @) abil (_ 'abil + a a + ai aI + ai (a aj + ai (_ 'aI + n) ai ((v ai + au aU // ?? only at end of word ?? + c) au (t au + au (d au + au (z au + au (r au + au (st au + _l) au (d 'au + au (_ 'aU + a (AAA a + &) a (_S1q a + + gi) a (_S1q a + V@) a (N_ 'a + ăi) a (_ 'a + @) abil (_ 'abil _) anti (@P4 anti - @) ale (_ 'ale - @ion) a (_ 'a + @) ale (_ 'ale + @ion) a (_ 'a .group ă - ă @ - ăi (_ @I - ău @U // ?? only at end of word ?? - c) ău (t @u - ău (_ '@U - @) ăte (_S3t @te - @) ătă (_S3t @t@ + ă @ + ăi (_ @I + ău @U // ?? only at end of word ?? + c) ău (t @u + _b) ău (t @u + _l) ău (d @u + _d) ău (n @u + ău (_ '@U + @) ăte (_S3t @te + @) ătă (_S3t @t@ @) ătul (_S4t @tul @) ătele (_S5t @tele @) ătului (_S6t @tuluI @) ătelor (_S6t @telor - &) ă (_S1 @ - &ec) ă (_ @ - @ăC) ă (_ @ - @er) ă (_ @ - @iţ) ă (_ @ - @) ă (Că_ =@ - ări (A_ @*'i - ării (_ @*'iI - ări (AA_ @*'i - @) ăie (_ =@Ie + &) ă (_S1q @ + &ec) ă (_ @ + @ăC) ă (_ @ + @er) ă (_ @ + @iţ) ă (_ @ + @) ă (Că_ =@ + ări (A_ @*'i + ării (_ @*'iI + ări (AA_ @*'i + @) ăie (_ =@Ie .group â - â y - âi yI - âu yU - @) âie (_ =yIe + â y + âi yI + âu yU + @) âie (_ =yIe .group b - b b - bb b - - @) b (i_ b; - @) b (il_ =b - @) b (ila_ =b - @) b (ili_ =b - @) b (ilii_ =b + b b + bb b + + @) b (i_ b; + @) b (il_ =b + @) b (ila_ =b + @) b (ili_ =b + @) b (ilii_ =b @) b (ilului_ =b @) b (ililor_ =b - @) b (ilile_ =b - mo) bil (_ b'il + @) b (ilile_ =b + mo) bil (_ b'il .group c - c k - c (e tS - c (i tS - ci (o tS - cii tSiI - ch k - @@) col (_ =kol - @@) coli (_S1t =I^ - @@) cole (_S1t e - @) cni (_ kn'i - @) cnea (_ kne'a + c k + c (e tS + c (i tS + ci (o tS + cii tSiI + ch k + @@) col (_ =kol + @@) coli (_S1t =I^ + @@) cole (_S1t e + @) cni (_ kn'i + @) cnea (_ kne'a .group d - d d - dd d - @) d (i_ d; + d d + dd d + @) d (i_ d; .group e - e e - _) ei eI - ei (_ eI + e e + _) ei eI + ei (_ eI // eu eU // only at end of word ?? // eu e[u // ?? - @) eu (l_ 'eu - @) eu (_ eu - @) eu (_N 'eU - ea ea - &) ea (_S2q ea - &) eSi eaj - eau eaw - eo eo - e (AAA e - @) eş (_ =eS - - @) eşul (_ =eSul - @) eşi (_ =eSI^ - @) eşului (_ =eSuluI - @) eşilor (_ =eSilor + @) eu (l_ 'eu + @) eu (_ eu + @) eu (_N 'eU + ea ea + &) ea (_S2q ea + &) eSi eaj + eau eaw + eo eo + d) eo (seb e|o + e (AAA e + @) eş (_ =eS + + @) eşul (_ =eSul + @) eşi (_ =eSI^ + @) eşului (_ =eSuluI + @) eşilor (_ =eSilor //@) ec (a_ =ek //@) ec (ă_ =ek @@ -126,355 +137,361 @@ //@) ec (ilor_ =etS //@At) ec (i@_ etS //@At) ec (A_ ek - @At) ec (ii_ etS + @At) ec (ii_ etS // &) es (_S1q e - &C) e (re_ %e - _ac) ee (a eI - - r) ei (er_ 'eI - @) e (re_ =e - @) e (ri_ =e - @) e (rea_ =e - @) e (rii_ =e - @) e (rei_ =e - i) e (re_ e - i) e (ri_ e - i) e (rii_ e - i) e (rea_ e - @) e (ra_ =e - @) e (ră_ =e - @f) e (ra_ e - @f) e (ra_ e - i) e (ră_ e - i) e (ra_ e - eoa eO'a + &C) e (re_ %e + _ac) ee (a eI + + r) ei (er_ 'eI + @) e (re_ =e + @) e (ri_ =e + @) e (rea_ =e + @) e (rii_ =e + @) e (rei_ =e + i) e (re_ e + i) e (ri_ e + i) e (rii_ e + i) e (rea_ e + @) e (ra_ =e + @) e (ră_ =e + @f) e (ra_ e + @f) e (ra_ e + i) e (ră_ e + i) e (ra_ e + eoa eo'a .group f - f f - ff f - @) f (i_ f; + f f + ff f + @) f (i_ f; .group g - g g - g (e dZ - g (i dZ - gii dZiI - gh g - &) gii (_ dZ'iI -&) gi (A_ dZi + g g + g (e dZ + g (i dZ + gii dZiI + gh g + &) gii (_ dZ'iI + &) gi (A_ dZi .group h - h h - @) h (i_ C + h h + @) h (i_ C .group i - i i - i (A j - - @) i (e_ j - &C) i (_NS1q i/ - &) i (_NS1q i - &) i (-NS1q i // don't reduce to [I^] if a hyphen follows - ţ) i (-Că i - ţ) i (-Ci i - - ţ) i (-l i - ţ) i (-ne i - &') i (_ i - ţi-) i (_ _ // combined with previous word as [iI] - Cr) i (_ i - V&) i (N_ 'i // verb - ăC) ia (_ 'ia - âC) ia (_ 'ia - ăC) ie (_ 'ie - âC) ie (_ 'ie - - g) i (ne_ =i - g) i (nea_ =i + i i + i (A j + @) i (e_ j + &C) i (_NS1q i/ + &) i (_NS1q i + &) i (-NS1q i // don't reduce to [I^] if a hyphen follows + ţ) i (-Că i + ţ) i (-Ci i + ţ) i (-l i + ţ) i (-ne i + &') i (_ i + ţi-) i (_ _ // combined with previous word as [iI] + Cr) i (_+++ i + V&) i (N_ 'i // verb + ăC) ia (_ 'ia + âC) ia (_ 'ia + ăC) ie (_ 'ie + âC) ie (_ 'ie + + g) i (ne_ =i + g) i (nea_ =i c) i (uC - cţ) ie (_ =ie - cţ) iei (_ =ieI - cţ) ia (_ =ja - graf) ie (_ 'ie - graf) ia (_ 'ia - graf) iei (_ 'ieI - graf) ii (_ 'iI - scop) ie (_ 'ie - scop) ia (_ 'ia - scop) iei (_ ieI - scop) ii (_ 'iI - er) ia (_ 'ia - er) iei (_ 'ieI - on) ie (_ 'ie - on) ia (_ 'ia - on) iei (_ 'ieI - uş) ie (_ 'ie - uş) ia (_ 'ia - uş) iei (_ 'ieI + cţ) ie (_ =ie + cţ) iei (_ =ieI + cţ) ia (_ =ja + graf) ie (_ 'ie + graf) ia (_ 'ia + graf) iei (_ 'ieI + graf) ii (_ 'iI + nom) ie (_ 'ie + nom) ia (_ 'ia + nom) iei (_ 'ei + scop) ie (_ 'ie + scop) ia (_ 'ia + scop) iei (_ ieI + scop) ii (_ 'iI + fil) ie (_ 'ie + fil) ia (_ 'ia + fil) iei (_ 'ei + er) ia (_ 'ia + er) iei (_ 'ieI + on) ie (_ 'ie + on) ia (_ 'ia + on) iei (_ 'ieI + uş) ie (_ 'ie + uş) ia (_ 'ia + uş) iei (_ 'ieI // @) ie (_S1q ie - - iei (_ 'ieI - ii iI - &) ii (_S2q iI - iii iji - iu (_ iU - iu ju - - &) ic (_ =ik - &) ica (_ =ika - &) ice (_ =itSe - &) icile (_ =itSile - &) icilor (_ =itSilor - @) icii (_ =itSiI - @) icei (_ =itSeI - - scr) i (e 'i - &) ing (_ %iNg // foreign words - - i (t_ 'i - ioa iO'a - - @) işte (_ =iSte - @) iştea (_ =iStea + iei (_ 'ieI + ii iI + &) ii (_S2q iI + iii iji + iu (_ iU + iu ju + + &) ic (_ =ik + &) ica (_ =ika + &) ice (_ =itSe + &) icile (_ =itSile + &) icilor (_ =itSilor + @) icii (_ =itSiI + @) icei (_ =itSeI + + scr) i (e 'i + &) ing (_ %iNg // foreign words + + i (t_ 'i + ioa jO'a + + @) işte (_ =iSte + @) iştea (_ =iStea @) i (ţă_++++++++ =i - @) i (ţe_ =i - @) i (ţei_ =i - @) i (ţelor_ =i - -) i (_ j - @) i (ţele_ =i + @) i (ţe_ =i + @) i (ţei_ =i + @) i (ţelor_ =i + -) i (_ j + @) i (ţele_ =i .group î - î y - @) î (_ 'y + î y + @) î (_ 'y .group j - j Z - @) j (i_ Z; + j Z + @) j (i_ Z; .group k - k k + k k .group l - l l - ll l - @) l (i_ l; - _) l (_ le - -) l (_ l // -l + l l + ll l + @) l (i_ l; + _) l (_ le + -) l (_ l // -l - iu) l (_S1t l - &) le (_S2t le - &) lor (_S3t lor - &) lui (_S3t luI + iu) l (_S1t l + &) le (_S2t le + &) lor (_S3t lor + &) lui (_S3t luI .group m - _) m (_ me - m m - mm m - @) m (i_ m; - _) m (-a m + _) m (_ me + m m + mm m + @) m (i_ m; + _) m (-a m - -) mi (_ mi/ + -) mi (_ mi/ .group n - _) n (_ ne - n n - @) n (i_ n; - n (g N - n (k N - @) n (tic_ =n - @) n (ic_ =n - _) n (-a n - -) n (_ n - -@itudi) ne (_S2t ne -@itudi) nea (_S3t nea -@itudi) nii (_S3t niI -@itudi) ni (_S2t ni + _) n (_ ne + n n + @) n (i_ n; + n (g N + n (k N + @) n (tic_ =n + @) n (ic_ =n + _) n (-a n + -) n (_ n + +@itudi) ne (_S2t ne +@itudi) nea (_S3t nea +@itudi) nii (_S3t niI +@itudi) ni (_S2t ni @itudi) nile (_S4t nile @itudi) nilor (_S5t nilor .group o - o o - oa Oa - oai Oaj - _) oi oI - oi (_ 'oI - ou oU - ou (_N 'oU - ou (_ ou - o (AAA o + o o + oa Oa + oai Oaj + _) oi oj + oi (_ 'oj + ou oU + ou (_N 'oU + ou (_ ou + o (AAA o .group p - p p - pp p - @) p (i_ p; - + p p + pp p + @) p (i_ p; + ph f .group q - q k - qu kw + q k + qu kw .group r - r r - rr r - A) r (A * - C) r (A @-* - rr *r - A) r (i_ *; - - _) re (@P2T re - _) re (gul re + r r + rr r + A) r (A * + C) r (A @-* + rr *r + A) r (i_ *; + r (ă_ * + _) re (@P2T re + _) re (gul re @u) ri (_NS2t rI^ - C) ri (_ @-*i - @u) rii (_S3t riI + C) ri (_ @-*i + @u) rii (_S3t riI @u) rile (_S4t rile @u) rilor (_S5t rilor - @) răm (_S1t m + @) răm (_S1t m @) răţi (_S4t *@tsI^ - @u) re (_S2t *e + @u) re (_S2t *e .group s - _) s (_ se - _) s (-a s - s s - -) s (_ s - sh S - ss s + _) s (_ se + _) s (-a s + s s + -) s (_ s + sh S + ss s &) sprezece (_S8t sp@-*ez,etSe - @) sem (_S1t m - @) seră (_S2t *@ + @) sem (_S1t m + @) seră (_S2t *@ @) serăm (_S3t *@m @) serăţi (_S4t *@tsI^ - @) seşi (_S2t SI^ - @) sni (_ sn'i + @) seşi (_S2t SI^ + @) sni (_ sn'i .group ş - ş S - @) ş (i_ S; + ş S + @) ş (i_ S; - @) şni (_ Sn'i - -) şi (_ SI^ + @) şni (_ Sn'i + -) şi (_ SI^ .group t - t t - tt (_ t - @) t (i_ t; + t t + tt (_ t + @) t (i_ t; - ts ts - tz ts - tt t + ts ts + tz ts + tt t .group ţ - ţ ts - @) ţ (i_ ts; + ţ ts + @) ţ (i_ ts; // @) ţi (-mă ts;'i // @) ţi (-vă ts;'i // @) ţi (-le ts;'i // @) ţi (-i ts;'iI // @) ţi (-l ts;'i - -) ţi (_ ts;i/ + -) ţi (_ ts;i/ .group u - u u - u (A w - _) ui uI - ui (_ 'uI - r) ui (n ui - ui (e wi - V&) ui (_N u'i - - dest) ul ul - &) ul (_S2t ul - @ic) ul (_S2t ul - @ic) ule (_S3t ule + u u + u (A w + uia (_ uj'a + _) ui uI + ui (_ 'uI + r) ui (n ui + ui (e wi + V&) ui (_N u'i + + dest) ul ul + &) ul (_S2t ul + @ic) ul (_S2t ul + @ic) ule (_S3t ule @ic) ului (_S4t uluI - @ic) uri (_S3 urI^ + @ic) uri (_S3 urI^ @ic) urile (_S5 urile &) ului (_S4t uluI - @) us (_S2t us + @) us (_S2t us @) usul (_S4t usul @) usuri (_S5t usuri @) usului (_S6t usuluI @) usurile (_SS´7t usurile @) usurilor (_S8t usurilor - @ăC) u (N_ 'u - @) um (_S2t um + @ăC) u (N_ 'u + @) um (_S2q um @) umul (_S4t umul @) umului (_S6t umuluI @) umuri (_S5t umuri @) umurile (_S7t umurile @) umurilor (_S8t umurilor - c) um (_ um - @) uie (_ =wie + c) um (_ um + @) uie (_ =wie .group v - v v - @) v (i_ v; + v v + @) v (i_ v; .group w - w w + w w .group x - x ks - e) x (a gz - e) x (e gz - e) x (i gz - me) x (ic ks - e) x (iA_ ks - e) x (iu ks - e) x (Ag ks - le) x ks + x ks + e) x (a gz + e) x (e gz + e) x (i gz + ) x (e_ ks + _ale) x ks + me) x (ic ks + e) x (iA_ ks + e) x (iu ks + e) x (Ag ks + le) x (+ ks .group y - y i - y (A j + y i + y (A j .group z - z z - zz z - @) z (i_ z; + z z + zz z + @) z (i_ z; .group - ö Y - D_) % la_sut@ - % p@-*otSent - $ dolar + ö Y + D_) % la_sut@ + % p@-*otSent + $ dolar - , (D v'irgul@ + , (D v'irgul@ - __) - (_D m'inus - A_) - (_D _ - C_) - (_D _ + __) - (_D m'inus + A_) - (_D _ + C_) - (_D _ diff --git a/dictsource/ru_list b/dictsource/ru_list index b3e5298..08e71fe 100755 --- a/dictsource/ru_list +++ b/dictsource/ru_list @@ -63,6 +63,10 @@ _0M3 m;,IlI;'artof _dpt _:'i_: // start of decimal fraction _dpt2 _d;Is;'atYx // end of decimal fraction +// characters +№ номер $text + + // prepositions в v $u // to,in,at от $u // from diff --git a/dictsource/sk_list b/dictsource/sk_list index b3d1475..725bbec 100755 --- a/dictsource/sk_list +++ b/dictsource/sk_list @@ -202,18 +202,18 @@ si $u+ // reflexive ho $u+ // Prepositions -o o_ $u $brk $alt2 +o o_ $u $brk $combine k k $brk // at,on,to v v_ $brk // at,in,into z z_ $brk // from,of -na $u $alt2 // at,for,into -po $pause $alt2 // about,after -pod $pause $alt2 // under +na $u $combine // at,for,into +po $pause $combine // about,after +pod $pause $combine // under s s_ $pause // with -so $pause $alt2 // with -bezo $pause $alt2 // without -bez $pause $alt2 // without -pri $pause $alt2 // about,beside,at +so $pause $combine // with +bezo $pause $combine // without +bez $pause $combine // without +pri $pause $combine // about,beside,at // Conjunctions a $u $pause // and diff --git a/dictsource/sk_rules b/dictsource/sk_rules index 7fb5e06..6993959 100755 --- a/dictsource/sk_rules +++ b/dictsource/sk_rules @@ -223,7 +223,7 @@ _štipen) d (i d n (íT n @C) n (ej_ n - _) na (-P3 'na // include $alt2 words as stressed prefixes + _) na (-P3 'na // include $combine words as stressed prefixes n (ent n _be) n (ef n diff --git a/dictsource/ta_list b/dictsource/ta_list index e744b1a..1bf7225 100644 --- a/dictsource/ta_list +++ b/dictsource/ta_list @@ -1,4 +1,4 @@ - + // This file is UTF8 encoded // Spelling to phoneme words and exceptions for Tamil @@ -21,15 +21,18 @@ ற் iR ல் il ள் il. -ழ் iz +ழ் iz. வ் iv ஶ் iS ஷ் is. ஸ் is ஹ் iC U+b82 anUsvVRV -ஃ ah -U+bcd viRVmV +ஃ agH +U+bcd ot.RU + +ஏ je: + // speak Latin letters as English a e:j @@ -51,7 +54,7 @@ p pi: q kju: r a:R s Es -t ti: +t thi: u ju: v vi: w dVbVlju: @@ -62,26 +65,269 @@ z zEd // symbols _?? kuRij,i:d.U_ _cap kapit.Vl // English -_. pul.l.i -_, kVma: -_; ka:RbUl.l.,i -_: arE:pp,Ul.l.V -_? ke:l.vikk,URi -_! a:ctS:Vr,ijVkk,URi -% sadVv,igid,Vm -= samVm +_. mut.RU||pul.l.i // முற்று புள்ளி +_, ka:l||pul.l.i // கால் புள்ளி +_; a:raIb||pul.l.i // ஆரைப் புள்ளி +_: mukka:l||pul.l.i // முக்கால் புள்ளி +_( id.V||piRaI // இட பிறை +_) vVlV||piRaI // வல பிறை +_[ id.V||sadUrVm // இட சதுரம் +_] vVlV||sadUrVm // வல சதுரம் +_{ id.V||gVn.Vm // இட கணம் +_} vVlV||gVn.Vm // வல கணம் +_" me:Rgo:l. // மேற்கோள் +_' ot.RaI||m'e:Rgo:l. // ொற்றை மேற்கோள் +__ ad.ig||ko:d.U // அடிக் கோடு +_- in.aIppUg // இணைப்புக் + +\ p'in||s,a:jvU // பின் சாய்வு +! vijVppU // வியப்பு +_? ke:l.vi // கேள்வி +# en.||kuRi $max3 // எண் குறி += samVnpa:d.U $max3 // சமன்பாடு ++ ku:t.t.Vl $max3 // கூட்டல் +* perUkkVl $max3 // பெருக்கல் +/ sa:jvU // சாய்வு +÷ vVgUttVl // வகுத்தல் +% viz.Ukka:d.U $max3 // விழுக்காடு U+bf9 ru:ba:j +// abbreviations +ரூ ru:ba:j $dot $only // numbers -_0 pu:dZjam_ // ?? -_1 ondru_ -_2 irandu_ -_3 mo:ndru_ -_4 na:ngu_ -_5 aintu_ -_6 a:ru_ -_7 E:lu_ // aylu ?? -_8 et.:u_ -_9 onpatu_ -_10 pat:u_ +_0 suz.ijVm // சுழியம் +_1 onRU +_2 irVn.d.U +_3 mu:nRU +_4 na:ngU +_5 aIndU +_6 a:RU +_7 ;e:lU +_8 ;et.t.U +_9 onbVd.U +_10 pattU +_1X padin +_11 patinonRU +_12 pVnniren.d.U +_19 pattonbVdU + +_20 irUbVdU +_30 muppVdU // முப்பது +_40 na:RpVdU +_50 aImbVdU +_60 aRUbVdU +_70 ;ez.UbVdU +_80 ;en.bVdU +_90 ton.n.u:RU + +_2X irUbVttU +_3X muppVttU +_4X na:RpVttU +_5X aImbVttU +_6X aRUbVttU +_7X ;ez.UbVttU +_8X ;en.bVttU +_9X ton.n.u:t.t.RU + +_1C0 nu:RU +_2C0 irUnu:RU +_3C0 munnu:RU +_4C0 na:nu:RU +_5C0 aInu:RU +_6C0 aRUnu:RU +_7C0 ;ez.Unu:RU +_8C0 ;en.n.u:RU +_9C0 tol.l.a:jirVm + +_1C nu:t.t.Ri +_2C irUnu:t.t.Ri +_3C munnu:t.t.Ri +_4C na:nu:t.t.Ri +_5C aInu:t.t.Ri +_6C aRUnu:t.t.Ri +_7C ;ez.Unu:t.t.Ri +_8C ;en.n.u:t.t.Ri +_9C tol.l.a:jirVttU + +_0M1x a:jirVm +_1M1x a:jirVm +_0M1 a:jirVttU +_1M1 a:jirVttU + +_0M2x lVd.tSVm // 100,000 +_1M2x orUlVd.tSVm +_0M2 lVd.tSVttU +_1M2 orUlVd.tSVttU + +_0M3x ko:d.i // 10,000,000 +_1M3x orUko:d.i +_0M3 ko:d.ie: +_1M3 orUko:d.ie: + +_dpt _pul.l.i + + +// English words +tamil தமிழ் $text + + +// exceptions +பாபு $alt // initial ப as [b] +பவானி $alt +பகவதி $alt +பானம் $alt +பாணம் $alt +பாறம் $alt +பாரதம் $alt +பரதம் $alt +பாப $alt +பாகம் $alt +பண்தம் $alt +பவனி $alt +பயில்வான் $alt +பாபா $alt +போண்டா $alt +பஜ்ஜி $alt +பாதாம் $alt +போகம் $alt +போதனை $alt +பூகம்பம் $alt +பாகவதம் $alt +பகவத் $alt +பங்கம் $alt +பீதி $alt +பேகம் $alt +பார்லி $alt +பிக்கினி $alt +பேதம் $alt +போனஸ் $alt +போகி $alt +பாலா $alt +பூத $alt +பாபா ba:ba: +பாக்கி $alt +பலி $alt +போதி $alt +பலத்த $alt +புத்தி $alt +படா $alt +பால $alt +பாம்ப் $alt +பீராமண $alt +பிரதர் $alt +பால்ய $alt +பலு $alt +பில் $alt +பந்த் $alt +பில்லி $alt +பம்பளிமாஸ் $alt +பட்டர் $alt +பட்டரால் $alt +பைக்கை $alt +பெட்டின் $alt +பெட்டில் $alt +படவா $alt +பாக்கிப் $alt +பாக்கித் $alt +பாக்கிச் $alt +பர்மிய $alt +(பி . ஏ) bije: + + + // initial த as [d] +தீபாவளி $alt +தண்டனை $alt +துவம்சம் $alt +திருஷ்டி $alt +தயாநிதி $alt +தயாளு $alt +துந்துவி $alt +திக் $alt +தடக் $alt +தீக்ஷை $alt +தடியன் $alt +தரிசனம் $alt +தட்சணை $alt +தைவதம் $alt +தாட்சண்யம் $alt +தனம் $alt +திக்கற்ற $alt +தானு $alt +திட $alt +தேவ $alt +தோ $alt +தினசரி $alt +தரும $alt +தொப் $alt +தொப்பென்று $alt +தொப்னு $alt +திக்கெட்டும் $alt +தேவா $alt + + + // initial ட +டார்ச் t.a:rtS + + + // initial ச as [tS] +சீ $alt +சே $alt +சீசீ tSi:tSi: +சீச்சீ $alt +சிட்டாய் $alt +சேச்சே $alt + + +கக $alt // initial க as [g] +கனம் $alt +கிலி $alt +கில்லி $alt +காந்தி $alt +கிரி $alt +கோமதி $alt +கயா $alt +காயத்ரி $alt +கட $alt +கோ $alt +கதி $alt +கோபி $alt +கச்சாமி $alt +குரு $alt +கோர $alt +கும் $alt +கும்மென்று $alt +கும்முனு $alt +குருவுக்கு $alt +குருன்னு $alt +குருவே $alt +கண்டம் $alt +கோலி $alt +குப் $alt +கம்னு $alt +கம்மென்று $alt + + +// p as [f] +போன் fo:n +போனில் fo:nil +பைல் faIl +பைலை faIlaI +பாதர் fa:dVr +பாதரிடம் fa:dVrid.Vm +பாதருடன் fa:dVrUd.Vn +பாதரில்லாமல் fa:dVrilla:mVl +காபி ka:fi +பேனில் fe:nil +பேன்ல fe:nlV +போன்ல fo:nlV + + +பப pVpV +தீப் di:p +டிரேயின் t.re:jn +பைக் baIk +பைக்கில் baIkkIl +தாங்ஸ் Ta:Nks // thanks +டிபுடி d.EpjUt.i // deputy +டிபன் t.ifVn diff --git a/dictsource/ta_rules b/dictsource/ta_rules index 54134f7..34aa652 100644 --- a/dictsource/ta_rules +++ b/dictsource/ta_rules @@ -3,6 +3,7 @@ // Spelling to phoneme rules for Tamil // B means a combining vowel sign, or a virama +// K means a consonant or end-of-word .replace @@ -17,133 +18,904 @@ ௮ 8 ௯ 9 -. -.group 0xe0ae // characters which start with UTF-8 bytes: [e0 ae] - - ஂ // anusvara - - ஃ // visarga - - அ a - - ஆ a: - - இ i - - ஈ i: - - உ u - - ஊ u: - - எ e - - ஏ e:: +ொ ொ +ோ ோ +ௌ ௌ - ஐ E: - ஒ o +// க is k when preceded by these +.L01 ஷ் ஸ் ட் - ஓ o: +// ப is p when preceded by these +.L02 ட் ற் ல் ஷ் ஸ் - ஔ aU // consonants +.group க + க்ஷ ks.V + க்ஷ (B ks. + க gV // inter-vocalic, unless there is virama before or after க (B g - க (் g - ்) க gV - ்) க (B g _) க kV _) க (B k + _) க (T gV // if word has $alt attribute in ta_list + _) க (BT+ g // $alt க்க kkV க்க (B kk - + ற்) க _kV + ற்) க (B _k + L01) க kV + L01) க (B k + க (ிரு k + க (ூட k + ங்) க (ொ k + + க (ீத g + க (ஜ gV + +//sort + _) க (ங்கா gV + _) க (ங்கை gV + _) க (டப்பாரை gV + _) க (டிகார gV + _) க (ணபதி gV + _) க (ணீர gV + _) க (ணே gV + _) க (ண்டங் gV + _) க (திகலங் gV + _) க (தியில் gV + _) க (ந்தர்வ gV + _) க (னத் gV + _) க (னம gV + _) க (ப்பென்ர gV + _) க (ம்பீர gV + _) க (ருட gV + _) க (ர்ஜ gV + _) க (ர்ப gV + _) க (ர்வ gV + _) க (லாட்டா gV + _) க (லீர gV + _) க (வண gV + _) க (வன gV + _) க (வாஸ்கர gV + _) க (ாண்டாமிருக g + _) க (ாண்டீப g + _) காண்டேக (ர ga:n.d.e:kV + _) க (ாந்த g + _) க (ானங் g + _) க (ானத்த g + _) க (ானம g + க (ாரன k + க (ாரர k + _) க (ிரிஜா g + _) க (ிரிதர g + _) க (ுகன g + _) க (ுகை g + _) க (ுஜராத g + _) க (ுடியாத்த g + _) க (ுணங் g + _) க (ுணத் g + _) க (ுணம g + _) க (ுண்டடி g + _) க (ுண்டன g + _) க (ுண்டம்மா g + _) க (ுண்டர g + _) க (ுண்டாக g + _) குண்டாந்த (டி gun.d.a:ntV + _) க (ுண்டாய g + _) க (ுண்டு g + _) க (ுபீர g + _) க (ுபுக் g + _) க (ுப்பென்ற g + _) க (ும்பல g + _) க (ும்மிடிப்பூண் g + _) க (ும்மிருட்ட g + _) க (ுருக்கள g + _) க (ுருநா g + _) க (ுருரா g + _) க (ுருவா g + _) க (ுருவாய g + _) க (ுருவிட g + _) க (ுருவின g + _) க (ுருவுடை g + _) க (ுருவோட g + _) க (ூடலூர g + _) க (ெட்டி g + _) க (ோகுல g + _) க (ோதுமை g + _) க (ோந்து g + _) க (ோபப் k + கோப (ால go:p + _) க (ோபிசெட் g + _) கோப (ித்து ko:b + _) க (ோபிநா g + _) க (ோபிய g + _) க (ோபுர g + _) க (ோரக g + _) க (ோரத g + _) க (ோரப g + _) க (ோரம g + _) க (ோலிக g + _) க (ோலிய g + _) க (ோல்மால g + _) க (ோவா g + _) க (ோவிந்த g + _) க (ோஷ g + _) க (ௌ g + _) கௌட (ில்ய kaUt. + _) க (ௌட்டில்ய k + வி) க்ட (ோரியா kt. // victoria +//endsort + +//sort + _கல்) க (ண்ட kV + _கல்) க (த்தா kV + கொல்) க (த்தா kV + தின) க (ர kV + மது) க (ர kV + திவா) க (ர kV + பிரபா) க (ர kV + சுதா) க (ரிட kV + சுதா) க (ரின kV + சுதா) க (ர்_ kV + க (வி kV +கோயில்) க (ாளை k + _கல்) க (ி k + க (ுமார k + க (ுல k + _) குல்க (ந்த gulkV +//endsort + + _) கி (ராம g + _) கி (ரகண g + _) கி (ராக்கி g + நற்) க (ுண g + + +.group ங ங NV ங (B N - ச dZV - ச (B dZ - _) ச sa + +.group ச + ச sV // ?? [z] + ச (B s + _) ச sV _) ச (B s + _) ச (T tSV + _) ச (BT tS ச்ச tS:V ச்ச (B tS: - + ட்) ச tSV + ட்) ச (B tS + ற்) ச tSV + ற்) ச (B tS + ஞ்) ச dZV + ஞ்) ச (B dZ + ச் (_N tS + ச்_) ச tSV // previous word ends in ச் + ச்_) ச (B tS + _) ச (ெண்ட tS + _) சாம்ப (ியன tSa:mp + +//sort + _) ச (க்கரவர்த்தி tSV + _) ச (துர் tSV + ச (ந்திர tSV + _) ச (ப்பாத்தி tSV + _) ச (ான்ஸ tS + _) ச (ிட்டாக tS + _) ச (ிட்டாட்ட tS + _) ச (ிட்டி tS + _) ச (ிட்டு tS + _) ச (ிட்ல tS + _) ச (ிதம்பர tS + _) ச (ித்தப்ப tS + வி) ச (ித்திர tS + _) ச (ித்ரா tS + சு) சித (்ரா tSit + _) ச (ின் tS + _) ச (ீன tS + _) ச (ீனிவா s + _) ச (ெட்டிப்பாளைய tS + _) ச (ெட்டியார tS + _) ச (ென்னை tS + _) ச (ெல்லம tS + _) ச (ெஸ் tS + _) ச (ேரி tS +//endsort + + _) சிரு (ஷ்டி sri + சீ (னிவாச sri: + ச (ாந்தி s. + ச (ண்மு s.V + சங்க (ர s.VNkV + ச (ண்பக s.V + ச (ெண்பக s. + சு (வாரஸ்ய s + சு (வாமி s + சி (ரம s + + +.group ஜ ஜ dZV ஜ (B dZ + +.group ஞ ஞ n^V ஞ (B n^ + +.group ட ட d.V ட (B d. - _) ட t.V - _) ட (B t. + _) ட (ீ t. ட்ட t.t.V ட்ட (B t.t. - + ஷ்) ட t.V + ஷ்) ட (B t. + _) டாக்ட (ர d.a:kt.V + _) ட (ோக்கியோ t. + ிங்) ட (ன் t.V // -ington + _) ட (ாக்க t. // talkies + _) டிராக்ட (ர t.ira:gt.V + _) ட (யர t.V + _) ட (ைம்_ t. + டெலிப (ோன t.elif + _) ட (ம்ப்ளர t.V + _) ட (ிக்க t. + _) ட (ிராம t. + _) ட (வுன t.V + _) டென்டுல்க (ர t.ent.UlkV + _) டிரேயின (ை t.re:jn + _) ட (ியூஷன t. + + +.group ண ண n.V ண (B n. + +.group த த dV த (B d _) த tV _) த (B t + _) த (T dV // if word has $alt attribute in ta_list + _) த (BT+ d // if word has $alt த்த ttV த்த (B tt - + க்) த tV + க்) த (B t + ஸ்) த tV + ஸ்) த (B t + ப்) த tV + ப்) த (B t + + // exceptions, த as [d] +//sort + _) த (கன dV + _) த (கி dV + _) த (க்க்ஷிண dV + _) த (க்ஷிணா dV + _) த (சரா dV + _) த (சை dV + _) த (டபுடல dV + _) த (டவை dV + _) த (டால dV + _) த (டிJ_பயல dV + _) த (டிJ_புத்தக dV + _) த (டிJ_மாட dV + _) த (டித்த dV + _) த (டியன dV + _) த (டியர dV + _) த (ட்சன dV + _) த (ட்சிண dV + _) த (ண்டக் dV + _) த (ண்டத் dV + _) த (ண்டன dV + _) த (ண்டபாணி dV + _) த (ண்டம dV + _) த (ண்டாயுதபாணி dV + _) த (ண்டித் dV + _) த (னகோடி dV + _) த (னசேகரன dV + _) த (னன்ஜெயன dV + _) த (னபால dV + _) த (னராஜ dV + _) த (னலக்ஷ்மி dV + _) த (னலட்சுமி dV + _) த (னுஷ dV + _) த (ன்மந்திரி dV + _) த (ன்ராஜ dV + _) த (மயந்தி dV + _) த (ம்பதி dV + _) த (ம்பிடி dV + _) த (யவ dV + _) த (ரணி dV + _) த (ரிசனங் dV + _) த (ரிசி dV + _) த (ரித்திரம dV + _) த (ருமன dV + _) த (ருமர dV + _) த (ருமி dV + _) த (ர்க dV + _) த (ர்பார dV + _) த (ர்பை dV + _) த (ர்ம dV + _) த (வம dV + _) த (ாக்கா d + _) த (ாச d + _) த (ாடி d + _) த (ாட்சாய d + _) த (ாதா d + _) த (ானிய d + _) த (ானுவ d + _) த (ாம்_தூம d + _) த (ாயாதி d + _) த (ாரணி d + _) த (ாராபுர d + _) த (ாராள d + _) த (ாராவி d + _) த (ாவணி d + _) த (ாவா d + _) த (ிகில d + _) த (ிக்கில d + _) த (ிக்கு d + _) த (ிக்கு_முக்க t + _) த (ிக்கு_வாய t + _) த (ிக்கே d + _) த (ிக்கை d + _) த (ிசை d + _) த (ிடப d + _) த (ிடம d + _) த (ிடீ d + _) த (ிடீர d + _) த (ிடுக் d + _) த (ிடும d + _) த (ிண்டிவன d + _) த (ிண்டுக்கல d + _) த (ினக d + _) த (ினந் d + _) த (ினம d + _) த (ினுச d + _) த (ினேஷ d + _) தி (யான dj + _) த (ிரவ d + _) த (ிரவிய d + _) த (ிரௌபதி d + _) த (ில்லி d + _) த (ிவச d + _) த (ிவாகர d + _) த (ிவான d + _) த (ிவ்ய d + _) த (ீப d + _) த (ீப்ப t + _) த (ீரச் d + _) த (ீரன d + _) த (ீரர் d + _) த (ீர்க d + _) த (ுக்க d + _) த (ுக்கடா t + _) த (ுக்கிரி t + _) த (ுச்சம d + _) த (ுச்சாதனன d + _) த (ுட்ட d + _) த (ுரியோதனன d + _) த (ுரை d + _) த (ுரோண d + _) த (ுர் d + _) த (ுஷ் d + _) த (ூசி d + _) த (ூப d + _) த (ூம d + _) த (ூர d + _) த (ெய்வ d + _) த (ேக d + _) த (ேக்கடி t + _) த (ேக்கிலை t + _) த (ேக்கு t + _) த (ேவகி d + _) த (ேவதை d + _) த (ேவன d + _) த (ேவர்க d + _) த (ேவாமிருத d + _) த (ேவாம்ச d + _) த (ேவி d + _) த (ேவேந் d + _) த (ைரிய d + _) த (ொபுக் d + _) த (ொம் d + _) த (ோசை d + _) த (ோஷ d +//endsort + + யு) த்த ddV + யு) த்த(B dd + பு) த்த (ி dd + பு) த்த (ியி dd + பு) த்த (ர ddV + பு) த்த (ன ddV + சமு) த்த (ிர dd + உ) த்த (ியோக dd + + _சாந்) த (ி t + _சும) த (ி t + _வசந்) த (ி t + _சுகந்) த (ி t + _வனி) த (ா t + _சுனி) த (ா t + _ல) த (ா t +பிரேமல) த (ா t + _ரேவ) த (ி t + _வினி) த (ா t + _வசந்) த tV + _பார்வ) த (ி t +பிரபாவ) த (ி t +_கோம) த (ி t + _பிர) த (ீ t + பவி) த (்ரா t + நி) த (்ய t + சி) த (்ரா t + + _) திரு (ஷ்டி dri + _) திரு (திரா dri + _) து (ரோண t + _) தி (ரௌபதி t + _) து(ரோக d + _) தி (யாக t + _) து (வேச d + _) து (வேஷ d + + + +.group ந ந nV ந (B n // dental n + +.group ன ன nV ன (B n // alveolar n + +.group ப ப bV ப (B b _) ப pV _) ப (B p + _) ப (T+ bV // if word has $alt attribute in ta_list + _) ப (BT+ b // if word has $alt ப்ப ppV ப்ப (B pp - ஃ) ப fV - ஃ) ப (B f - + L02) ப pV + L02) ப (B p + குஷ்) ப (ு b + று) ப _pV + று) ப(B _p + + ம) ப pV + ம) ப (ா p + ம) ப (B b + த) ப pV + த) ப (ா p + த) ப (B b + + @) பத (ி pVt + ன்) பத (ி bVd + ப (ுர p + ப (ால p + ப (ாள p + ம்) ப (ா b + ப (ூர p + +//sort + + _) ப (கவான bV + _) ப (காசுர bV + _) ப (கிரங்க bV + _) ப (கிஷ்க bV + _) ப (கீர bV + _) பக் (த bVk + _) ப (ங்கம bV + _) ப (ங்களா bV + _) ப (ங்கார bV + _) ப (ஜ bV + _) ப (ட்சண bV + _) ப (ட்டன bV + _) ப (ட்டரி bV + _) ப (ட்டரு bV + _) ப (தில bV + _) ப (த்திரமா bV + _) ப (ந்தங்கள bV + _) ப (ந்தத் bV + _) ப (ந்தம bV + _) ப (ந்துக்கள bV + _) ப (ந்துவ bV + _) ப (ந்தோபஸ்த bV + _) ப (னியன bV + _) ப (ம்பர bV + _) ப (ம்பாய bV + _) ப (யங்கர bV + _) ப (யத் bV + _) ப (யந் bV + _) ப (யபக்தி bV + _) ப (யப் bV + _) ப (யம bV + _) ப (ரதநாட்டிய bV + _) ப (ரோட bV + _) ப (ர்மா bV + _) ப (லகீன bV + _) ப (லங் bV + _) ப (லசாலி bV + _) ப (லப்படு bV + _) ப (லம bV + _) ப (லராம bV + _) ப (லவந்த bV + _) ப (லவான bV + _) ப (லவீன bV + _) ப (லஹீன bV + _) பலாத்க (ார bVla:dk + _) ப (லிய bV + _) ப (லூன bV + _) ப (வ்ய bV + _) ப (ஸ bV + _) ப (ாகங்க b + _) ப (ாகத b + _) ப (ாகம b + _) ப (ாக்கிய b + _) ப (ாசு b + _) ப (ாடி_பில்டிங் b + _) ப (ாணி b + _) ப (ாதகம b + _) ப (ாதிக்க b + _) ப (ாதிப்ப b + _) ப (ாதுஷா b + _) ப (ாத்யதை b + _) ப (ாத்ரூம b + _) ப (ானு b + _) ப (ாபுவ b + _) ப (ாரதி b + _) ப (ாரத்த b + _) ப (ாரம b + _) ப (ார்கவி b + _) ப (ாலக b + _) ப (ாலக்காட p + _) ப (ாலச b + _) ப (ாலதண் b + _) ப (ாலமு b + _) ப (ாலாஜி b + _) ப (ாலாபிஷேக p + _) ப (ாலாவ b + _) ப (ாலின் p + _) ப (ாலு b + _) ப (ாலுடன் p + _) ப (ாலும்_ p + _) ப (ாலை p + _) ப (ால் p + _) ப (ால்_தாக்கரே b + _) ப (ால்ய b + _) ப (ாவனா b + _) ப (ாவனை b + _) ப (ாஷை b + _) ப (ாஸ்கர b + _) ப (ாஸ்மதி b + _) ப (ிக்கு b + _) ப (ிரகதீ b + _) ப (ிரகஸ்பதி b + _) ப (ிரம்ம b + _) ப (ிரம்மை b + _) ப (ிரித்தானி b + _) ப (ில்டிங் b + _) ப (ிஸினஸ b + _) ப (ீஜிங b + _) ப (ீடி b + _) ப (ீடிகை p + _) ப (ீடித்த p + _) ப (ீம b + _) ப (ீரங்கி b + _) ப (ீராமணர b + _) ப (ுட்டி b + _) ப (ுதன b + _) புத்த(K buddV + _) புத் (தJ_புத+ put + _) புத்த (க puttV + _) புத்த (ம்_புதிய puttV + _) புத்த (ம்_புது puttV + _) ப (ுத்திக் b + _) ப (ுத்திசாலி b + _) ப (ுத்திய b + _) ப (ுல்லாக்க b + _) ப (ுவன b + _) ப (ூகோல b + _) ப (ூட்ஸ b + _) ப (ூதங் b + _) ப (ூதத் b + _) ப (ூதம b + _) ப (ூதாகார b + _) ப (ூதேவி b + _) ப (ூபாள b + _) ப (ூமி b + _) ப (ூலோக b + _) ப (ூவுலக b + _) ப (ெங்களூர b + _) ப (ெட்ரூம b + _) ப (ெர்லிங b + _) ப (ெல் b + _) ப (ேஜார b + _) ப (ேட்டரி b + _) ப (ேதலித்த b + _) ப (ேதி b + _) ப (ேலன்ஸ b + _) ப (ேஷ b + _) ப (ைரவ b + _) ப (ொம்மல b + _) ப (ொம்மை b + _) ப (ோஜ b + _) ப (ோதன b + _) ப (ோதித் b + _) ப (ோதை b + _) ப (ோன்ஸ்லே b + _) ப (ோபால b + _) ப (ௌதிக b + _) ப (ௌத்த b +//endsort + +//sort + நன்) ப (கல pV + பின்) ப (கல pV + முன்) ப (கல pV + ப (டி pV + கல்) ப (னா pV + சமன்) ப (ாட p + முரன்) ப (ாட p + ப (ாதை p + எதிர்) ப (ார p + கோ) ப (ி p + ம்) ப (ுரா b + நாலா) ப (ுற p + எழும்) ப (ூர b + இன்ஸ்) ப (ெக்டர p + ப (ோதிலும் p + ப (ோது p + ப (ோதும் p + ப (ோதும்_+ p + ப (ோதே_+ p + ப (ோல்_ p +//endsort + + // If ப+ appearing in the middle of a word is followed by ட+ + // and not preceded by ம், then ப should sound as 'pa'. + ப (ட pV + ப (Bட p + ம்) ப (ட bV + ம்) ப (Bட b + +//sort + _) பி (ரகதீ b + _) பி (ரகலாதன p + _) பி (ரகஸ்பதி b + _) பி (ரகாச p + _) பி (ரகார p + _) பி (ரகாஷ p + _) பி (ரக்ஞை p + _) பி (ரசங் p + _) பி (ரசன்ன p + _) பி (ரசவ p + _) பி (ரசாத p + _) பி (ரசாந்தி p + _) பி (ரசித்தி p + _) பி (ரச்சனை p + _) பிரச (்னை prVtS + _) பி (ரஜ p + _) பி (ரத p + _) பி (ரதம p + _) பி (ரதர்_ b + _) பி (ரதீ p + _) பி (ரதேச p + _) பி (ரப p + _) பி (ரமாத p + _) பி (ரமித் b + _) பி (ரமிப்ப b + _) பி (ரமுகர p + _) பி (ரமை b + _) பி (ரம்ம b + _) பி (ரம்மன b + _) பி (ரம்மை b + _) பி (ரயத்தன p + _) பி (ரயா p + _) பி (ரயோக p + _) பி (ரயோசன p + _) பி (ரயோஜன p + _) பி (ரலய p + _) பி (ரளய p + _) பி (ரவாக p + _) பி (ரவேச p + _) பி (ரவேசி p + _) பி (ரஸ்தா p + _) பி (ராணன p + _) பி (ராதித் p + _) பி (ராப் p + _) பி (ராமண b + _) பி (ராமணன b + _) பி (ராய p + _) பி (ரார்தன p + _) பி (ரார்தி p + _) பி (ரிட b + _) பி (ரித்தானி b + _) பி (ரியம p + _) பி (ரியர p + _) பி (ரியா_ p + _) பி (ரியாவிடம p + _) பி (ரியாவின p + _) பி (ரியாவு p + _) பி (ரியாவை p + _) பிரு (கன்நளை bri + _) பிரு (ந்தா bri + _) பி (ரே p + _) பி (ரோகிதர p + _) பீ (ராமண b +//endsort + + // musical notes + சா) ப (ா p + ரி) ப (K pV + ரீ) ப (K pV + ரி) ப (ா p + ரீ) ப (ா p + ம) ப (K pV + மா) ப (K pV + ம) ப (ா p + மா) ப( ா p + பப (K pVpV + பாப (K pa:pV + பப (ா pVp + பாப (ா pa:p +// த) ப (K pV + தா) ப (K pV +// த) ப (ா p + தா) ப (ா p + + னி) ப (K pV + னீ) ப (K pV + னி) ப (ா p + னீ) ப( ா p + க) ப (K pV + க) ப (ா p + கா) ப (K pV + கா) ப (ா p + + // (exceptions) + தா) ப (ம் bV + _த) ப (ால b + _க) ப (ால b + _கா) ப (ந்து bV + சு) ப்ப bbV + சு) ப்ப(B bb + + + _) ப (ோனை f + _) ப (ோட்டோ f + _) ப (ைல்கள f + _) ப (ோனிலும் f + _சோ) ப (ா f // sofa + _ஆ) ப (ீஸ f // office + _ஆ) ப (ீச f // office + _ஆ) ப (ிஸ f // office + _ஆ) ப (ிச f // office + கிராம) ப (ோன f // gramaphone + _கா) ப (ியை f + +.group ம ம mV ம (B m + +.group ய ய jV ய (B j + +.group ர ர rV ர (B r + +.group ற ற RV ற (B R ற் (ற t. // RR -> t.R + ற்ச tS: + ற்ச (B tS: + +.group ல ல lV ல (B l + +.group ள ள l.V ள (B l. + +.group ழ ழ z.V ழ (B z. +.group வ வ vV வ (B v + _) வி (யாபார v + +.group ஶ ஶ SV ஶ (B S + +.group ஷ ஷ s.V ஷ (B s. + +.group ஸ ஸ sV ஸ (B s - ஹ hV - ஹ (B h + +.group ஹ + ஹ HV + ஹ (B H + + +.group ஃ + ஃ h + ஃப fV + ஃப (B f + ஃத QdV + ஃத (B Qd + ஃக gQV + ஃக (B gQ + +// vowel letters + +.group 0xe0ae // characters which start with UTF-8 bytes: [e0 ae] + + ஂ // anusvara + + அ a + + ஆ a: + + இ i + _) இ (ரா // silent before 'raa' + _) இ (ராக i + _) இ (ரான i + _) இ (லட்சிய // silent + + ஈ i: + + உ u + + ஊ u: + + எ e + _) எ ;e // add a short [j] sound at start of word ? + + ஏ e: + _) ஏ ;e: // add a short [j] sound at start of word ? + + ஐ aI + + ஒ o + + ஓ o: + + ஔ aU // combining vowels @@ -163,7 +935,7 @@ ே e: - ை E: + ை aI ொ o @@ -171,6 +943,7 @@ ௌ aU + ் // virama ௗ : // aU length mark @@ -183,3 +956,10 @@ .group ் // virama $ dolV + D) . (D+ _pul.l.i + + !) rs (_.D ru:pi:z // Rs. + + __) - (_D kVz.ittVl // minus கழித்தல் + A_) - (_D _ + C_) - (_D _ diff --git a/dictsource/zh_list b/dictsource/zh_list old mode 100644 new mode 100755 diff --git a/docs/commands.html b/docs/commands.html index 3e2f27f..5ae1d00 100644 --- a/docs/commands.html +++ b/docs/commands.html @@ -58,7 +58,9 @@ or
Or just type
  espeak
followed by text on subsequent lines. Each line is spoken when -RETURN is pressed.
Use espeak -x to see the corresponding phoneme codes. +RETURN is pressed. +

+Use espeak -x to see the corresponding phoneme codes.

 


2.2.2 The Command Line Options

@@ -88,11 +90,15 @@ If neither -f nor --stdin is given, then the text input is taken from "text word
-s <integer>
Sets the speed in words-per-minute (approximate values for the default English voice, others may differ slightly). The default value is 170. I generally use a faster speed -of 190. Range 80 to 390. +of 190. Range 80 to 390. Larger value are rounded down to the maximum.

--b
-
Indicates that the input text is not UTF-8, but the 8-bit character set which corresponds to the language (eg. Latin-2 for Polish). Without this option, eSpeak assumes text is UTF8, but will automatically switch to the 8-bit character set if it finds an illegal UTF8 sequence. That may give wrong results if some 8-bit character sequences look like valid UFT8 multibyte characters. +-b <integer>
+
Input text character format.

+1   UTF-8. This is the default.

+2   The 8-bit character set which corresponds to the language (eg. Latin-2 for Polish).

+4   16 bit Unicode.

+Without this option, eSpeak assumes text is UTF-8, but will automatically switch to the 8-bit character set if it finds an illegal UTF-8 sequence.

-g <integer>
@@ -130,7 +136,7 @@ Quiet. No sound is generated. This may be useful with the -x option.
   espeak -vaf
To use the Afrikaans voice. A modifier after the voice name can be used to vary the tone of the voice, eg:
   espeak -vaf+3
-The variants are +m1 +m2 +m3 +m4 +m5 +m6 for male voices and +f1 +f2 +f3 +f4 which simulate female voices by using higher pitches. Other variants are +croak and +whisper. +The variants are +m1 +m2 +m3 +m4 +m5 +m6 +m7 for male voices and +f1 +f2 +f3 +f4 which simulate female voices by using higher pitches. Other variants include +croak and +whisper.

<voice filename> is a file within the espeak-data/voices directory.
<variant> is a file within the espeak-data/voices/!v directory.

@@ -188,7 +194,7 @@ Used with -w, it starts a new WAV file every <minutes& --voices [=<language code>]

Lists the available voices.
If =<language code> is present then only those voices which are suitable for that language are listed.
---voices=mbrola lists the voices which use mbrola diphone voices. These are not included in the --voices list
+--voices=mbrola lists the voices which use mbrola diphone voices. These are not included in the default --voices list
--voices=variant lists the voice variants (voice modifiers).
@@ -205,7 +211,8 @@ As well as plain text, phoneme mnemonics can be used in the text input to espeak -v en "[[D,Is Iz sVm f@n'EtIk t'Ekst 'InpUt]]"

+SourceForge.net Logo + diff --git a/docs/dictionary.html b/docs/dictionary.html index a7fc095..fc9b6c0 100644 --- a/docs/dictionary.html +++ b/docs/dictionary.html @@ -88,13 +88,13 @@ The rules are organized in groups, each starting with a ".group" line: A group for each letter or character.

.group <2 characters>
- Optional groups for some common 2 letter combinations. This is only needed, for efficiency, in cases where there are many rules for a particular letter. They would not be needed for a language which has regular spelling rules. + Optional groups for some common 2 letter combinations. This is only needed, for efficiency, in cases where there are many rules for a particular letter. They would not be needed for a language which has regular spelling rules. The first character can only be an ascii character (less than 0x80).

.group
A group for other characters which don't have their own group.

.L<nn>
- Defines a group of letter sequences, any of which can match with Lnn in a post rule (see below). nn is a 2 digit decimal number in the range 01 to 25. eg:

+ Defines a group of letter sequences, any of which can match with Lnn in a pre or post rule (see below). nn is a 2 digit decimal number in the range 01 to 25. eg:

.L01 b bl br pl pr

.replace
@@ -159,7 +159,11 @@ indicates that a word which ends in "th" is translated using the English transla B H F G Y  These may indicate other sets of characters (defined for a particular language). - + + L<nn> + Any of the sequence of characters defined as a letter group (see 4.3.1 above). + + D Any digit. @@ -481,6 +485,10 @@ A word (or group of words) may be given one or more flags, either instead of, or Ignore a . after this word even when followed by a capital letter (eg. Mr. Dr. ). + $hasdot + Use this pronunciation if the word is followed by a dot. (This attribute also implies $dot). + + $abbrev This has two meanings.
1. If there is no phoneme string: Speak the word as individual letters, even if it contains a vowel (eg. "abc" should be spoken as "a" "b" "c").
2. If there is a phoneme string: This word is capitalized because it is an abbreviation and capitalization does indicate emphasis (if the "emphasize all-caps" is on). @@ -587,13 +595,12 @@ _0 to _9   The numbers 0 to 9 -_13etc. Any pronunciations which are needed for specific numbers in the range _11 to _99   +_13etc. Any pronunciations which are needed for specific numbers in the range _10 to _99   _2X  _3XTwenty, thirty, etc., used to make numbers 10 to 99   -_nnAny two digit numbers with a special pronunciation (eg. _15 "fifteen"). _0CThe word for "hundred" _1C  _2CSpecial pronunciation for one hundred, two hundred, etc., if needed. @@ -601,7 +608,7 @@ _0 to _9   _0M1The word for "thousand" _0M2The word for "million" _0M3The word for 1000000000 -_1M1  _2M1Special pronunciation for one thousand, two thousand, tc, if needed +_1M1  _2M1Special pronunciation for one thousand, two thousand, etc, if needed _0andWord for "and" when speaking numbers (eg. "two hundred and twenty"). _dptWord spoken for the decimnal point/comma _dpt2Word spoken (if any) at the end of all the digits after a decimal point. diff --git a/docs/index.html b/docs/index.html index 9696493..2c8ed11 100644 --- a/docs/index.html +++ b/docs/index.html @@ -17,8 +17,12 @@
(email)   jonsd at users dot sourceforge.net
Download -         Forum -         eSpeak Sourceforge page +         +eSpeak Sourceforge page +         +Forum +         +Mailing list
@@ -40,32 +44,36 @@ eSpeak is a compact open source software speech synthesizer for English and other languages, for Linux and Windows.   http://espeak.sourceforge.net

-eSpeak produces good quality English speech. It uses a different synthesis method from other open source TTS engines, and sounds quite different. It's perhaps not as natural or "smooth", but I find the articulation clearer and easier to listen to for long periods. +eSpeak uses a "formant synthesis" method. This allows many languages to be provided in a small size. The speech is clear, and can be used at high speeds, but is not as natural or smooth as larger synthesizers which are based on human speech recordings.

-It can run as a command line program to speak text from a file or from stdin. A shared library version is also available. - +eSpeak is available as: +

    +
  • A command line program (Linux and Windows) to speak text from a file or from stdin. +
  • A shared library version for use by other programs. (On Windows this is a DLL). +
  • A SAPI5 version for Windows, so it can be used with screen-readers and other programs that support the Windows SAPI5 interface. +
  • eSpeak has been ported to other platforms, including Solaris and Mac OSX. +
+Features.
  • Includes different Voices, whose characteristics can be altered.
  • Can produce speech output as a WAV file.
  • SSML (Speech Synthesis Markup Language) is supported (not complete), and also HTML. -
  • Compact size. The program and its data, including many languages, totals about 1 Mbytes. -
  • Can translate text to phoneme codes, so it could be adapted as a front end for another speech synthesis engine. -
  • Potential for other languages. Several are included in varying stages of progress. Help from native speakers for these or other languages is welcomed. -
  • Development tools available for producing and tuning phoneme data. -
  • Written in C++. +
  • Compact size. The program and its data, including many languages, totals about 1.4 Mbytes. +
  • Can be used as a front-end to MBROLA diphone voices, see mbrola.html. eSpeak converts text to phonemes with pitch and length information. +
  • Can translate text into phoneme codes, so it could be adapted as a front end for another speech synthesis engine. +
  • Potential for other languages. Several are included in varying stages of progress. Help from native speakers for these or other languages is welcome. +
  • Development tools are available for producing and tuning phoneme data. +
  • Written in C.

-It works well as a "Talker" with the KDE text to speech system (KTTS), as an alternative to Festival for example. As such, it can speak text which has been selected into the clipboard, or directly from the Konqueror browser or the Kate editor. A Gnome Speech driver is now available. -

-I regularly use it to listen to blogs and news sites. I prefer the sound through a domestic stereo system rather than my small computer speakers. -


-Windows Version. There are Windows SAPI5 and command-line versions of eSpeak. The SAPI5 version can be used with screen readers such as NVDA, JAWS, Supernova, and Window-Eyes.
-They are available as a Windows installer package from the eSpeak Download page.

-A Windows version of the espeakedit program is also available. +I regularly use eSpeak to listen to blogs and news sites. I prefer the sound through a domestic stereo system rather than small computer speakers, which can sound rather harsh.


-Languages. The eSpeak speech synthesizer supports several languages, however in most cases these are initial drafts and need more work to improve them. Assistance from native speakers is welcome for these, or other new languages. Please contact me if you want to help.

-eSpeak does text to speech synthesis for the following languages, some better than others. Afrikaans, Albanian, Armenian, Cantonese, Catalan, Croatian, Czech, Dutch, English, Esperanto, Finnish, French, German, Greek, Hindi, Hungarian, Icelandic, Indonesian, Italian, Kurdish, Latvian, Lojban, Macedonian, Mandarin, Norwegian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Spanish, Swahili, Swedish, Tamil, Vietnamese, Welsh. See Languages. +Languages. The eSpeak speech synthesizer supports several languages, however in many cases these are initial drafts and need more work to improve them. Assistance from native speakers is welcome for these, or other new languages. Please contact me if you want to help.

+eSpeak does text to speech synthesis for the following languages, some better than others. Afrikaans, Albanian, Armenian, Cantonese, Catalan, Croatian, Czech, Danish, Dutch, English, Esperanto, Finnish, French, German, Greek, Hindi, Hungarian, Icelandic, Indonesian, Italian, Kurdish, Latvian, Lojban, Macedonian, Mandarin, Norwegian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Spanish, Swahili, Swedish, Tamil, Turkish, Vietnamese, Welsh. +


+The latest development version is at: +espeak.sf.net/test/latest.html.
espeakedit is a GUI program used to prepare and compile phoneme data. It is now available for download. Documentation is currently sparse, but if you want to use it to add or improve language support, let me know.
diff --git a/docs/phontab.html b/docs/phontab.html index 85b1c77..7feb54f 100644 --- a/docs/phontab.html +++ b/docs/phontab.html @@ -13,17 +13,15 @@
A phoneme table defines all the phonemes which are used by a language, together with their properties and the data for their production as sounds.

-Generally each language has its own phoneme table, although additional phoneme tables can be used for different voices within the language. These alternatives are referenced from Voices files. +Generally each language has its own phoneme table, although additional phoneme tables can be used for different voices within the language. These alternatives are referenced from Voice files.

-A phoneme table does not need to define all the phonemes used by a language. Instead it can reference a previously defined phoneme table, whose phonemes it inherits. These can then be used as they are, or overridden by new definitions, or new phonemes added. For example, a phoneme table may redefine (or add) some of the vowels that it uses, but inherit most of its consonants from a standard set. +A phoneme table does not need to define all the phonemes used by a language. It can inherit the phonemes from a previously defined phoneme table. For example, a phoneme table may redefine (or add) some of the vowels that it uses, but inherit most of its consonants from a standard set.

-

Note: This specification is not yet complete and does not include the definitions of the formant sequence specifications. -
-The source files for the phoneme data is in the "phsource" directory in the espeakedit download package. +The source files for the phoneme data are in the "phsource" directory in the espeakedit download package. "Vowel files", which are referenced in FMT(), VowelStart(), and VowelEnding() instructions are made using the espeakedit program.

 


Phoneme files

-The phoneme tables are defined in a master phoneme file, named phonemes. This starts with the base phoneme table followed by other phoneme tables for languages and voices which inherit phonemes from the base table or from each other. +The phoneme tables are defined in a master phoneme file, named phonemes. This starts with the base phoneme table followed by phoneme tables for other languages and voices. These inherit phonemes from the base table or previously defined tables.

In addition to phoneme definitions, the phoneme file can contain the following:

@@ -32,37 +30,54 @@ In addition to phoneme definitions, the phoneme file can contain the following:

phonemetable <name> <parent>
Starts a new phoneme table, and ends the previous table.
-<name> Is the name of this phoneme table. This name is used in Voices files.
+<name> Is the name of this phoneme table. This name is used in Voice files.
<parent> Is the name of a previously defined phoneme table whose phoneme definitions are inherited by this one. The name base indicates the first (base) phoneme table. -

-

phonemenumber <integer> -
This statement is used at the start of the master phonemes file to define some specific code numbers for various phonemes which are used directly within the speak program. +

 


Phoneme definitions

-A phoneme table contains a list of phoneme definitions. Each starts with the keyword phoneme and the phoneme name (this is the name used in the pronunciation rules), and ends with the keyword endphoneme. For example: +Note: These new Phoneme definitions apply to eSpeak version 1.42.20 and later. +

+A phoneme table contains a list of phoneme definitions. Each starts with the keyword phoneme and the phoneme name (this is the name used in the pronunciation rules in a language's *_rules and *_list files), and ends with the keyword endphoneme. For example:

  phoneme aI
     vowel
+    starttype #a endtype #i
     length 230
-    formants vowels/ai
-    starttype (a) endtype (I)
+    FMT(vowels/ai)
   endphoneme
 
   phoneme s
     vls alv frc sibilant
-    vowelin  f1=0  f2=1700 -300 300  f3=-100 100
-    vowelout f1=0  f2=1700 -300 250  f3=-100 100  rms=20
+    voicingswitch z
     lengthmod 3
-    wave unvoc/s
-    before _ unvoc/s_
-    before p unvoc/s!
-    before t unvoc/s!
-    before k unvoc/s!
-    switchvoicing z
+    Vowelin  f1=0  f2=1700 -300 300  f3=-100 80
+    Vowelout f1=0  f2=1700 -300 250  f3=-100 80  rms=20
+
+    IF nextPh(isPause) THEN
+      WAV(ufric/s_)
+    ELIF nextPh(p) OR nextPh(t) OR nextPh(k) THEN
+      WAV(ufric/s!)
+    ENDIF
+    WAV(ufric/s)
   endphoneme
 
 

+A phoneme definition contains both static properties and executed instructions. The instructions may contain conditional statements, so that the effect of the phoneme may be different depending on adjacent phonemes, whether the syllable is stressed, etc. +

+The instructions of a phoneme are interpreted in two different phases. In the first phase, the instructions may change the phoneme and replace it by a different phoneme. In the second phase, instructions are used to produce the sound for the phoneme. +

+The import_phoneme statement can be used to copy a previously defined phoneme from a specified phoneme table. For example: +

+  phoneme t
+    import_phoneme base/t[
+  endphoneme 
+
+means: phoneme t in this phoneme table is a copy of phoneme t[ from phoneme table "base". A length instruction can be used after import_phoneme to vary the length from the original. + +

 


+

Phoneme Properties

+ Within the phoneme definition the following lines may occur: ( (V) indicates only for vowels, (C) only for consonants)

    @@ -75,8 +90,8 @@ Within the phoneme definition the following lines may occur: ( (V) indicates on frcfricative eg:  f, v, T, D, s, z, S, Z, C, x afraffricate eg:  tS, dZ pause -stressstress symbols, eg: ' , = % -virtualUsed to represent a class of phonemes. See section ("Phoneme Pairs", below) +stressused for stress symbols, eg: ' , = % +virtualUsed to represent a class of phonemes.
    Properties: @@ -85,6 +100,7 @@ Within the phoneme definition the following lines may occur: ( (V) indicates on vcd(C) voiced eg. b, d, g, v, z sibilant(C) eg: s, z, S, Z, tS, dZ palatal(C) A palatal or palatalized consonant. +rhotic(C) An "r" type consonant. unstressed(V) This vowel is always unstressed, unless explicitly marked otherwise. nolinkPrevent any linking from the previous phoneme. trill(C) Apply trill to the voicing. @@ -109,75 +125,208 @@ Within the phoneme definition the following lines may occur: ( (V) indicates on gltglottal +

    +

    starttype <phoneme> +
    Allocates this phoneme to a group so that conditions such as nextPh(#e) can test for any of a group of phonemes. Pre-defined groups for use for vowels are: #@ #a #e #i #o #u. Additional groups can be defined as phonemes with type "virtual". +

    +

    endtype <phoneme> +
    Allocates this phoneme to a group so that conditions such as prevPh(#e) can test for any of a group of phonemes. Pre-defined groups for use for vowels are: #@ #a #e #i #o #u. Additional groups can be defined as phonemes with type "virtual". +

    +

    lengthmod <integer> +
    (C) Determines how this consonant affects the length of the previous vowel. This value is used as index into the length_mods table in the CalcLengths() function in the eSpeak program. +

    +

    voicingswitch <phoneme> +
    This is used for some languages to change between voiced and unvoiced phonemes. +
    +
+

 


+

Phoneme Instructions

+ +Phoneme Instructions may be included within conditional statements. +

+During the first phase of phoneme interpretation, an instruction which causes a change to a different phoneme will terminate the instructions. During the second phase, FMT() and WAV() instructions will terminate the instructions. +

    -
    length -
    (V) The relative length of the phoneme, typically about 140 for a short vowel and from 200 to 250 for a long vowel or diphong. Currently used only for vowels. +
    length <length> +
    The relative length of the phoneme, typically about 140 for a short vowel and from 200 to 300 for a long vowel or diphong. A length() instruction is needed for vowels. It is optional for consonants.

    -

    formants <sound spec> -
    <sound spece> is a relative path to a file which defines how to generate the sound (a vowel or voiced consonant) from a sequence of formant values. (see **) +
    WAV(<wav file>, <amplitude>) +
     <wav file> is a path to a WAV file (22 kHz, 16 bits, mono) within phsource/ which will be played to produce the sound. This method is used for unvoiced consonants. <wavefile> does not include a .WAV filename extension, although the file to which it refers may or may not have one.
    +<amplitude> is optional. It is a percentage change to the amplitude of the WAV file. So, WAV(ufric/s, 50) means: play file 'ufric/s.wav' at 50% amplitude.

    -

    wave <wavefile> -
    (C) This is an alternative to formants.  <wavefile> is a relative path to a WAV file (22 kHz, 16 bits) which will be played to produce the sound. This method is used for unvoiced consonants. <wavefile> does not include a .WAV filename extension, although the file to which it refers may or may not have one. +
    FMT(<vowel file>) +
    <vowel file> is a path to a file (within phsource/) which defines how to generate the sound (a vowel or voiced consonant) from a sequence of formant values. Vowel files are made using the espeakedit program.

    -

    before <phoneme> <sound spec> -
    This specifies an alternative realization when the phoneme followed by another specified phoneme. before may be followed by several <phoneme> <sound seq> pairs. +
    FMT(<vowel file>) addWav(<wav file>, <amplitude>) +
    For voiced consonants, a FMT() instruction may be followed by an addWav() instruction. addWav() has the same format as a WAV() instruction, but the WAV file is mixed with the sound which is synthesized from the FMT() instruction.

    -

    after <phoneme> <sound spec> -
    This specifies an alternative realization when the phoneme follows another specified phoneme. Vowels are considered as two parts, start and end, so both a before and an after condition may apply to the same vowel. +
    VowelStart(<vowel file>, <length adjust>) +
    This is used to modify the start of a vowel when it follows a sonorant consonant (such as [l] or [j]). It replaces the first frame of the <vowel file> which is specified in a FMT() instruction by this <vowel file>, and adjusts the length of the original by a signed value <length adjust>. The VowelStart() instruction may be specified either in the phoneme definition of the vowel, or in the phoneme definition of the sonorant consonant which precedes the vowel. The former takes precedence.

    -

    starttype <phoneme> -
    Allocates this phoneme to a category for the purposes of choosing the variant of a phoneme that precedes it. See section "Phoneme Pairs" below. +
    VowelEnding(<vowel file>, <length adjust>) +
    This is used to modify the end of a vowel when it is followed by a sonorant consonant (such as [l] or [j]). It is appended to the <vowel file> which is specified in a FMT() instruction by this <vowel file>, and adjusts the length of the original by a signed value <length adjust>. The VowelEnding() instruction may be specified either in the phoneme definition of the vowel, or in the phoneme definition of the sonorant consonant which follows the vowel. The former takes precedence.

    -

    endtype <phoneme> -
    Allocates this phoneme to a category for the purposes of choosing the variant of a phoneme that follows it. See section "Phoneme Pairs" below. +
    Vowelin <vowel transition data> +
    (C) Specifies the effects of this consonant on the formants of a following vowel. See "vowel transitions", below.

    -

    reduceto <phoneme> <level> -
    (V) Change to the specified phoneme (such as schwa, @) if this syllable has a stress level less than that specified by <level> +
    Vowelout <vowel transition data> +
    (C) Specifies the effects of this consonant on the formants of a preceding vowel. See "vowel transitions", below.

    -

    linkout <phoneme> -
    If the following phoneme is a vowel then this additional phoneme will be inserted before it. +
    ChangePhoneme(<phoneme>) +
    Change to the specified phoneme.

    -

    beforevowel <phoneme> -
    The phoneme changes to this one if the next phoneme is a vowel. +
    ChangeIfDiminished(<phoneme>) +
    Change to the specified phoneme (such as schwa, @) if this syllable has "diminished" stress.

    -

    beforevowelpause <phoneme> -
    Change to this if the next phoneme is a vowel or pause. +
    ChangeIfUnstressed(<phoneme>) +
    Change to the specified phoneme if this syllable has "diminished" or "unstressed" stress.

    -

    beforenotvowel <phoneme> -
    Change to this if the next phoneme is not a vowel. +
    ChangeIfNotStressed(<phoneme>) +
    Change to the specified phoneme if this syllable does not have "primary" stress.

    -

    lengthmod <integer> -
    (C) Determines how this consonant affects the length of the previous vowel. This value is used as index into the length_mods table in the CalcLengths() function in the speak program. +
    ChangeIfStressed(<phoneme>) +
    Change to the specified phoneme if this syllable has "primary" stress.

    -

    vowelin <vowel transition data> -
    (C) Specifies the effects of this consonant on the formants of a following vowel. See "vowel transitions", below. +
    IfNextVowelAppend(<phoneme>) +
    If the following phoneme is a vowel then this additional phoneme will be inserted before it.

    -

    vowelout <vowel transition data> -
    (C) Specifies the effects of this consonant on the formants of a preceding vowel. See "vowel transitions", below. +
    RETURN +
    Ends executions of instructions.

    +

    CALL <phoneme table>/<phoneme> +
    Executes the instructions of the specified phoneme.

 


-

Phoneme Pairs

-The pronunciation of a phoneme can depend on the phonemes before and after it. Some of this modification is done automatically - the program automatically adjusts the beginning and end of a vowel to match its adjacent sounds. You can also specify variant pronunciations in the phoneme table. +

Conditional Statements

+Phoneme definitions can contain conditional statements such as: +
+  IF <condition> THEN
+    <statements>
+  ENDIF
+
+or more generally: +
+  IF <condition> THEN
+    <statements>
+  ELIF <condition> THEN
+    <statements>
+  ...
+  ELSE
+    <statements>
+  ENDIF
+
+where the ELSE and multiple ELSE parts are optional.

-The before and after statements can specify different sound variants to be used when the phoneme is before or is after another specified phoneme. The adjacent phoneme that's specified in a before or after statement may refer not just to one, but to other phonemes too. For example:

   before ; unvoc/s;
means that the sound unvoc/s; is used (rather than unvoc/s if the following phoneme is [;]. But this rule also applies if the next phoneme is another type of pause, [_] or [;;]. This is because these two include a line
   starttype ;
in their phoneme specifications. This means that they look like a [;] to a preceding phoneme. +Multiple conditions may be joined with AND or OR, but not a mixture of ANDs and ORs.

-When looking for a matching before or after rule, if an exact match is not found, then a match is looked for by replacing either or both of the two phonemes by their starttype and endtype groups as appropriate. +Condition +Can be: +

    +
    +
    prevPh(<attribute>) +
    Test the previous phoneme +

    +

    prevPhW(<attribute>) +
    Test the previous phoneme, but only within the same word. Returns false if there is no previous phoneme in the word. +

    +

    thisPh(<attribute>) +
    Test this current phoneme +

    +

    nextPh(<attribute>) +
    Test the following phoneme +

    +

    nextPhW(<attribute>) +
    Test the following phoneme, but only within the same word. Returns false if there is no following phoneme in the word. +

    +

    next2Ph(<attribute>) +
    Test the phoneme after the next phoneme. +

    +

    nextVowel(<attribute>) +
    Test the next vowel after the current phoneme, but only within the same word. Returns false if there is none. +

    +

    PreVoicing() +
    This is used as part of the instructions for voiced stop consonants (eg. [d] [g]). If true then produce a voiced murmer before the stop. +

    +

    KlattSynth() +
    Returns true if the voice is using the Klatt synthesizer rather than the eSpeak synthesizer. +
    +
+Attributes +
    +Note: Additional attributes could be added to eSpeak if needed. +
    +
    <phoneme name> +
    True if the phoneme has this phoneme name. +

    +

    <phoneme group> +
    True if the phoneme has this starttype (or if it has this endtype if it's used in prevPh() ). The pre-defined phoneme groups are #@, #a, #e, #i, #o, #u. +

    +

    isPause +
    True if the phoneme is a pause. +

    +

    isPause2 +
    nextPh(isPause2) is used to test whether the next phoneme is not a vowel or liquid consonant within the same word.

    -virtual phonemes can be defined for use in starttype and endtype statements. For example, a virtual phoneme [ (i) ] is used to represent vowels which start with and end with an [i] type sound. So [i:] and [I] have starttype (i) and those, plus diphthongs such as [aI] [eI] [OI] have endtype (i) . By convension, names of virtual phonemes include a pair of round brackets. +

    isVowel +
    isNotVowel +
    isLiquid +
    isNasal +
    isVFricative +
    These test the phoneme type. +

    +

    isPalatal +
    isRhotic +
    These test whether the phoneme has this property. +

    +

    isWordStart +
    notWordStart +
    These text whether this is the first phoneme in a word. +

    +

    isWordEnd +
    True if this is the final phoneme in a word. +

    +

    isFinalVowel +
    True if this is the last vowel in a word. +

    +

    isAfterStress +
    True if this phoneme is after the stressed vowel in a word. +

    +

    isVoiced +
    True if this phoneme is a vowel or a voiced consonant. +

    +

    isDiminished +
    True if the syllable stress is "diminished" +

    +

    isUnstressed +
    True if the syllable stress is "diminished" or "unstressed" +

    +

    isNotStressed +
    True if the syllable stress is not "primary stress". +

    +

    isStressed +
    True if the syllable stress is "primary stress". +

    +

    isMaxStress +
    True if this is the highest stressed syllable in the word. +

    +

    +
    + +
    +
+

 


Sound Specifications

There are three ways to produce sounds:
    -
  • Playing a WAV file. This is used for unvoiced consonants such as [p] [t] [s]. -
  • Generating a wave from a sequence of formant parameters. This is used for vowels and also for sonorants such as [l] [j] [n]. -
  • A mixture of these. A stored WAV file is mixed with a wave generated from formant parameters. This is used for voiced stops and fricatives such as [b] [g] [v] [z]. +
  • Playing a WAV file, by using a WAV() instruction. This is used for unvoiced consonants such as [p] [t] [s]. +
  • Generating a wave from a sequence of formant parameters, by using a FMT() instruction.This is used for vowels and also for sonorants such as [l] [j] [n]. +
  • A mixture of these. A stored WAV file is mixed with a wave generated from formant parameters. Use a FMT() instruction followed by addWav(). This is used for voiced stops and fricatives such as [b] [g] [v] [z].
-A <sound spec> in the phoneme table can refer to a WAV file, a formant sequence, or a mixture of both. It can also include a numeric value to adjust the length of the sound.

 


Vowel Transitions

These specify how a consonant affects an adjacent vowel. A consonant may cause a transition in the vowel's formants as the mouth changes shape between the consonant and the vowel. The following attributes may be specified. Note that the maximum rate of change of formant frequencies is limited by the speak program.

diff --git a/espeak-data/af_dict b/espeak-data/af_dict index 7819c9fe0285f04ae79a09fa08034664e5b6554e..738e25492cd0992f33ae70dc299f88ef84c4c0a4 100644 GIT binary patch literal 79205 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�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

|v%`BnU~QXcT57F>8p-OR?{<<%Fu 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 literal 74925 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 P?xe&~_g`#0-1z?h7SR-S diff --git a/espeak-data/ca_dict b/espeak-data/ca_dict index b9a4ea43a1122262605d076aaeb91b73ab06974c..90fb0e0db646ca75cc830464a5596680a8359d50 100644 GIT binary patch literal 4212 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 PE_VpJ>vHgvIFsprOXRF9 diff --git a/espeak-data/config b/espeak-data/config deleted file mode 100755 index be1b624..0000000 --- a/espeak-data/config +++ /dev/null @@ -1,9 +0,0 @@ -//pa_device 7 - -// play a sound for punctuation, rather than speak its name -//soundicon _( /usr/share/sounds/sound-icons/left-round-bracket -//soundicon _) /usr/share/sounds/sound-icons/right-round-bracket -//soundicon _[ /usr/share/sounds/sound-icons/left-square-bracket -//soundicon _] /usr/share/sounds/sound-icons/right-square-bracket -//soundicon _{ /usr/share/sounds/sound-icons/left-brace -//soundicon _} /usr/share/sounds/sound-icons/right-brace diff --git a/espeak-data/cs_dict b/espeak-data/cs_dict index 3391b98b2ad29407f5caff53b026bb81256c917a..f139108862ef6ab6fc06eb0e442fbeef96a88cf7 100644 GIT binary patch literal 7798 zcmZu$-ESLLcE6mVhLmD`rOg71^#dC(MY1V3wxe*BO{LT_{3SS|^=2S#**n8K8mmtpz%O6ccc@n5anmlAo3&3 zVB}yGWr}GK=~XNVJz64`ik)tp&TprUn!O-I=_F9&e1>L4$;e`Rjhjn_zuIx{J$1J? z;+pu05DSHC_nyX&bPcnMh3Z-(3w6DkVQT&>r|+m#J)Hl_&bnyazfxGUTWc$A5P?o{9|~=`&6qU7M>|Go)nd6os(sC*Fn=KTC$ArZ=AEydemZ?g zz0%2kq5^n{KUn|9=j)r6+jNI@+WYS}b*<2@J!Y@ME5rM+%^e&ep? zw&M_k1(}Maxi6s>^SRkN=d(g|A92@iY}uf+HxpXmgj{vEP|Xz-cU=8|rh50d*9TAZ zyqGw9_phS8zmAzwVNk*c zw{!?Kt1Fn)x`nQ6q;xXyyEEU?7z8==??cuT0y!G951S?&e?;PF0uGa8_bJ!{Cu~`E ztw93kU+E|Fb#YSEZ=+||RJ0Tx)t339^sIMCpbAV+%*u-BD2UyhY-KG|Ji z!bQvBG?eEc=-?zCu>j|kmZ6dL-E*dhg~{pJDaFF2&pJ+ZfWYm>y!6rxH^E_$3yC~( z==7sJY%n~$V0^_?iQ~3w+Rc*`iJP9!&YS;x^k0V!q=<_T9*BC8mEFtgoVbwhCZ_?( z1-1zb4v@sXZV2mb9b7nxeR$|gm{BYjJGLHL*=BRR%}mI@hkkTlyj$!@=jPVVIaQ#}1dhpH*KfBiYR*24+_>GYS~HE7 z%wB(d&%I|$eGU0w6|UtVt*)m2ptgPK{UG#6>X7Sp0Ey}%O{vymIcT6@@TwhUGs=qM;dt)D;63Ac1R&DC1Jy)5jc zMxAv$eU33iymT`52IBwXd&lhDblDOZg4u6ACh^(q%X6LUpWm8gSu)Zp4_u^EICX_b z&hsq>W+UgBoJRPA2|xR+?Y1^EO+IYfuOTEiOWM=yx2)LfwJ`&20W*P0bv4)p!sL9j&S%R%fc!b zp-#wi`m{TovGJIJaW^7$1Ac%f;YqxIG9e}^TD0Y%`uxGioR{Cc~ zKPM96FN^&&jb&QZRgHsU?-w6_Sm9YDl5{9nA(w&eN4!47@b!yh z6UPP7UH|;t9~j{Ng~vbu7+imQa`IMGtQI@I*K1mcp=z<;xQvhsnm=#A1&->5mcHXQ zzrW-PW@Nmhn>BKxcxNt-MoO<8+)oO1gHDo=~n@jhSQen^G>k~!#)YdGcdK+h>w z%UPIusjs?rz3Nuq|Ngr2v+46;mgWh#{A{Rjtd!p?c6xe<(BG@YALA6F3mcYM#{+~9 zh|W&spe*K%$-mbc2(*$h{q-GE1dZq0tPwi%Uj>ubNg9P z^=vA}%-qrBw;zaijPL%tUG1;Y2H5C@eo8D}&FCN<$o@!VlmEG+n|w1Y8IwQshfMyP zyCgpr{C>6o!^Gy4?^>(I+3&1Tdx68MMz@=TgIXls!4Dn zEc|OIIkaGm$u~331jzYk6u&sgX_M(2eFJ0gqcJ@vq6-whvT^q2(WMN}G3!$GLwI*s0lTS-aZE*zpTS=cij) zGsUG2FBGHG*iCn`Yc(79=%;i|zG8IhG=wJxZ8m+LxO%mG5=Xc;mBoAWw)DLu^#*d& zZX%_-AOp+URiB#8R$Rvufb<7YG4MD1ULo^!a124T@-uJ)!sm?+A4G^fqcc0q04<|) zy>9g>STQ_1b$B>GaENo{XyS}>Yn}W7Iy$qEsR=cmPjMC3TlDe~%SPuHd>hT5BBULk zy1Wb=@&lK({w%B7ySxbZjOk1NA*ONY=xw0dIu3E0ghu2zjQ=ejGkb*gw_oX)EJPPs zeC#B=sq&uqkTLs~9zU5=x z@!1;=Fznb(kiPKPRRQp1bpGYi!kJFiaqM`j0OynT4lXgxT$x$+28TiZz=J&VW|#$a zy9L3V{ui8@mJBDLTq0~5kF3cT8 zdqv$WdU&tI)9Py-z z4|qlo3~cOyz?b0eM=|I_S{_OR`-IX-Xha4?7ecUzCZmcGCK!l3&E0|F(o_J_D1{DM zc1b`j2N=e?=Hd7(GuI`vQs>p@$+8h86~39iv1)0dYd@ zH2*`M7eI8jMX=D@4(3gY@MU0uN0_K$0J7hI{NwoM$iYu)2(Mv1DSB+_`M+K}04|~MI z*%RZ`*tP|zH z(%q0|bl(XNiKix*rPv}>P!)(GS>WD67SP5hK}E1Y;jt02AfgH0^w7b?s|mz-HPLA$ zho1zN2L23rj5MGuM;Q1R<7{7~UcqzWS72v=HxRH=cWW7XMZgSgK<*OMaPed$009+q zgZ$QaUQb9SIVK^yQOs2q!O|YE#P%F=`Fu*%ew4DZN3 z17p&-0Im;!(MXWP3^pg^2KfS1v?P!kIFOKo;Eaj~d&+mo0zssCNuGv);+*Q$1nvNS zb55wHw)sSh`P-)J_9tj!}iczrr^B}WH<%rE11tb(= z21Jo&C8GoC#B8A$fl9#`BPGSi-B4L`epbT@QR#@bNT`_@0pTH`fKF_ZFi`} z63+3VXJkM#1sX?O^#>6b;Cf`FplHzzsfb)(kmzx)r*;av7V`{i-lc%_&rytaz$PUy zIda&Ae9G}&oT2hz0tLNk2)P~w~393iCv zjI=yCh0>yM2q&U?In7J#@^VV(e>oizv(pLo6ouE5p+a!ugf~;F|3jFX>Q};~(*`-l zjH&*;Fo#tCL74rF8s7+WMD@2h0f29Aqd)z%D4KVKQCYo_}%|;vX|agp^`#4zFzq ziQl=+%_qA!?@N}$c~1IfjS`qIGpZt39wlW8covn?xK9+2HK>%aAqiB87$CiHQNcZA zfH)FbNzU!HYuZNYj1Yfj&E8oNl2(UiO^Z}xv#efS`V>FLMZM4??kR@u0e5}#3t>`1 z?vgfDXtOmlig#7uP`E0JXK&0~;_MAOfhu^WXn5on_!B>Mh%v@OQ5>5QHQ}m~rNm)j z0AIuXnRzJojUU5|CCe4&0|7fdfSpQKkG8}e$h?x@&!h4%gPyfLYjtagNxzz zg+dAIz$~G;E_(g6uzK613%cnF4@=#3S7cm+mTN5{t}`L2wz2KLz}k{Ez&158KnvmV zV+i;@2AaZ$yOhSkgkSuxVKNYAi$rd1XyG~7T1RHfUatum;u%1Mc)#jfD?%j+2DsmL zZ((JK^k9N#9S7~XEn&9}ac(y?GB-xBWzYPCu8}1x5@v=?RAFdl>upht3Mue65?Mj_ zklTuxIToWrH}pmoP-6h_i;dM=6%ufbZTd?L)^-F16%0jctze`fAUw=v@()lYD**_V z;dRYjf*MX5T+fSUTO`aZ!C@RrN15%lCvD-#7_HiqHG%7v1K{9aodEB?=ceYK`+y=L z#p3E)EmP)_(vc2*5xFy*l<@n#*$4elm^&mgei1-#L_IlF=FXD`=pG0Y|G-5z790uY zyqzong58}OfSO5S3 literal 7798 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 diff --git a/espeak-data/cy_dict b/espeak-data/cy_dict index 13a768030857f887f7197f7363f616ba5f53c38a..8b86082436e449f52945bf9d89e34551bf1e90d0 100644 GIT binary patch delta 1714 zcmZuyO-~zF6utBA@H{q#ii%31A*~z7cv8s~)Zl~#mJn49$d1L1$dyK8d+ZsQ8G}DC zP8Osfq%Mo*4>VO5RaK=@)2eD&T3JO^yU7n=-BtfV@0&LuMe0Z%-;Z zDD!$lw&se{lor4{O2;$#UJqv99RL!{Cy~p$U{f166LV&p%^4Mj(xOAJ>Gs2=-Wfx+`rx_WjQlUKSYsbxe-2oKJskK*Cr|0 z@q(+^T*ao8cHSK|M?T%EI5WKjs}}^G>@L~j@{)N#CJ~(C_MmNBJ@Y6@*O8xfte!0E zQ$9mV%my{B%S4$( zVaSr$g&3~`u7Q$bDO_{NZ2)Fr=qoAAwhN%ziiMBCRvh{az{Z+{HnQZ4nnsOknt(+a zFFMe~GBjnbOgT$3Y5!cY`k`-#a;? ziao$}dBD0&?!M3=WRVrF3z!2J4RB4NjZxQSvO!VF)gY7yScu{Ua(zG@+PE5p$d=Gm z%5@~QmY~LIRVsSnlEi|JLA8*SA=m-nf-GO46_7Ym_ARlhLqTzX*}Mc~^J4HWV48p? zy~1W@+Kbw!Dcb|Af+M8aiK11C_5m}}%`Ay7mFwkJC^?WBwYf(B5n4G(+qzM7FL<5I zuM7!zBo-I;+!pMHpek+5i#?E)U~@@qi>jN-{czqPjPNPJk7<}{#EFa;9{~x?Qa(;e z1E)gChu2HJp%AvTfyI*~;$FB|MjLO^hZ^>P_3iM2364(yAIT<<_Q{28zspk7&z_x< zXrEyC+p f#y^p9Nlae-2Csg_eHj0ME{uOc560gj?Fjw@m8CIu delta 1718 zcmZuxU27v{6h8Bw>6=NKcBxdbyR8|QOuM~U=_IMUvS72cNH3JvD0qPfN{B8ZFciREhl39v@=*&f`9q#i`u>Wng~I9 ztl@iRXRW1`gv-w=jWU>wU!s|8-ua>18)S1IzIAq(esoP8)zyTTLn#50NI2RkL+-HvLb;LSIMWqqf} zn?{h4=RTm5{uecc<-$&$Tg6OGe+@u~FH@qP717{WzN_qJcr$dqma|HR*Tc5KU-EQ9 zTKUeStL? zeS;Q^zC#=2(XUvCtIHQK`Vkv&_1h_8p6(8C_|SsD+iW)E-$B$cVS;*z@$ zSb)AKsaQD3f=vWvTQYGUY^hFfFM?VHvPF%xOEp!%ViYgBP{l2%M!7A@nGq!m*hEN) z^`{;aqo!aKY^BDAeHaj*qma*l3Tl9lpoW`qBeJ8zHYsNT8qjyp$V{q4Qv7N$&Y-jn zXhyCn)TjfSdW>@s0h=5liA+L@1A*-U+qWV3Z2XPj@6?;aW2$HXu0;o|IpiJ)EyC^v z;W~gSIJgH+Md-6vyY5ZV5M}KV$_30uMOKzv4`>4{oR33fN6>l7`4P2-pvFUPEs|w% z_%X;PK8GGbnt=JJH1EUJnbIm}5peiiBR(X q^-ynUge@Il$utev3kS=pz^e4p=5>H|?Qp>a$78@JQIjV=B;Y@moizvm diff --git a/espeak-data/da_dict b/espeak-data/da_dict index 75ccbd670a1a235753918eea757e8a6171d57001..8d0a82b379abcb0dfa7f70759ff3881da4a36c8a 100644 GIT binary patch literal 8646 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 diff --git a/espeak-data/de_dict b/espeak-data/de_dict index 988f4c31b1ae801a202fffa16ac143d5fbac0ce3..39b0cdf91fc86e968704c5825e472e1d3a5dbcfd 100644 GIT binary patch literal 19947 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%0DiqWyf$(-yOue;?Sus&333A`TMDs6T(I zOx7j3#l}NW!h7Xht(TC8c#CwPFz{{C zIWpi3suezMzof06H#t{(`CBFX>XLXUp~L|AiOQcp0ej;6NURTCdwi;Th)F>}99I{m z}>1NVu~8PEEuauiSeR1{1vYfzPJj?uPD2Zj3t zHLQENs&0OFldNvYUNFlp>=uovuT*0+(qCeAVPOr5|0u$EB#7N7Brj|s{!(aO6`JET z*uCSD=lsoSSvvpZ6u?6=o;+zK`Iqh!B}(lwV0o_T7()Set1KvBo0z>)#++k8#Kp?x za!J3z&=_sBcQ!=7Q3O5s1?UohtmIdNW-9$N0M$B|7u&Fk2alTyT3xAmX7 zXa*W?lccowEzf8xJC(|s)&!i|>@9+j-|IG>QwI2+ zjF-Pn#C5zbCdMell37($x9B;f*Q}^9>AHxonR!`J;Rf>SkisC*tOSUE680NR`vP!qE73P7C!AAs@m`zFCcNZl}GFI+F~?tT~=Pq9A# z@e4FgN)W#3nRMkN5e%Pm)fJxWCEKL4+mwf;D5F&8rRmvEm6?{G_b-*RSAqq5&2e1T z!yD<97w-M)KW_kpDe9;=s?Wr%JRq53;(8lQ$EiwiPQm5^bpPDGyw7ohDrN8{jXJm6 zQgu1TRVN4Pu4wr_>47>s@FtPnfGR!k29X3o`i3OL7ovEb{i%9E7OCBiTaAZe9PGEC zj#DXk1{(tdss3s3D@(#q?OdqaXRanf!8oGif7bATT!;xY2B2w0;F%#x}p}~vR!`Hcz9Hin)wj#~%9#mU^nU%k3L(fX zby+QHOuRm~fCYk7Z*)tMjTi>{u%3C6N&TgJGWhVsn{aGU22uy_S$q1w8$3J$APPrP z5zcgCy&Ai#|3AR~&n3($_eWqUeeL6(=&M|tEI+Yx$J@*x54~FO%ARJdIebaR*kXyDe-W1!<^beMT84bJDl-lvs0-Nwn3^AHzuToi(eEWvXKBP(uPW4r|Hnn6`@fxtL;IDrFk^v9|(ykS& zs}skd2HsLw<9Q0=tq&gRKNMQ?uLTBW0WA{64%>tiVAOWNK_0ARB`nVNJ*`^0+B@ff zvFtbNX6c&iX?6IGsm5q8FZVeBhv&KG!zXv?Bwg(cDz>S{{tOy>2|Oz{d}i-PrAGIR zvAiBBafOz|YH0W>os^b(as;W84yWPY$`bJ`d0;h`pJ`Xyj$6koaYLl^c~reu?h<#Z z%>pF3dJ)$|W%pNI;xDm{;#7NT%h(V*^W-j*W5NVJ&D7~w)?(G{uSDm7!9e~~l}30$ z25LV>sLQ;B((|vByFjZj9PYB{p}zKEhCq#X^IN6^D0lPQ$o!$RO}dW%5ba;NM`Qk* q8T0pliC4e*8-V>k{H^;_^ACRopuPEP_7!h_%a+;A|8cL)n)!cIl9&Sk literal 19322 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%0Dt9$t5yxR>mj5Xu^ob@t=AOeL*KD%9!}-_x z#^#teZQnwulFS>@OCeQR=J#k-n)y9im1lmJ21<~CRo~129B6>uR-tHO4f71ELXoH2 z?vfpS31D!_fY#w-6|+V~gRs>vwUe~EPjT(CQN@4O0gba6Nt=xeNk<=kDg?!6Hq{Ha z@{kSOntVc?9qxaQJw)2l-wQ3G z#}kO1VDJ*LCSu@in5C$e6TtD;?8E1mr1-_jkt}2@9vFhz=Sa%PPkmHU$ z6NBcM4L}0O*L-VYHbZpIj2f`Qw@jb}Zps z4$7PVdV(<{!V_>yB-r5$gedrh|3}0ed#ieRMRMJwK;`T6`(Rm!l03ajMN0p#OIaq#{R`g>bjtOq1r*+imv>=wkQk1iaJ`4_d|~3PR&kTxQNdv3K4*cIChB z0iWIFZC`3=&#Ss^mbp*_P-*aQ255PGROuz5_&M-X{NXZ6H5t_N5$>GH-s_8*=DV%p+QK zt<`#NkG&y3Y~s!J5l7!J>}$R&(KmY0BIhY7Q_JuRNcnp@0NCB=fK>qqc1Ag3WXH(4 zl!@|W9o~Ffw#%{NY#>w;c&%?p8_ABuI}f6Y2o5o0xM8W>2^PPDmJ5%vH+PdL zVlztmW^u}r0fL-&FC{$O!b7U3hU9_YMRjY#j*mEv=aDuB+~@H_;g%>yZ^Sjs_0* NL?!MSMLV|D{{zVtAiV$p diff --git a/espeak-data/el_dict b/espeak-data/el_dict index a6ab63dee345b5b03a6e34389fc05dffee621a24..cd353a1ac48cec8395b8f61fdf975141f1062c5b 100644 GIT binary patch literal 4585 zcmbVPYfl@;8XoVg7Q!thQ7auOAE=PAD}^fD95`v{2|lMW$i%92DmnCnrPXS!ev8zq zpSc)9sEMln4g#f#O8@)ism`Ar<)M#lm^9!UyGjnlnd&GFd>loytbzs z`kC=Fyifa%NC*w@!&L{)whfrXiVzkmp}-+mfb0SU@F$ol6{4D1pLra_GeGqjiP<2^ zhfyxf)(b&A8P|pQ2ibFEm*Yxm1-3>5bw-D|NFYe_1IA;Qo3yhlsZm%j-l5q5zW&}1 z5x;@+7y7Aw#)z*sRZDLo;EsBwjtOV5!4#Bk{k7eJ1~9i_#eAIN1LZI^F1a2c(E^`d zTuYpT0TKYzrQSuBx!zB^(QlQE#mm0M%hJtXO=Z%0Lwm4$gz^u*hZg?N)TO$B|D#)k zwMlQVXMR|vot8t_^WSFz5Yt4^-57-U^tUdP&5>Auy;rJZ`!U7F7VH=ySkvOx z%R+G~f^G_n7>2KEIWSP*q=0}bJrP&7ZY$a$C&UP%ss?ecUWqNTVl1rjMbX7=zz~;qpLsFND(PGl!2)d7z zS4Y^+C{o6NffqNqms zzTLip8MpnU5f5BiJe=eF1TZ_t9pRe0uaz{H{=VVY?yS$UFYOpcu|FkiE;WML0@ul& zc^uCKVL39D-~`(-lPGD^f=V1NoG4f9Q4Dl*!W0%mam8}N6uw-2)HTX#ft2vo{Y>^* z3KM+tnB?aE;Oy)(VP;6yR6B^XOubbyv)3KR*aYg>$0`o9eBD-~>pS(v8QH=>Z<;VB zhCrO*xCa^KpjwIiFfRtb1smtV1aiP;1_f-NjhOnhI0E%{A&w>?Pus}0n@v_Q;LiETFr&oKrv^wOu zs*ereE5^>a=Bd|@OdpJTsuegRM)FlTnkIILyxa(F@@ijZqv;?H$^2uDdgvZkR5Zb` z*At+`DgDz{?Y6x!0_gAW=W)zSRBp_46fdf{Z(yM=XmifYXOlYhE{D`5Mvxt}*Ss2z zAzt&Kb&-$Zy~cwJI$)d^VpO1Zrx4@#Ktmu6Z>PgTIb=(^OHc_Y@8WO>Y{X}|a4IBn z6pbFK)3L>brG+Wj$wnqOZ`PTH5wA9H4+iL)ke4uTBM`8$hy&$Mu7x;SPH`P+Vtkk% zFDJMJZK;!60yimKVa!3{RzG-Qw{))xW?L~c?vjN4m6!tTu=E89Hz#hi4;K@NqC8G~&z2i##n0_imer~Nc1yb(#b_+FVL2$5`V6Hj|%qYjrP@N>Bz`*6d zLW4pCH&&P^!TX%x%n=|@NaBI);33Ft3%x7U3qj7Y(1&6m$jsvHjjzZ6BS;_OwT5LG zL_&s;<_Z^fCHWm0317A46QK{NJ14M(q>yVQ=7sOwSdsJe-SNgBz^Q#Ys%plUTmvRP^jQg#90L0w^c+CdBaC z?^|E|h;?WnLS$n?y%V}2mudTJ*nY>bE5gElMDD*#3nH25#~+eKG*yyy*6as(ZOb2B zC$ft+VQ0#kF}PQRkIKlgdm^)|PZggn^K9dJXgG(4bEv`b?>-VRg#QCr4ZzA;Sj$j+Etek&y~Aknl0VbtH!j{@Be6G7Yb-s4 zg*{kUB~h}?@fb<_f15*oPeZG)y3cgEwBI*rUlT~}Kp;NP+>}BcVHODWf_uzY$1(sS zjE&z>6zsmH#9^SHW90}{2%bP3c)=%yqBKE$DcwPP+q*99;rY2-57!D|B^!f=_yKp! IFJeIa4^6~bH2?qr literal 4585 zcmbVPTWcFf6dvy^>$?-%q)QFKt{N+fe2M?T%wOvF&FpG-Q#Yk`U^VB=Ip4X?nTc?PxH~P(-}JufsS~}c zy6Un<&g?67thZEGZ|ROXO!gWQ2WUHy^~-#Ab`y^eqf>Qo)mov{v6P`mx_xT78T+y{zTbg@7=OpR+%50L1APb*PN zTz~-*4yY@=jVyCNNxRYS)ePcQf_PP%|IJh;t2eO&+#{5K>;rFM|4dz}OV~fUO}Ex* z4S41cyTs{5-VN<1OgO|e(djq_A#VL1Gua%e4d9)sf$iI@Cuquby#d>s*X1*9g&h(5 z_dzhD9fT5Z#+e<;r*k)CrV(x&Ao{M}&vQ`SD3J(<2y-5VY`^xhQB;fNUd!+Dgd!mt>5u+w7>Tw2r&)4B92TQ(2$vh z)hewHr6^FUd+kVoKsROUK{I%~#Diyio0F|dwG==vQS(p$od4qL9Xm$otZ8v;WwBZg zpqueUOu|;P?ip8L5bMI%nS+3<@|6;e*%@M5?jsb5utyJ>?{=ss3n9pN~m z5S+q1bo3Z-i%moxC63z{rb^am!bKb+%S!ZAC?BO+?nwQ#}n z>w&2RC)k#mL}^UxRO)i!M7idSVxXHFCV$r#*KDUCr}l6Z&hhUkHL<{C=5ayRZYP6s zIGa-H#v#^vm?cZFcyG)d*HI^9%%Dl85uDyPg9^EgFF*`vWJ0wV8X~vfH=c- z4>G7gwGp^}L5w{G8}~sDIbbt`f^VNpnfmlN0`+D-42qB^HnJVfCM%e+Cq^B;vx1|H z-`zF*jybwh@>h6r)D<2jVWrqEAS6d`dttc|=15ICdJ_j`l}{F|x8gNG*2^LKjDFXM zxv|L0d)Cpf+Icrv9mYTJ=tDQci*o|rfg4$jd9eFyVt2yP`=Qrnl415GjsPHy&wFsq z1Qt~?TeM-wHyw2nx&Vmr!ARF-#@kfK=-PQly>ZsjU7}7nQPpQgu?lfA z#vS$cndyURNA~k zxh?RL!V|_^6vVvl52q!5Dwt!%%tVhQoUharV25QNNO(E%p#6O#WyiebIM4odFqtvf zH*+AmEJz@|=Hj$VbHf{vl!^bgv}V%dzYl_g#RPNRO<+bjUWV!<9R&t1|0^^mgg3X$ zLamExkav>R5WAk@^d{RFP{0_vIGCEaXI5(s{DGTzc|0wS_N+D>7@5@l=Utv>q zfeV9=@Z-!bW3>Wvv@LyjD7mrC4e|$)F7@RLq4%l#r@*n5LOvq#M!3%0viywk4xHI1 z2-JQfs&6Q}gWQlJ@)LpCD?bPBn~~Wk^7C(nI>Umr4xs1IIR|Ji31;Er!CXM&0vdUt*GF>lF;OnTyOi)Nr`NH8 zpFL!=fQ9`}F3`C|4e|3nF?IJNrgTRx5&J!`-!trnux>vi_sX;&l8MfIo-U%PlEeYn zmd|0RFVXSrM7@qKS_e+q!q9KMAzV~O&Q!(7w(cr^d*<86_t0<-4d+mU;QqSq<4kGIvd;}?d-rd@*2yJS@vQI0 zdj^5-Q9H06EEy~qn1;uJC=2CYvNwT z+S8bpwdY|z^?JS8x#z|eJ7|Zk+%s#}PW(aWPMq+lUTRpy+|xAU)3n~U_^h9${>1A% zo>zQpP+Xs8X|6h~ScT&5X6#OIWdZl-4XLT;OKXC`%WReA) z#`qv;l$tt`9}Z^iuznEog|0tvV=qlTF27`#8HJ6HlJqV8E1zFWQU;>J*>hRgi!SPI zdv2B1lFXSqCF?Bl_IB)H7RT<)y(rr}=*{O*8V&DR`L#5v%&qT#>*XIiZ<;-&db?A$ z7uIjNVQ;S=M|*eKy;d0(Dg$fpEM09^O1pL|vv$tTy}e!itkhZyt+F<^w8>X@Y&RWx zVKREsub*09-@c0Cagw^JABFq&i<(o(EzcN7|7*YaN&4!O;>JbhCd1nP^vwF&b~g&9 zUh3=TwP~|js@S1^&OrD4URX=pVVhCd`+Ct2Im={XP88OiN~vL+6O}d?#Lyj=Gak>z zN9izcucgB$mSq)QB-#1I54^*j&2H2kdo!;#t=%x!&fQ5Adb3ukv0(1GveG+<&%pTRPw+hoZnz{o%cdO-TwRFVZc8LSBQ%9(d4)o0K+5>mu zUeAt3jd9K41Y4hUqi_%%?AljunlMn)3J=%1x7nRUi8qig%N3TU*M+oAqUXoVeb- z-CQ?~C+w>*wHua||1@IJhl7KAzvK2Uy*Tv~kIPF3?|q~63p>W`-C{0f3@Y4yi5pqVrn!r% zRovN3hD`hD>TJ|lSda2P%caMY^ulJ<&f3OS?rg?c!aSOkFC3q%h+;P!c++yfeqh-j zUHbRF#Z-$UOmx>PFPhwrWBr4j*kkQ6I6d>s%R#Nw46rh0QSq}ZxrYhKlHA3qmA}8m z%xCnw9`pX#{@h`1Vgqvyt72y(_Rc+?Q!8j#?>yXMxH*5OlS38#9e_}R;S2L;wO z4>nBN{f-9X-qz|Ox}G^bqqDOSMogdjV*jFUjY_Y!SPwgPGQ|>4oazlzgiTKDrd~N~ zEi2X=EKaZM^;Q=dIQ`Yw?AmD@joh$OUa&TK*76u$?A+k|w(gYO(V6uPtF+#A!?hYW zvzIUOP+qvl^OR9|vN5721 zC~nKM=I>MsvLYu;oY-S+C7R1Dty3oRW96ou@keg#rdcwomN4g)5+kv@ znRxC*^DS#U*Zk|dmr?BVtL5=dxnE&V&ztyNj?)er{Tc_d?(>`z3_?_1oZ3k_T=3*s zegk(9HKy+#m5vtHFO~3M9_|Vk%ujJ-eOzXF5@(+0+$@bQIi@iRJ$LFQX=~mtRqcQSzqK6&p?~|EX|ryJPN<(1H-@ao z$i>4j6Mofcn0a=8Yl5BeVjoabf1eSsN*H$EwTI1y%t2`b3myAs&&qaYZLPaWGSWP- zjp6Z}X#*^S{aDB2ttD0&_vBp%Q4|L?r}?q4T)?Ho@Q6db@RF&U@~Ke%J!Z)tS%fm77%dr>uKGQ?EK~GcO__WjyWl7&7b# z=n&KS_+z#NX@+2$caK7@)a_kyarUUa4?N@K*uB_GT%LAzTH<(aFk3c5KETxJn-}%c zzWt2tBx2mtnNxC}SNMFZn@!InH}2IgS|uh}@pBozxa&>R_sr_iFtU2;2VmH{_B5LC zOsk6q&-5SVcYX{g>0zvS>G=t8pdFrq z1|AirOq?i*ro&mM-9ti6jufDMQymV}ppPZRbAHMo1xB86V;oHsVd1mxjD1jRr#Mn%Z z$}E7dZO1N_%I&89rB`0I`wM$itAxk8vq=y)S0DQoxQ9L1db>`xzkq zje^{wH_1ls&>c1Uc4Ph+ziELthMwD-c!ycr#~gasUN=iUR!F~QRu5Jc2Q$V6)aSJx zrneV?A>>xt(;6OYx8C1&wZpxmtcX$h)jPW@O5dt0^F2qdN=Ytaj04 zRo~w_2iOk*ORaKn!mSC6W>WxcoF0@mFm_&84o}&?V;l7A0erbDW}-Ws_-=dI$het% zThqxb04ofujj&mI!so0#CVq2i=Ka@-A>mxu#V)fT>-g_?G0ulQW_kbyNRsBXY-2$l z|HkSQK5)UN<(<{6fAnha zn4Jf!otw{fkiGj@#wgtnPuljhGHzWQNM^~*6tarA|A0SuTJ)dCRm#sz#(=Jo# zUHX$=E=Q;Z`{W;(8D2)94W0-iH5$sxZ@(u}9;ROY>kHF&-GSlcDsOo%ZH z>pg7Q_GjFK&&5R8q|I}GKF1KYLi{zK<^0}ccGCutKiuMZ^fHE?$I*T~2jjf+;BW2I zeS&ZzOlhw&+`n#Hhi`3P4Lxsi?#6L+wQpyQLMt~a8|Vm}^>LD{Mj#*)iWQp2yA1^@ zX5%LSMoce2N~q!-iU3^EZ-lLqj19wi39i6IAD7B9(L0-A#F?0Pi~VO@x5uComRDHR zZg{OPj@~`B^-VlADBO2~=8Z< z9tO!BWN-qpJ37i5_Oo({hoSWqWeF%}i$Od0nAfeORl-_etp2MO@M7h>cWnS>;-%Gc z<^;OU2-NE*<0)ZeA1I^PD~!Og^*M9L{@9%o+nCUDN@!VS)of_-PFTBu*X=u4t&w#$ zarf@tamTyh6zfco#oM#*xJzp%_o4fCDK`wJeb+8Es~x#H;@Oml?SkN!+j*-noJ}Jh zCl~MDR9Pmt}If&Y79-|0Gh zAB+zKO;{S$QMu%R3+`*S_50wZqw=_eedo}$PF(Xb4x&uzTVS;sHq?}8Bm$<1LI$+*9bD1&ZsC@K{W7>E6 z0XM#**blQ;1Hty#IXKW^g|Pf zs^rjabG$k@97}&d_&Mqv5tD4^qKVgAGy-_DO%9}g03ukr3P%{%I09H0lfvDx!U{Pr z2;87q(&~xYMhT(36s+Bi-7&Vz0|Pbjx+6xF zFJt`~(Da@Ao40@A0V=}11^Z4Ih%MW6yDs#ZH?ED^CE$>ryvvi10L- z9-evNg|YYkw2omQ<`Kx##Sof?X5M7F_PYvw_-|`mhZnF0J2tBXj`gU#1S@RkSXoi6 zku9t@)>Cg%$pwwwF_guzb>?3BmwPg1FfZlc)L?B$#0 zIm=ehdbo~@vCALq<`&02>kNV*-h1QKzHy6?=FC0EzV2;lFHWdr6TpKyszM#xxzLNk zdPZb#-3wUU7+yTcTuRu2A&08!s1OvQG<6mt#p)65#^|5yv$y5<1Rz`1A|vS257 zHFVS5{spV7SSa0YO|iTM1sJcs%L#Wk1`$`1J6eb}%YVHXdRKkLMX+Q&tSF&UyD?_) z?rj3{pzPdg3IQ%^=KdBo3ilYh5C(FNxW+)NTO2ko8^=9B-A0;C{3%pUBdl_p_=#Do z-{1xx{WwsWAg?a0 zgc*|A)x%3`i(^|@)`t6Vu}+YuQ3$ACV3rwMuD9z3Q|@X~8#VEMGCvdVS~i1& z?ff{%CaFJVj~7FE4zqKSAM+LgKi?dB;PcESz~#CC5MgegX;&;f$iK4SFZqo(^4>L% zS3o2p|V%77ql4#x$X62=$%2i<-f^AvevPx6Ss0*v9mFO z8jsO|R1%zDF-7?D6;Z@d-zvyK7y>Dkn{W)f#s^FtNY$zG0i#A0*KIujv;=0>F_T7T zTq0=oE4$2|9kVCL+_c^<cBYd9E^?8OGor}h zHGpF^DD(!tkXdkdQ{Ti5>Q*|8+Rg^gDIAQO7w=lfMTm7DlO8s1m{am!J#R$V^L}jQ zNe-QRvncGf!pBoq;BiqdiILN&J_7$DG)IlI{=V>wavA& z7y#IzS5uAv#|=tU$l!915)2-Jv6PFkR*dPS%s^~YnklGWgJKbK$b$KISkX(t!S=}lKouk>;YuU9N+ zC0voJvhq2m@YNY!4|bCXcUJyTSg*7Z_$;R;E3C%~Caz{KgahL0i>54?MkpCK6zyq& z00;@9&X#ybKrhoB>z=^fW|(-#8rHR; z0qB6Rrr8wM6i%9To9RX_ZoT*I2KS*gHujxbh6x!*+(=wooDq(a=U|Q`p617?<_6OR zIx%Ff=<(m(gmp|XSMH+WV6Vt!C2+udczzcGbmk6u&g9;HJMm>&T--*MyayilL1(k- zbI@wYVwrf5oB<5ygDuY7%?J?OwDx$|$WD1mUBGQXR)VM06x_iNi})@t&-y?WSW@5h zF%V>WmZzHV)jq{Y^Zj>}WzipGD2Sd1WDs6$bELv;O3CjgP94m;n|m5`LvkFo zGAoU>uo+-zTyN66srj5|06$J5BZ`m83)0<8wy$k-B{*;F@MLz`Q2Mx3(VFAO_!b=0 zQaNsb9*&%?7Up75&X;btFewnRt1rgpivUQMAwaqQ*%UwI+*DactXtQQ&$HxN z3+#cdBvBlu%5IW7X8Kig%L5iUU(o0F$5}tRCj&E+ef5%R$ker2ZaZ)iA-}3z)WZY$ z72*J}wCDt&G-us3iTikF1kZSUc(>K_<StpYJE3mINY>V>fWgd29x zds?ES7D165+(W(`RqXj!6%>zN?|Utw;38IE?BwtUXMOK#ueg!H@p%{TGJ%B*qi_sz zV|+H4S#H=QH$+SlF=O1;lynlgM>rvDBeCiYzS=VUl!Hg=(s&!YaGo=Z5HEx-wu-0ry>ock?cWX6#*qA$01Q7;S7qr_uRHCn((haZunQV@ytRq?m>YXf85vUtgshDsW3V;o=6)+a2COM#;{D3bC9~ z<+{$uEI28#ckEx2He&rSZ%Fb3W)p&Y->rffPg16T&xft% zIk=JE_cA!F(gsm`k7K+V=l2tF>`)IOX=g8-qeAI4SjTm8D_iT{U=SQ} zR;EkOi<#3sPMYU9SKhgn@P5#$vV7m%?q@M`HI^0Xyf}eon{iWb{KD>ZwR?*RH_Cb- z1T6BsEvbi$)M3%ok)U7WVbmj68p17yUd7TTIR+sR5)2;i$q;h!kXnj@~^J zJbaKh+#ykSyubGBZb1CFOB59ZQ95jn#C6M#kzU8pv1B{^Ccpl){4Ul&LqkSYNlY&; zFYE1(K!qNeVPkRN>_Z~x_c;Tg3`U3>hbWns*@bn(Z1@u#UjsN{hZxR@i`O6w!^Ctw zMHNm!x|KO6rnx6(*EkSNQ?q{tZg@bv4YHUh-j)P~X^f)|wAj-uIOO3BGANM%%I0W4 zu8o_ZeV*nnY-xOjC#nORf%`gYl5jfUJ3)*nH3LUTLwMy8nMW2EGgoNbYlyyJon0w+ zlcXmCm^`~m)|}};eUu7JaKPgkvy?E(V055kXU5!x`hxW|nG&XDqu;Pip5(4Qbd{-c zVQrw1%K7z6Z*WYKj1_NidXfsMJa5sjm?E*SCaNBh zf+4Or7@aEm=Rcry?mTpEWK+q9OZdV+CJ#v1%+&9hsJ=ZnQGH=O3t>ITBZ0MK|DX!U zJ@xtRCQOgE4+4UH4*ue;?Q?P{Zq^l~Y(4(ip5B`I2V0t?CcHQO65CZk(%sWEDB^U^Y#$q~U=bR#&R0%^`r0;RcQ= zAzXL?WM!hbhxa$RJ{Gp$8kX%Lp5H3kDCA~d-1s3%hEJ5oj<74hT$V)*5y3|a)F&=? zMLPRdL`P8Jo}c?kdDOar6y~aXTIzLqI{9FPflb<4g(j>oaoRxPqh7VVi4#P5Lu=Sv!OIUe9 zbJT!Z!{}Xl*T-U)^nCdmK9uhv2~1#$y99bb9c+d%2t>d!2B8^(+#ckONJ#gGiNNY8 z_!5gYX)PrX(QNcXaXiFyngddgbca}oI%{zI1@lm3>O0j}e;yPBjs5YEc_Lsz>Yo%F zX6sUPE3TZ&fSip7M4-u$4QF2@j35PBjt@}$;M_uY?$;+30D_X6Mp`M!k`@^m9hoiA zXIjn>TVg5=6asuIwkFF9eFr;C_Sw1Nc?jqZkgt`O?}KSH8JHNvecl0AMp!u=V(}($ z6}B?_-0wf!ROXCT-Lx;9x-xC#pI_(TzW(ZC^Qls9x7lZ&$n6jH3CMS6!*Dpwi-s8G zy)9#UIB;(N?@Jqh%dHFoV=clJ0HU7#mrM2H1Gp!hL(iq2m$kPS(z+G=3$OxW^bR|ZF|=y zLOsi-d&Sj0c3JPRVBv6L5RxMP1ZVn4kPYson+h_LB^6=v@YPOmT&1jic|DL>*hM7= zzjSxwoC_P|S{aMHoG+q1ME(|m5+HDuQI%lLh(=ksELP_HA!#8n!QgQ8F3Qu}zexef z(3-gXS_!2JvtKDCleG$a)fp03E}Yrr3t8WYxIi#U(gddj@mNB5g_~uc@%6Hj^7leL$LOCovL znzEHIJy=H(-LaEGGdDvp%`x`K6Z?P;M3|0vmWKs->H#hRtJl!;du?wf$vh+%Q z#O40+M?AnOL2z|cS+eSgGB4c(%X_@SYkmBREIg55hJw^Ye`y!J@u%4o384o%U;QDC zAAyoT#V9*{vOc@NEsWojoJ_n8*Fy?p?oV3f(J5>NhS)$YXwY}$8WhTU&GA_v=H$T^ zk=<0nGX(5a<@E>mx1w|M{d{SPR=k01;!&Op>ls-)3|PILlm2cyH}Zc+1!5Z8et$;{z#AbQbJTo)DZL9Tm#qjlEQ$%=+z|^KvVdY zeTLLvWuT{Y#~$CP$(G*Tg!Lep^Xj9@xDf%dp+HEeGVCkh7KQzWV4K3t!pdKg4ZL-i z0Kx)GjiG}*K|z<|y>P!EpVp05g7W2Qs*EsCQaJ;{IauG?=!uexd=4JwTJ}R-3lt-W zB1z9aCgNh2%VuKqN92h#z}_=1{*9cpQfv6NHIXoqrDK(L%w8ia$$!5HJrYaa)2o$- zHGB(~gbxqJL@-QkhRIRpRC|zOYyPoKcV9u;SSv<873{ zy0q3D2HB|okY*s?rO_PgAv`59!uD*R?ZL#ae<%wZe{+&PTQv} zwsq)+4g&1g2FfskgiyU6jCpf>L|~3n!EA{YKX>L;J8gj$Vh;@h`i#f0i^TMB(O#<& zpDvlfF03Yz&ZRd#!XBVb)5K5`49%023FvYH`L*tlU1^%UCqkj$XXB7(32}y|<19c5 z!dG_*)^UGHv(zq6Bp$&+dB^do^#ZI1Oc*jZp5T~`Ojv(}&jjxU9#N=CQ)wVHe_vuvi=PV@g9cEUyh-$Kf{zrhc+jsiW_?*Yc#)wW!Lr^kVd%YH@7j^|6VoG?$E{7+v`97 z=-)p67%8;k>syP4{M?u{#N7|`@QAB(!lbV3D-#x*EQjO?*5OTbQ&TW`TD_6$AWuI* z&@pQ@Ua;7FgwVH}@UMF6UDjz-yJ5k@o%ub17RgO3xwMIW{rN{fVQy&+KzG7FI9ivi z*q?v&ugh~OBuetlzUxfuC^L+s4iWqSsqSyNU6drufpP5xbHMVU9bfH9wa2=@PVnEk z))@|WOcwG@v!_(r1spf5-*Wd>5~I6jckjfr-accV?d{%vtAlDXh`rl2H~K<*6cgNKyE z3wF;4w}kfiaCxBJq{<6`L!LE@CIK?Gd!R7^*I_gpyFVnBG6iFV&tP>$QljW~HVmtj zLy)#rEZo}=%jKOs1NK-dVZs2fb{JkP|LN>fp5c%L19G>}Rq=_6h+y0yQ|;-|w4Mua zRK*SC#ghbeF%@*19D(%@RaIV~;3Rr|A(71$*+K$C;lOJFL1rA%6D+ngX1kk6LYQYg zWME|L3+sIhvLPE$Y`dAjOcpdR1!g!PF+5>szhAqkOgpPZL!j?B$BlU3q~hR$W7nxQ zJ}h%-V10K|&W?~LeQx|ooFS2Z=PMfrg?mUz&)b*!9M?aN_N61r^PYc_R3tEFHCsydD)h(=q;l6yxo)N>O6{ec8qu3CWiq4_|>Y~Q#f}E+B#Zdn33%rEXR)6bDx>`s_%q;9>Csl1Fg!BMT( zF=wP43{isnUj3G%uc!`XaR?yI+F=G^R~d>)bzH$4C?yn~1N+WO$CrF~TT@BI2R5QU z1;D2~l2O0m0FCdb!go7b$b&quB030^-*_1jE1=LVl6ZkAl zJkancJmQDv{s<_Xy)Vj(MaE#D@+DtyXAYT_r*8LqZK@-vF?_5bz`Dmp5Py?Py3Mr|U+u8oCO8M^ zH)C!CT!{?0ku}HM5uq~%w$qn&Rl<*)v~n$o?JimeqHN_?xI**fx^5q`3bVQDUHHNg3It21~9Jyg_A+q=7)aaS2FOo`|z(mQf0ErZ(@bn>Q zQ;Y)&t)L<@x11MxUnOP;QI(g$Vi+k89-ZTZeW)oD0m5CyNbN$eTsnp~5hn`N_G-(z zKD?ioQYTfxAKIKJMr}pn`O?%(;*IntC6jkIo_^=accUlv2d7BEo-kS0xuP|$M%Qv5 z+5*;ix zExAzUeGQ30*2eXb>g}1L1j%2qp|Wbis7N}Ibt*{_VYQ=4uQRNWj$~@@z^x-Gc4Ai` zms&?CPU8fP9sw}XvWg`vCa zKmY8Xs~i{#z0#LqAY#T^R5gXQZmDAu10|P2t(2zK-SwY;{`<&eY?b{;Bm`0zMmcwG z?E%uLpd)-iVP#H5a-Q;eQ-Z29{STDj=O~7gb>nKug(e6jDH~AvAy1m}!v=tgXAt5C z5Fyuzhe?)|)}Ma&-8#0Q!um%Q`1HHKK^UaJAKhMGq98%MFE;ia4u>R@rRyvkX62HF zBuZH@10)>BT1F6)NV2Go+QmM%o3*Vgu4#D05k0@Ewo{I6Enh&{wg3 z(dvdU=^+{JeOqRZ04F=25}><^q=h~4DzS@b?gM+?zz8Va#+-xaB=`to6|#z05Ui7dbf67` z=%`NzVz@mxVN=~dYO_36#r?XFeXVl7; z2_Y#6M{YnI=sY9ei_k+wODTDA1*hgncsI}}k|MZtC?2y^7)B%J)uZm|QMbistoSgI zBJg2-)s)G}N+-t=So5nRfW09eVkbjTz!QZOz~Vwpn9LL01dyCN`t={&-eG8sxq5Ay z8#HhcjRn8CYL1=|SO5vAnMFe+DG^+^F}%CTSy6OMn%RG;Rfl}kmyF4yWE$C$3=8hn zn*h0RuR)_!t#};la{yp-uvY4p+ipM(SX|VO6GtP3xl_ z(kj?mpLy=%r6m@7;`h_Te2(xvL{eja?4JksSfWb63>Y-5Xz7S?LzXw8n*@6fx7Yu_ zKm3C>nHO55yaAaoosdB7Qb<~D*s4qru;-k{vXW58wsI>a8|@rybu%E1jx^itW-k$3 zk?Kjv-x?xsW^Up!AWm?!j}(8yr}TSvL+usGmG!6JlOU|dw0+v8{ehk0N46mj@HEc+ zgt6iQvRwRb6K2Mga&R3h`3V64`m$f%V6=y6u6a{I)?><4cYf<-nd%#>5B1qsa)i6D zf1=9I2U{@&I+bJHGBVtWV{*3 zh-Ns6SE|C3-QDzgAgC~Icor>cYNTia@VHBXox7VN^l(TJ;ZzhcM6@v&rjp~9Zw|4r z8XjoJEet68zM(HqO3V4h15vG)dUfIcG8?5qvq2}9|{rbq;jP? z@2(9Mfte%dFM-&=ndl@D0@xo^8o3){SwZP5*RT05<>WUsB3P%K;%JVI*nrIN#$8$UQ8 zo_4?dBR(Q)fCdjr(56i$R1{%cScT?a7Gmfbt zE8_J=4Gj&c-f;%;GzX?oYSrZwes^&es+hEfOyp^qo<*2y0xqVa@2%Px;DMR>Jw(XF z$t+p~SsB4v46(sNh0gbTqVq}Bs29kp9JRKvFQ4#OO#xch^LqJLf2pcLh5bOz@&cCx z%lks?7Mc7*5>vN-9^_yDSpY2j8pDL!XPhtqT{J$(gU2|#bGJ+LA}o)}JS#KVteqc2 z3a>JLQH=2VX&eqHk$9Kutc=@L-FEq|E1{g7ip&d2R!l@wjSA_pO~(I|6EsPM*pB0!dIKi2TbJ-z?1i;M_gG;ucQ( z%~ssnCv(o}Shp`PYI|egW&`gC;ox?zkHPO`AQnaEm%gmzacIm9k0hJ6mbFrqwZrA` z`vd3zcS7Q-hd#SZk+F5WS1kSLR$R$<@Y+-9fylMNQ;w6F<~-sVf-~q)T{++H>QN?XxxS)RMAHW_5fAA zi=d22FDBL>`{gCY4}d6>0AC%B95}}-YUZPrs+ON|>@G&MMoSREDGC4$-cm`nJvErk z`lSuiN`h7pD-jR(`xW>6mCs(6(yxA@?h$g@EA`FpYUdg|<+Dpa!Y^QsxKH=6NRuio zop-c2!!D@Me>DI+ZaG3GOW{+{x9d*^hrf(&QsP7UKKwn`^ZG-0r&p4q+r8=)p{_cB zvTO>(@?xh{)$^fyg+R*6@l$y|g8VjapZ+fdG<*7{lWm`oIt#4eoA0opy)0eT?B&5uphb3-XBL=S14FXPGx= z9m&D;DE$i4Hf5uVqfKHQ?dYUFIxO*BjQwx?fDlsl!M^g4E`|G)wX$wa)eLRQ7W{0F z4_SrhkY`y7YlnluFbO2gP!nMa_`OM2U1DNaS#s4_ve9aTCufFj?ly7|?frV8UsBi29U()I+T-(f}_-E;%MLFa@)? z8@Qcb?E~82aaiRR_%fATu5?&pj9?z&9K3#WMDCOG3T_B%Xkh8O0vpztpF)Q5NPvJNNTpuDpTsp9i$`C#!Z%P=^qX z3Vpd)7RnWx_#1m4YyL)_vR8}--x#4~wL`)XhHmQ<;NoPmhZqvhT&DaY~NT5#kx^-E9-~L!}2LTCB*IodOwm)N@h6$uTy}Dlhc|b`fHlgQH zSD%!r#Ooi!WEVd-D@w!wV~C%px1^gkxs{zw%q^Sg(Z@{_ut%A(kn~R@zFPnJ@BPVH zBIO^rU&gw;#9Z%glBf`TtcDeeHjsUIDCr46(b6-_qC=6>Cn2SO2YH1eyt}w!kYdl%%8dc2NqlmwanwJR|be$#{##(N~JSeOq6oL)-{vOZE0AVVK zOsc1z;UO8R*|Nr>Auog+B$|w!i%zM=L>|EB45F)}#^e+sC(nX)t{#dPP1qYe^GXv; zxK5Ws62FLs(sa5!q`yvPSF?h3_K$z{SN9lKdIhLa02-C8UIqz|zO9WkgehUt@H~TL z#xnrFL3E+kLokVdmg9hmWd1YnM5J-cFkF}v&_0lPXLBkwPBiR1LjsWhbeKtF0g(SJ zLCgaL93H;0{YpkcIj_-?aLNMsIiy1bqX?BYfpg3xhF0UBQw$oRK2cerMU$8ZMEy){ z8>H6kV5C&FA`tHa;!8|#RXL!yiO)hwI<&;FT_BI=S_wR2TrRNeX4PemOpMZzgr>_% zuWY_gDo^8Gzt(tTD8BRLdngzhN-jL21cdgdoXW)@*pQHflSNeboUW}V0NWen>&R{* zz%#$xZ@v6w{*|O4;WXNo+; zxC^W%JaukLQbebwg=`dd=0@nER2jw!k*VZ8^cny!tWmoTQJK$wdg+VoMY2Q(2~a0B zCx*6W>afPVa9j>qQmeZOXOm;f-Woh|a)5O66K|*dOhAY$24t#G68QjHI$9gbq_~p- zrX)Fhkf-#6yWxwKn`ULn_t5_J0zeJBM6qH*n4vOojGir{5#vo4o zK_ds2Jv8GW=n&Ceg@ZxQCbVJw(O1T9j)XqgZ z5YfO)Tks_26~bCsSW}at=9b*-H5n;j|0AOY0aTN=ml~wh)}SgSO{FJ%H=-e8KuX`G z17a)y*9H=)9vj!X`pTj84*(##7KxEoJl0_Et3;OhR3Czg2e+X3?&>$%i?lso{NwPf z*dw!bV78!U3Cw7s_*`ML$&?cKrw2ei);>KWnDf{)3?vO^@f{uoY4tIU3G~!{B;`j; zqq8L0B5kV_A5S5b$l1mY=!iu!QOu0y52Zn|iPrEtJT>*{qzjAArVdr}78#gg_UkOHJ8w!CjB8cy~nzj8@ z?6=*6yL89xo#UA_*HVHeBEz8e&YGAc(L~u5go$P*YUHxX9&^;KPdFt)^xfYcQG|$H z(e(}v3q&c zOo0|IxZQ7(*gs?1)8JCF8oE=jYL8U?$Ry}bj$D|h12le z$D2>&B!n;-f|FoFW?(}3 z1r3k{`qfV&OWI3d1yhf%n^I|_U=d&FPG(U0w6q~nqVOueK99UpSjd&C4jYDjFgi+< z2XX%ztpcmIgOrXh;{m{1X?uRW{7Q!4mVP8d06OF(%suyyiVJ}Za#XS%pxeTWG=hNWMu%LR0(K0DQzfVuMRQ;2ZWbMl z0x_hLN`V7chPOP%>axY8NRfO=b177fm;g>Cbq}%c%tfxyga7Pvg%~xifxc}s+NT+Q zU%ynfu9;!8XuxzxA1{tfH@VH1+f!{LG><4?ErF_#(z3wO>_Y;p?=%V=Ny*?z?GL3S z>ysRhg3jm!4wgUx$BkjdYwIkV&qpwodw4l!NRl!^uo=J<7#G>!!?%h`6=6ZtS=i_t zKq8oq&F8e@^y!vn)Q5a?RC_$s>B*2A+Jm`_B(3j|I4)7LOumB(Hq)p?b)Z-cDNfv^ zPPPsOCY76J)Y?>T8ihN3IeZ5LZ~mfDzL^nF6_n25h%aUCdy$NP zdn)5E%R%RBezlLuHD9J8f;OY{CML(h0-=mrCuSg4X9hL*=y=-hSCh(0T=2{E&w(DW zKiUN;?w;7stlwe;_9TJu_EwDr&m-z}88&vEBhIE?LLCsKS8s-Ap@5R%f!GH!Ar~YJ ze~!y_#w}%_)#O~Qw*eF?mhYguZ5b!@CVdjl71G80Z`7be9tf1-+LF{}hA%j#Y>%j) zLLCej-PQ>@Aj5nB^6hr2ZR#GFc3kcy)v07dHjSzR8&Yq`gL*hzN;9YPR zYxoeGqEHk7y4&2H=Du7}mNfLnh_0loKk1Y9l1n&^{4(*SxudnZM+Af9Q zlVMidc`|=WcYZU8u&>7$P%X2t6)No@u>)6MVb_P{n-iA5phnsBlX|lN4>_Ovx#-JS#-mMN|URvPv zj}jCPE3Y9lUuxW(LZi{2^5wpjCz0WQvw$4|rHgNpT8e@RhjXb}I%WVl{;3*Y0x-~X z%#x$VNL?*RFB(-BrGtGCx0alit$N+6j}4`H%JpxqGFP!uS3Nc-YD${L^ung}Hvef) zJ#y4_AE-moD^^2QuiRxHFg@!$=b%vSU;GD&CfaCbxCopgCuq!RoOx>9!dXQm;v*0Q(7>yaJ&{vFG=m%x z)eJ~{^W(`meciX$`M)X(lv5g0JpJN-eSOp?HYzOO8^!}#2Xeny+89B0z+izrIa=5B zZKA&&okkcAwH8qlfgC;BrTfIf!8tYc6+#%8l@jlVfEY0q;GmL~@SYagMj2@8xKbB2 zGj&`Qc?yW$RfbDdt)#eUp5qh0UtRe=LPsjOSN}G5zV!*J;t8n%To&;bZHH*B3sL#S zziX1)Q3OaWLl({i#IUV=@W&mMmr^l$O<2K_g8hiV*=ZRPfWEZY{fPl@T?8gf_8MyX zr(gV=M$oC)M-Wh?(q%P(!O#r{tQ_NCGb%4`OYhM@eDSZ_H{uTrf})lU7MsLSvjoIc zmpBa9kg>vSVS`wMG%HM700M=DxCOW87&(&;^gn|HYo)rveWad}y5&yHTL_Fk|L*HO zMxxKF1Na7Cpz|56wQ<;ZSW-a}z0e$+oOO~i5O-G|-iY)t$?riLpr6%C1Q>dSzogAm zdT%OmZXS^eaR)@6bk9cp3jE1HKa=(xwfX%mY;H)A-(VjpST#6e+L1k)dR}E-6`+Ct z6nSeSrP%qglG?aBIqw4u2j{{j!xNYE5`zl-71ofWVS=#;GakP5qngXsBP|hXdvnaz zSGB#R+nv%-RZ-}gZ_GuVY_I!i5>k};{kH|qjHJ{kN}0w{^5sv^tHSuO&_%(`JwhQZ zbXkGlCy;Sq#|0}8aj3~*vs5GHqcRK+)Hu#s=;gn`SO4W2)!Vrg!5iq8j?1LujhKW? zHWWcPKzd~uY^W$AT+)XqQ{UB)C^B9sD#ljfZ}i>l*nAiM9!4ALY)Q1im8(_j3~?Hs zSDn<9&O_y2DU-DZ_foSHdoPZ;G#_TuY^B;-O_g-*WK==4ZYnz-YHFk>_NcP2en_{? z>a;I+LbuV1_02P1&6ZbtppG=vBo2-_*pAl)n5!DU9et14q+b z`8{GAsfQSukk1M)M7h&r=TLVDRg8?tm}=S{!@j(1d#uW5qsFR2iQe!#_!tFqLXv&O zb21NDbggvyBZ(gL;-ysV)WYFg;@L425c35`&R9)BgykC~LS*8|M4R*);8MlKa&mex zPuz&90s~UQfTEOdL4h(D2uMj$#+Q7A;6^b15iBGQ$T9Gudmy2Ph}OSv?X>C$zLIuyaLRwL_;4rqvF z(5wJL)ND<1G0t<*q8a?Y*sDi*S}22)Ih{Hvr!evgC27oPRAQa-{MGA-rsUor)EFGT zQrzIpIbq0)bA+bVK~`16xFaoA)Q2Yix#7yCTOeGg$%Iq^<}X0CVa~ABRMsf#SYNKP zjyu$u(LSguMFmBGMFpZ7T@`7JYx6Uz8^HBUKeBJUq)CAXcAlEQK-r2w5i63QkQFJAzY22TvHFBL zlH4jUL~q=7aEu%l%pe+MK6B=$0FVu($I`4F(m{c22414qy3vL4EiOMi33$^Ae+Pt@ zO*Oxjx8{Q&cM>3RyiXc}pklxaK8`V*NSV27LT}~Xu$<5!QqA**0X|fBxIV2$sje|x zgc|J_!D{_Na#g5$HTP}M2mlX^x`l{w0!3yTZ0MzGh}%plIx}QG{kUNyjayWQ z{%~;Xt7O=BHbTVFlX_4U32;AugUMzcL8@Xp2@36pzj&N{fCN7VLz+G_s|0>gM`xP9+c2K!D z@yUkvTgwI+M9oVgXj;t$9T*6vA3yq!P9R3$mg{Dj#PlFh`{Jix{2#BO@4l(iAbO=! z9g$jvaM=i6O_OzV6Q;>Jbe0M4Sg3la<2toin5;aIn@5bX4xa4DR_nzQ6TJY=&Dzrj zh135;4S?Z9q?uZyiqR4&N+D&PLBK5PAFyUHEEsdQ8iTWG(?lIQ9vK3O z%4EC*Akf)I*!r-*((HQ77r+2g)z0h*%kt>}cSzj@LThArp*$h=>dHK*a>4Z3ucqp; zzj9zPS&&xRpgw>}gZUzPz+i(si2EhzB~6N;R}rli{On|jQNm06m@;Is6X2lJ%wekZ zW-$;xXEW!B58sai*G}fj!C)S-fgiNw7j!>j(hrGB>u@CLTUa9KL zOART*g#NM@RV76TaQPGv$IWki^q+p`+YARRx!b*Ql=<2q&X&AY-3k;vUs1F20VOLC z0Y(sHudj&vCU8u%UU+ReAk3Hpk97 zR&njie{q&e^p+xPd+m!qqEG*-!_?Xre^8^eug+wW@PSH-h$;}TWzUZwNY}pj!^aqB zOyxNb3%UIjQwAZ8N-U7NX50hT9`PwJQqqh6hO_;&c6P%iycgcpqt%6ynQLGCE4g#S z4WmGGCzTrt6NtP=ByTz)jXSs2{_4j8s=EBz7ypw&QO#1w*-NjacYPd_Rw9m}e=uPT z?Sr{Y78g~jWgSQUh#DK{-f?+~c2ExsCk#9=?{H*|=ru&-!^5DxkC`ELNk&HEWE#2| z9owu%dg5d$fQo%(ZaLrH`B)+j_ zCAf@@kG}k)Z_~)YWHTv(He%-Yifdo|+xoQfrpB3X{DG!dUka#>^iN8>GG!w=(pE!| z0w+|#DgE$542rUz7}R6+wq*l<2oy#_R5Q~Sp--%~&=?*wXc?&qL~h6E@QivxZG;je zM|Gz<;~BhN{2UfkESx)$4ppr+j5zqfG};tTjrZZ0?;+L{RbrSD-U0XJ?|*v-5jXxc zIU#H}5yUr52vJ(?#2}r#{Y_vmKSLI+N)Tq=7eA>@X$7i`p57W_=-y*$bDUMTNTW7B zT;=uol~d}N?hFQ)(BYUdzGWy?HQ>bu4F12@D=ExdX>f8_I>fky0%|fQGGODQzxo&7 zW`zIb+hl~)2PW6X>g9_-b6pl%1+__C5wq%b05uC+B;5e@r}FC(jZkgE`r(B=1gsL! zlL>}ZBM(fQNJ2zWxzaMybR5AT^ZS3Np{%-k5UinLb;D(w_ibU{`y@kAi1GS|kG}ll zZ!_BHr}a4s>ar>wR3@)v0R36Xm$I1N*W~y&-(JNkYS#_#Y8rNfyNaI^T3|&f_c&l& z|Fj)qibbmFa%An=a~Zn3YhV1CUO>l-txVMq2mA^1k*0TyAjli)lo`f2{^b*B>iug* zn6Lc%Z$nE;YJ%>f6;}4~`N!z=L^SHqJU=70MvezEkRjHz&|$v(4~Sw=OT)Nx)ie%V zWu$2z*f&3s_zI9_4idmSn4S4g)zpbL4Tal34hq<%zZkDB$52i+@D7wyS%n>@su2w{ z=HdSaz;}cY(TAlC43afqxdUpGGxPPr3o7PNgJB$$oP7^JFFwq{eoQxb=6Vy#Q0PVY)<^Vj2KV$a()xVT| zAUn+K3h7OZef;t-pIl>#Rd6wo?pokZ_zdojEiHTvX72tmC#nBQ>95#P)Lv0q;|fdD!TMemOAU#*Xetkqo4BM z$<{y6Cww3(^|rNLVYLhK5>S+Z?4vX-Big?Ucg*9-0;Oc84WyF+o<)*aUKPOW2jH7|P-x|aVlc=k8gFIF6ePRQIPiihlItm#4W|f4 z5FD%a4ht)#9}k{(mvrpq)JF7JSo_(h^hi1`$a4QB)1JZM-V8POR)KT|5*j=qxqw`N zjAr@-uL4}8kO35-H1?3=x{E4NC(*5nM^a~T%$uSly!I)g#vkZbj*1RfSfvUx|pFLmk#s%x)+TZ-PLv?L@7>b|%vw$YF=pRUaiR~k)a!ja0 z+K%=jQ#{qd_S(-ruF&kHRKU#s_5Wz5Mo?sKz-!IKtgFoAqQQ*{ekfPyIndptNH`2R zZODRpcE(^61kqHa1HZyxKRYVN40d7dZ$9IGxSiG9^1|vEtvB%SXCIm@M}aBv*S~kR z&y?Us{PXkVC~QH0<)nmuJeLr9hngo8)i5(3!pH$7$Zm7e5s*m?5K#}Ie<+#85E){< zwFcDWYovapep4x|)RY{aj3n>qQ^6$;o%v%911nasC%S&pv}s6zdMaekMVHlwNi_I#w+cyWYZT7 z@~1du+$~1MZP1YBLqG!qm_Qz)ygVz14Gy;lKIi$fvP&St zI+ShR!TQ2O*RB}95=)(1V%{EXt^M>54$O1}pg={d6|m}2tujHis5hjeP(+P@Kvav& zM;?hZ2uq+`DWzFReVj41)}#RwB{Jwt;k1Z0Di{H7fw@TBYMLt>!II?u%yIIGRNIg| zQ>*xu++S}dBWwPvC%vLRgocvrjE=G2v+FEyxM_KMAQ!*fuiR4Fg%6KLU$X^Rz=fwQ!|Zr^EbW| zA?-k|IJFLc1`P}OVFq}pMI2CU(ZxkPP zu!BYCtuPSIqxvVz34uifK5*F_JkO)Kg6CIad;g*$t%r@NQ?rjqXsUxTwQiN@A-bVQ$SKpG21u%|aTX0KkhjywlP zPGUg<4@7xBkSmk4io;Kt1t1&52-TY>_J{-pgTkwB=#XIQMe^J0*{_hNQ;c3*`{|!I zbJO;L(o;YO^TsnUn5v2By390C505&UWST-@ zI);y0eToDOOr!*VjPwVL!xIbBBT`%DEyJYrOry#PeJXJiz$S8u&<7XwKBvLcUPY57 zO?1>+0@{V%iiWv_dufzx-oe6`G=C#6VQel8KfYI5`{`fw^;G&eFL_CTqRJmB2QvyD zy^$J*i_|g4C35BEmMV>;_yCXg$GncD;u}NED^z%(tJkyP8PS{$p{Adh3Z#`u;!1Ig zYM@}QWQTX(Ai598VZ&L2w9x{t8ivporCDlyC})%Nd9vBjjPZwUgKtMIGhNkr@I-VY zR0ZAM35m;$QspkCVy!@>l6rAN^Ep$W7o}jGdyS>uax7ponb9Q#Or9I^-W&G@6_e2w zaIk$|KlXRt*eeBrKI0?o_bXw+8?Sc@3wKuKU{piB{4#Ghq#lg5%*hW%Dm|MOe>3eDotj-gB>U|@*LeM23Yt~QWBDtHbD``4^MGQ!Fh$k^G2JMgj?~(Yr~+p|QN}^PJR!Ohz6*J25(*>~UvLJz9~6qakExUSAa_p* zjWN^Gk#I^1mt-&1#}TkhGM>~6)BQqdN9Ce80g6S96UeVUt?6Xu?N}z_70FJw z6w`K5bGpESnoLwOQd)aT?g;UQ=_n}jGfPf*hsu_5jF=#^9>fT|Y_;+=VN60;+!s%6 z)vd&IiRVzSUqxTkMi0EoQiuHz=#UPd7eA0BAA)sUQdk&SoHnpCUCDvigapTlP<#qU z&gkIa6;A^NC%Loe-wXDTl!P#{c`24B^8 zw|_xHe1`L*PG=xa04qWkvA&c+LSIzts@FrQ*5LJW#q}V*&DFlOwf6K^jAUrX{_-cv zT+>&D{sxdpa7479KT_&X1`ES*z<4#S<_r%+Gc&kwhD4co{&(83dz)iEkClpZrE9Ff3Jzh^WyMQQ|bVe~US!KsiJ157kB zl@L746ZMLaK(*2@EBX<+3umL&`>^{g!|(3fz^W0a<}c}SAO<4dQZpbyT+(}L1ng>llLp#ZkkU4@qONn zay{-ecu|+G<2y)U#nYJ-GUn>#E1JKuZQjw$Htlw~8mB>W`wZMe7a+f{ESB+nUlO!MsJe(|V{9`0(UIXt!StYF&W%VyknFF+2RQD2Esiu&s1f^rL>2=&D z@7`K_s#Z2D{JIKm_EUaRE-IBHk^y`nWOc|kNJiqL65=HU2alyb!G5*D8I{ui&(^*E#+9e}VK3I9*kZTX zJsPh!Gd4D%%}5j$ps{f`1S}8>dVZmXA!{8 z4R)N1bA^q(37jCW{L21M_TR{xe7?^qs@q5)@tof|bE zD4~S10YqbzHv4LDy$_dYm{!PTvE@3+LPv3LH8Foi4MTQLd^~Mk0_1_ye|Ru?QT5ZE z5l%0eS6^HooPCODOx_Q?|9gA+tnu}tv&r~p&t(y9s{=|X8eNXywgDlgSlQ$KuOEdG+x+Dp|Iw_X zg^4@H;6FOOSC%H(no*-K2tK}K2XKII1EjCNdThue@PoO7w|s+qgcj7Jr_U(9{`zfN zD29^7BpdO)y?>OPt9Wvnv7`fi6PsxC08<+F?9P!o?Yx4Mr4^pII*kMfT%BsRMCpO?)qQLMdX1VyAHL2mWd%}ZBScqck65~CnvDwNA_cba1>1Ww zk!G`S^G$fqX5sAEYW$dqG+rdnR~4jz#3ug-<`w10oy2M34dQi+fx2%KSvLi|P8WQS z>;ix@;H{Gfy!6FV-hedo197_H7BC51pX>-&T(0S*I^=-0`OCk0_dh>6IY{1w1jF{D z+DvN9uR2d}C;hiclm5HZk`kvrVN}5+!`)M^*R$c|?oT%V_5b~YO(-&z8vmztjq!J< zzvcA!(5Ok1riFvkktMMlJ(;p|8XV>|fgIB>STf^hF1@T<=5A8vi8w0q|kh4Fm#;8((0e)b_n>~LyXk^7=k>?MCt{6%6D zEIW-nv=vP#e+DPjgY!R+-P$B#tyh!NgU?QIZx33<^Re^*XV2c=HxL@|zqF3iDgM*& zVl6*R^-Co(98-vl5cXu3n7yv}7Ydltzd*(R{{Qa}0!eHmrMmy-;On-sk94gx^MCl@ zlN2|t)Yd8SZ`@pxeX`ZfM}IH6tli~o_xINC{8%XZYwLSIl8AP0D(F1e{wVG>rg?Gy z?Uyn2)YF)I&_k_~{fx85-|#pC|0v{QVFy~sCvE*FR(jjmJGZX5Ij%l?`yv4W)Rz2z z&!WQd2EUEZ+&}|qbrtBze+K&A9 z?Vx)yD4A?(&Em^{mjx&moN?8LHoZf(v9m|LtF|Hk-MaHplmGJ1^D#Sn>}PR*LOfUq zl1&D;ZJD5JJnZek$6PLDKYdEqW@Kn+%Kg>eBGdh|7jJ<~rE8I98)BiV;4s-*+p0tV z?ToO|02A0a3`1JrR1cq_jbOVwLksm^;2+;5Y^?$qoW6_FEPJy zMTfFgb1q)_>36ZyO{kXP@hhZH3JPOcNai2)ihCz{{1SWnSo(}j>{ZNe^BJ?--ruh^ z|Ls5HWFoX8qyG=vH;ADB$&26o5V1Y_NpAc&gc~Ev=t%K-`Wzd^{hq3x`k#C4V{Au8v)`Ywo}V*r@PQeQPKn{%CSp)! z?IYddsD6Iuy&8ey{YH@xP)oJ{<>X<_0FEIE7%DX;(uDCxp)1;k+uEd!HTiu3C`a&5 zZd1J_;i%Sab${6_4H^9t1j96MJ=&VrdbA}ebs~=KKP8~cy_B?L(YwR!QqX@&wchd# z7zKO-I@S62cCsB;jPdQqd39sT#P(Id&v8;|kP73tC%_DTm!h-t@9uE+#B9&e4_rxk z0c^d7PDR!V(%_xom%Q>&^1(eX?1&k-!rVNI}mL?}|j%Lt;;Zo1*XyQevhJS0lm)(yC1O2+Ga&iUtWhFCJCu zy1Q^177T@W9EX9|XkdR9haT3tuX*&)s?whH=5G-+zj3yRN|T$f?Pk;t8gv1M=e)_y z&bR3W!@pfu7ZWwe(X#Ex)4#dXCiUV~kg2@*QW6Dz0+~!uj_ubwAqZ5n`p-dN#SqV8 zdBqp%S@}B17x;QOMKzEtibXP!mAkj%T=ikxg4)Z;m)ULg&^he_38ERe$bWgqR{BkmB25SxTJf{>O2>X1Io6}QIa6t6FzEN zr%&Z^FtA%O&&;)7dWVvA-(S1@Fp5w7V%(L(E|$0QPq*Vltc|0oJ#FsMnq^p%=&omr z`fO}#b}06SME9q`yJy&r{gwUY?#S6}XO`hPmtC(&$AN98Q^z;cot^X!-`ZQjh{tn0 z@uAnD7+c>>uIvgx()m@3=@T(Q5)ms#gd1=(BkVsWoy8b4uuPt87ee`0rGK*>W;Coo z=x++bl8W;A)^A?i`|$q3rfNnnt&09|_ix<%L{wk@wEl&JA{2Fg%n{;X`2=+|)T6tF z(*Dn|Ywe;ZHb*L2?p>@&+%Y`$_6hA^@niq8eTrCVi!#v;+aGZzVf%OqdnHKOnh)k8 z#XVp&j6CyK@BWYb_SEB*NS-+y$~U>U{R=WH9rto|jia=`sFlxafm!3kjz$;v1}~{p zp`tg1pEE{OQ2}nM%%nh&x93OKGTMH;m0bX*1IUkgY3FxY*HPjR2T#dRUw^SGZ2i}} zJY`Sqq_9b+_lv(La$~gE{YiT>w{E|5{b75J8vvIA1}I%ubjL2x??cMmghCe~{l74u z_t&Fl3;EYV`SycDKa%`hTQu{xl+|Eo{_GlWh*Hx5?%t&{SM z-i~lw^q$!NoiE9W5-FFI1v#uyRbpi7W<^YKk#6IqeqwX>L;!EGP-h!;wX>}<=bk@A z-a{A&{7~`P@a4)*(ffayrUWr#b!0m{vF>3Q+yBH<8FA!!CMVQQ@rm6$Brl)XI|Q+_ zh+|3bz2Gl-Z|9T!gRP6NIxiV_R*T(_Z_&e!dtZEd%6=3Om`S_;=p;1K-0-@6`=n&E zm#0)6yS%QWP@IW!dlzNlCrP%#A>O_O*|FeuUSPaVN(i<}Zee%+K`ftf5|G&~8bM#3 z#+qbB|Nd?3x5o)#ylDY%o{FM7k>qLng8byEr6llAV%2&efw_%fN#+*Gv)UW?EzX8z zU@;zY&LL|~j_>;T;T2D}UueYW@um^|>%!c9fK!BxJYn)ZToO_txm^@_22s`l&Y4jg zCj0XOsEvR zt(U(kWfjGYYnq)W6G!WisLp4OW-FlBq=OHXw*m_I(>XHNf_k24GrJ?@KXe3&9>EHfv=T2SdgYs5)c!J#W(HTxLr=L`y)XPe^vwL%oq+o$ZtQqd2 z_J8N>@5uIf_ECC_*g>){rlkdvEn$?%w1=D1#{!y)tAW8}qNki)N^+9yl_&?T4$^VE zI~;Gye((`IG(TS$iS3Sc5et@=j#&;wk}-IayNq@_Vpoq>`?dj($-}hEWbJ)PdqJQO z6y9+vJsLf?;|Del&^>+|{7CPd6rB&VG4WSMm?;c5^**(I@p%TAXCc(8I#CAwAsfxp zw}KFQD_R%iZus@1!Joy}&Ipv0VV_p;PkaW!QUGI88A1NoYP?x`N45065UknCdWe;^ zb?e*VD%oEW9+=FZuqEomNa(Q{C;gi_zlj-f49it9l|~1wH^9{}tO5&&&8A zEnmb1DPe}WkXy!-e%L*p+5cCDCaW(VO|vPNrp(ZG*Dm*~&Y%7*f`0FCb^7Sqw~?Un zY7kxg0Y`igQK=Iu{Y7p5E%_KZ#RNW^$R`mRg|}oAd~~)qPhuNBsN){ZxOnXYF$GBs zMDTL=1?Rx*H}4zFU()$Q91km<5*>kPj;S;+T9pKEA~z7xG?6AO;XKJ#V)YJTV(?PlCu7C@5uYiB z#ruL^5U#_O^e%X%pW`_c^~y8@VNy>AG=0`?r30SNDP3?oQo*zGt(c z<3GK#zBqr_!Q1p?&Sdyt@375zB)ki?K`SiG=DxsxsLXX0`efS9Q0cG`PRH z{3H?GFCqKis~ZE?f$NuvtlZtMd$OYcbo-bG+ccHgo9;nz4NMT?>+GB-#st8?dlYQX zNvGvCifxLb9cxE*@#!BW`+OX@w!R%L|M2clyQ5`ydhe4@ZE^PTOR6kfczef$eHN-8 zOYQ_t+_1`Ec>UwVoTkneHYm%L=yR5cM2<&u05M<6qMN;miJ#{-4djHoO!a7S{((wqlH8+f zmfC?GP$hQ1-5qmt>1_Y3d&Xw<>E=5d{3h({-T-&}um9z4D&#*old;uCu$KN!MBls( z=(CsNZzf{j`m-n5^V{ZxhiGDSW!yo7XV?G`iNWx5o(ov?1Ov*va#LJ~1$MUKmcc-K zw!4$QR0f^j@8FubN78f-gp))nTMkKO5NnbPFAy$a@G`y2(<@=%g%N)s`Kdv#B(uI~ zFPjH4mZ6JL?`Qj73jR0-@m;Vn<7AkCPbdWfdHr~cn^ZL5Kv!T;o|3s{b$DgWAY|Kc z4WpGnuU@?6JkJ*%mpMKeJr-{l^01Jy;zi_d{=dQ}vPYKJ^kujiV>r$|2Cdhl3f!g~ z`iA-_@en9Dr+W#6jr~pCvh6+>>6~N+-j`idI z^qHN@(4F6~Su$oEKb7SLLRd{t8Sw7EdhldxZhT^22G?2l2|{_aB~2X$*zzq0W~PosfrQ(>cBK{^B(_GE{hj4A#yMWq!At(xJ?r{wiF;I<$J4 zEgATrWZg=CdN{N@sZ3K;H{<2cZhbo)Y@_7Ic3S!P1C~&m9h~e%8)@Mf#_eLXt?TnI+-R@=n%~dso%gSN?AA{F4k~fXo%X6S zdVHuX((?3Ax3}vxxnoLFNp2|_+9NN~&OnS(;zEmXKuiFOfD~>F)FkVu%>$x2p#8li%o*z(+lads}ipIz*)Cgt|v7w>=l#m-M`36S`_=_*g-eX4W_}k>~%`D`yt0m%L*bxMat_eZHSGLpw;V)EGqZrv#6asF(9h_Pb765_{)- zwR51qY-zJ;_xwHIX^tZCl4O3#UchBjFDS62KMRS{|Q zVE*7~a(o<_Mx5jGz0%He$d@>RhUfm2O(;m%_iUTAQdu@BGk5-Ma&p_?CSGCKs<`fc zaLSy2ID7r%djAo^(2)p?ws3mJRMnqxFY80=pYe8vWJQGOEiW3pjviNpNBf;seMbs% z(mItu1onZP+Obiz6huR%0u1S3Nq~1&kzB+QnevYz9&vdbF}{YAiccB~Qs8TO@OTfo z2-6W##f9r8v$lX9c^k;B%h8Mbr_b~^LrU$E04#DYc%Y^B&gM(Qhh$itz44JsWyz~L ze~%##Q!*W2ZSohR?}bE5?Y5de`nr@7nOV(1(-=a2vQ=Rr(>5+78n<5(F?!Rzq!Hsb zeY-m!61e)MJwlOK<*=#R3KT~hn6#rPzEjTj$FKbr1cgPPil z9WC;oQy(vaCp?93eLEkBPx$bXw0k_DI6mGx|KrEk^en9HTx()Ki>@fiGJcP(s<%k~ z#q4SJg5e{~Kh0ABSIR#-ZFx_|+LNm>UkXr#ZzN>DU_nn@A7>Ii=_`Z5?{UC+@&P4V zBs8KmEtg$m5Er??Ps5h9qikAE4|oG*FNTw=WLPmi@(j^QezEg}#VpI@Xl7wQm!&Jd z0@g7lllL3K(dMu2*^?q$QY8I_QC-~Qy$L1K?Q$iz{Y+nCS#c=h0j7C*Fgw$x&el(# zjyvVPj1}(yc<`eJB<*K@;Tc0u>0}5zx=Ih>h`01v;?_LC~trG2S5DqRcCX2 zJKf^Xn+h$ZyrpLDP0}l%CFeosGlp)wt7TY^j5=>g-MzPt@shxNunYJ6&ofhoSL_SmC%Fbq+Vwd^p?KRr5|~I8V>E>s#B+ zSq&&IFkizOw;vs-t+&XF*2hJM@3PYN$M3%XwHG##QPKvqhaJ zqdHBu>olL|bh2^fJLldzw3-{ki0&;}JO>ucMc)6DUc&c^ChbN)Cp(w!{~kXQS9rnlpC(D4c?rF2l` zE;w@Xo29$}ok30Q@`b~NyQcp3zdz z411lUTy#h_Zd`R_#7*0t!_zV*3lQGU_Ixvw5sTG(n99RuQt^oJ}|8kbD}dcnQ{hW{^3^ zSd0zEvjE-98uD`Cm*KEp-|ig4$BP^Z7|_gaGw%$i8z*Q-Gf#z^280S#k1*F@=SaI! zE7YtLAYow=hj#de=y6r)uC}gbRe+d>Uh-5O$BzB2PpUevGnb zj%*gWsSOHv|GpWv*qg0)`7XtGv!f;uw;atOZyH??nVJKagC?X&P~2e?=soW_%!A{X z)78uo@=@;_z-vUh7Y##ZXS2~l12%8obr3k;(phk(!N|c3Njk{7K5n`+hMAnEOLc5{ zT>-p<&S2O*sS?%yG1v_>xc@{eArIyGK?iSI_ix+K9zz-8G`jl~DQ}oA+6z+?o%r3) zgK8Gt6+m3Qa`WQuldQzv)yBlb26N;&j{!?`bmk(ZuRFuh#+mNN2|HYfR($;K-M7sR z4>BSM=Z;lXujv1W-2piGu)Dm{=i*zM(VnTv zT}=gLuXD62140gGIh^MJ>~^~sIlv-)Pj)s?Ts=$wObv|D9XVg*h{lJW?smqQ2@By; z!3XPT0p$X>;5c)HR_Zu9bXo>6<#g47wJ;e$H<*v5BmSq`hbf7TbSw}{^1LwGUn_7e zUXJP(f#ke<0yiDp@APL~n3p?y=dk#lW$5z3BRF^SsI5TeZkpzfJRp9UJjcRZDWK1< zd(*0J8e{c?@P7H83DF1(yvA*We2@z|w{B-1G&{JjI@iN3x?&F3ZUsoUP6mPr+`VD< z7>YcY00Fr8Y09ZPqm@Rs&^ZZvV+xKk`X_$LXj?6dlvb~NEN~U#014gw+_2w$f*K)3 zAQZj;JaSM9d^nio^IR_K=rdV{C;jeOl!>ns^kB^gMd&eZ4~BRMOOCtKWs2!K%i326R!Kc&5v)lDTU<4c>0U>|p8!^7Npq+QOT3;@tYeYyisH0KtONgz+=A~ z+BH6Mz>b+HEecDtFh37E*$d8P$}gTT3kQ^#^F5g(+awQGg{)mXmL=y0Lgv+t>F5a7 z>mIN0cGtbmptuYVe%)DP{y70UC_1x=)dw}m*n{_C$^%A@>2o<8_WIyamXZXHbjaURGSFGlDjl!^b+HDEev zI8-UjMp#4!1jpsc4Pq|*oC&FdUOLw>L-F0&RR;r!Lzs3)Ck}Kij;m1)x#2C*^+O2CEVrt%CL`jZ|^*h z-0UKhn;N3AW$iGtcCFOP$3&6)`7ALb<7OImfxE?#k))?VQfVL^#nL*G6de41j+;Gc zbqQumvP#UYGre8=0oaG*1tBzeNHbcQVW;K{6}{g%_tSRjrCzQop^7+Iy8YA7J+Q~U znTg0H6my@&wU7*QdHF1fyF_?vBA3McNJ_~!e2X_{e)@*5Cn6y^c zG2c_aIr5>fcz9l=U5C{j7v3^;$IZ@9Clcg29u^2K%q!;V1o%f@}YJRxso+^xEF z*MW*JD!fkQ(Z1$vJ6{Ion|Ce5XMUEAbr6w3W3S-QKX47gId^Cjix9K=u&3}%aGIq$ zd`+uJ^V8)rh32BT3zb_JFFK2jv6r0AC+K+2i#pBc$`=9F^=Wh1%11jde5r~ZA`DGo zN8Fne8!|o>0^ko*q$TP*1D3v#g^l~*h_sLz% zrKW*hAgECgk7aS}5RN=(YT?OFe}n|e>>o@-7l{5*ESxK0CimIP%SXAdCo&4Cj@%S5`cou`A2TzDHO{nPK<-B?Qt zcRz1L4p3#pqcjX3gA_C{TVL8c8L z51q0{pL7{~o6|3A^0}}#XFeAdSl<_-IRurgVdguq$bSorpJl77c21Se=*h-mGdBJk zg-|J(?VPg6@ljylzOZmx~Qc!U6v6c_lGTYFUhQJWY%qHoD(Xj0^NIBVBid2vjvw!*b( z(rYA)>KsQG+FU#%UE@i`?r_My(veEzQ{%C^hSnm%@6QyxFCjzw*Q>l;u0& zr(3QctVwaO|A!YS~_0k|wpdOT!cEp2G+%PH634 z`CCu|!{83c#8u~{M}B*BBucdX=0^=%oVxm@bnCxLdC=B-TpGC`;e1&d+WO{6ju*NC zejafZ?Q9O9*_0o%3>4!qfL>cveAw`1+PEqVWGt!=sPcBx6*E$!KQ$_}sUqZRHI~k% zd9?Y4(jB(Sc)V|?`2}b0T{sB*}){Av~>478@*UN zH+s=f_ZVF^dJ)rx0kZHH+e4_LY%9yTr@PCvpFWaBQKka2qE*U?n3jq z_GC+|X8&OGim_%q!>R6bI+J{=+5hx=OC;^tZtxz6EFMz4b`STv|29Oud7AF((oLT- z)T}!pM)dMeX<}`k1A}q{rAWcVQ9Bqw=ebMKCgr#O_PD6@cEC{@2^wi?yn>GO3EG`PcGJ^UAuP_U>j&j1sGlLB zJQZ)8wh%|{b!k-X3|Q0+*?-sIkF{yO4rh2-?eu8&P|Doq8(3uRYgo z`E5-MFCy${PMJMA792G6D(D{0s}CdELAozIQu6l)hfJf$*{yJ_CrQ3C8%1Te1k!IU;j(QmKn zhpDAv?I*L`gN{s%u?V_|gViI~M0Pa2?&Qf;6|gk6oVk5+HE1>;w=fMJn#bLOyp|(C z)dDQ^W|q%U;gOm&;RyuBnUy7n9I7|7-i#rF$a}BDXaZ_d(*tBVJbB8*+b~gtw{geB zXmD;yI?cv9ZXR#S>s-A(>^1G`?{BAlM|C`|<7sY;tJtdX&#Rmd`(arZ?2{;}Y@wa* zAV3n>Dj=a+QY?qCoHLLtS{NH83^wW%|D`3l-S_W_$WWfANVJPlAjNO?40YNkKs|E% zZr%Q>vrufWxBZx&TArD@vC4pE-x_i-Xu^&hFcX^SAVAH)CUDIu`8S;W$u#DWp{1bI zgK^OKx!D+Bz*5mIx*2eXWwrb6le?c6#F-9Hvg~9!G8_5iMG5HMIG^F%*mxgLC^-?J zfV42)oeqi86eSL?BUie0V5709Bf29VoGvI4($^D3ca_dEm;F4D17KKy2D*T%{KY+7 zT%42o4Y<1ny9@FlHg`c*!e9A*qL6cS!|*g0Hj%<9prXMxd{NnZ4L-LYr; zG|3b@bvWF1vl^$PE1%h#voe2 zP>3ne%rzw-k%T3VK=ycuiOaK3ChZ3@)77ApVJ4+7Bv1#r)n=)1F;*Ks0soR3G!;W2 z;4Womk?J{OWaqUUJZy_4W2to~IK;pZ-mz~cQbj+EgyVeBp4$phM0Zcp%*9E509Ek6 zgTV+S$v5E>j@GG|vrs&zR9JY?Y=t$*a0Xb$tXn?EZhXPG7SNayIVu^Gd6~YLCMUId zjsE*_cx((sK4NUB9(M(QdWF+yv0%lBxddk?VXYo#gNwjfit?J&LstFw<`~PwHrpLc z?mofEBbCa~U1T@b3M!;3uq}|{qBFZ4CQWV#ZjW)jP#Sk+iH|m+TpaTekX-s8>raIk zI*v{evdCD2h(H6XE=O)4#J{7u@YT}rh>Obkf`;W}*W5(xGaOF4W;E>*Sn1K6#~yOd zk@2{WsI_uxpV#LYg6kJ2Bvv$YT`i4czQcgwHF^t28c9!FWALn0-bGoZGQn(|HsV#S z45+pp5U#7K(WO5*or@ zuDFUwuemXAD#503j%FpaL&FW%u#sVA5ye6>79t4S4SKPWF+)gJ6z!`93m8$}(`Rvz znIC7gj2unkoVMkiww2?>+(`Hf{*6xTo3pe?ls?fF4N{|s$PH?$(g_e z_P2zEL^Y#p+$c#pIpUS#Q>mwmn6K!h7)@8wsM8ww)W`4s>9@^2!>}%Ux^=bv%WoB9 z1?RV`c=rDH^Y^92qKg06&#$ZWyKmE$_3vz-M*983$L$k(MscUozetG}z{l_M{&ZMh z`U^!S^?EdArWa49*1=7!0BB=*Q>!Itx?F)Quo#a<7RH-rQ-1&G=#bZ)$5`B{;dYwI z6SeX&_paTADaoo%-(rW&tuiOk(UC+mtnbYp;D^9th$-s={#2w(KBeaV@ewtp2?_S+ zd1wt|vlL?2uv%4$p9|{Be6cyH$r(Qb_X2KOdG{6;^ z6tUocWnyvfbWTZ)k(aVm7SSF~8kVU3N%Q8lo~Xz=#lmz~yC>k>q1 zbUXkeB{yA;2=SPKf5Ue1w4dePCJk?xO+{IZ!Om-=l%PDu^Ijx!+fan)RefF6!O7Q9n!YE8}s5B1CpPn))cy;Y!aT=x$0;SEHKjv6R3f+)3}zu=z~ zyR*9wgDFO@8)*`Z7W8Z=;+L}BJ&YDE#S>_faRf8awk{qf?z!3}Z63KQ>D$o40R(>I zgv=4P=>sV-LZ`&PK$lVLgvC0HVnyT<>L^Uj<5;IM61VKEs7E)71&{$;ap@U^jfR{~ zVh$YCMZ)SkZv6G`f?ih$^B>DXKsg%CT7LR4iK4$B$cC3CBSS zj|w@DM}wTusw(r7OqNfx<(GRloI#y0Qs!Yrl&T?nAQ+YjP5rd6lLt@72zMY%OzIo* z^zwxIrfU9j@1oPcq6Qr0#}|mY4NmxeyLc(Jf+fQbx7pNU=yr%Zq7}%(8pJf5ejvO- zeold@oOOsCoh1#Dh7zp=883=}E#YyaIk@{|SABM0f_gnB`iIM4K|0Aj7P7O}SSb?udEXz}_Lj=i%NqE>xPIE-0UOja=$dXKZcd0Hs{sPti1q znK1$OYCp+&Rea6F-PneG9o*Cd>Rv-^;N37|8Suo+N6w30d(y}hc(n|D-LTf>A||@l zP`9yso$^JRWp=`2#(i&*gE@2nV)Q#ki!=sDmJkrZ9Ul|9sAPAXP51h$UDQ8zD1j=D z<1{sS0Mad1tdoQ>aYw?3f{3>4TUFioX3l!iho>= z6^b@QG15)u)xd=Odu-#ZKRTi4?2e&Jy9tHAjNdf?3@G+J8-09ZxV0@^2ujw;9^a1m zy={(=h5T-6j7xldhcIYC#g+s^049@nJC04$cq-6$AjH?jM^0rAudm=ni6k zAXGF$Fxx8UVNG;Hi|3@ujU(%r513d%zvDvU&O6yN!=*^=TSvKVn;-t=fM8+_0}75< z;UG2vf51Xk_&@|MrL~oBEg!eDv9(NAw$^c3MOoW%;0U4G`eu)7S}Ilukv!r51pi_i zPG+$Uwl3I)63kg`dp|gGh+3eX-PG$3Vdiq%So?5vM%TILR4yH{3`McOBYj&sLOkRj zu7B1dYhWhe<9FYF+hiSYw`|Kl`nIudKFk`eg&Ib)B~tCuz5Dq`dFkDE_|J0oTCb$| zpt-H}A*f!Oj@mm0oEKPldET}3g27nrlWh~*V~a=P^x&`qL9fxY31i2!@Ctb8E?jTASr_5ngP_pCHts{;D zY`nu6COS8%n#bUk$GQ;iO;$MA=#bbD&&@9X_D#Y<01)QNS2v7nAMcf;ANnx{2Wd{a zed9_GWRy9D6}ECHjM}~X6omR8RgB%FbD%3$Gyrs%MdZaxiqY=W0i<#h82(pdF?oYW_Ck z5oj`Ps;7vy|K?K+Ow_5;Q&JzIVd?04Kl5K%1iH|ncEu#vu& zn+Ito-he(Pg+G-)Go%~S6 z$<0D4Z{POGMJw`T9WGY&{x?-zx2($RPb46~JaP8Gu* zQ6V;A`uj}?couH796fijFPS^pAR2vUR=JO*KKGAL%f?)Z#~Q%UW7g*)$+n~JufP})9? zx3-*|Z@DIlid^OO> z-FthvVh<3EQs9USdu43UaA z?J)D&2~gYNG(G);=xq*rM&P0pLlM-%vEl3^PMLW*vp0_TRWlly?DiDz&;*$gX#7sr zj;8OnEkLw}x*+x6KH^E!uO{A}CP=n!uCm0@owd%en8Lh0_WCz@n8YHq-3?#NiAXS z`o%x$l&cgUym(9CQ_pm39(j#!jE3GNR5A5p7|uvC24L1qPmw<~Ujfs`nXQ@fQma9w zWStiS(b&N(R00vKH4807z>M09DlcOaoO*<=elPMp%tHpBBFk9A2;Ir^_tT6sfH1q% zuN45>Y`wvPFXK&SuQEd?z$E~2n@WY@Oc7y%#TZRCFQa_DG+zZEI696TMIAiwxESm; zpEu8YKdTGy!Ny^c9BmQSk<^k_M49KAD-*Nli_zfWPFaYLg6ah{$J*2!ac&LS3`Z3Q zEkTU1OQ5mhA;XJU_(Dz$nc5kLjco>vg9jq6=h zNKF_PigrvkrX@9B15P7Jr;hDUBCpPADLYFwwxSy2-Z>0o5mFNhuZZn-`6eUZTz6y= zgVdA~O0a3ZD|{gq`a1Ibkm zVG4x|S3_i+8k#7i9$;v#d)AjY6altE`|`0g-8XSC(ws=)o2x23>xk-!|8}P1_B7$1 zLxcDPVLY@j6&|T>U=m4msgA;<{H6JogeRQzBG#{ndRZH#dvgvoJnM)6bBoP*bPc z{i@DFk>eK~Z4cF)@GL?5cA2EVq7!YE5D$OQJ=mWoh#Tv-B*RkwjD0SoiTq7{1CdXc zcRJ9hx@i-9+5R+6$%boA*|~EVl?88ZKjr*JZ#DEA-%lLmaSp7&qBi^pCCEkTL-(OG zY8F}n7l}wBAZy3CpOFEiyXZAAihZ>_Heq11u<+|7Lj-0rFy&8S&V%WR+T|HQ5kam% zZW)AfmeGwp2 z8_zux>|KJoRtAl8dP*h>qO1=n&dlq%h62t zcjYUn_v(RqXI5radp_jX0?@USi!>b7xO!eP@chp4E=QTn>fFA|)`{bDd+iM)va2+( z*_)&8$Nrh$>C5Ug2k0rZ{aZWA$lINpRzscas8eUz0CSEBVV6R!YPfVOdJi9Z+3>wEZ4o3>%q zqWNNH2_r8kZ5jwgoa)S7%%Wj|%TEQcXseVAf#$3?zItS#7PN)9P4ZNfdJ`&icA+?c=g!kXJjX$}a`Kx81sv0Q zb8J>Zn2-4(#NT=M&d2Zm$#;sej4A))lqa)Rvs4$MY)oRgKfn9bI6MDvYn2$L{QkZB zEHtX{=;m>0pjG|7Pkz;Lxvs`zt@vKAY#!gly#JG5d$5m|$V^Sx(Do zvwDA<$2kezYh9Udn)F-9zpRYWg~IGv+7uT3lKi5%Xu$;OQuSs`Ts5 z(VD%Fw-E+RTnJl}Hbp$vrfHcbLzre!(rO|u9s;ZL*PSWGr|{lXV)9!b!EVN>^xzOMZx4zb9PgC}0qaj>hHb(JU)G$*V zbSY=JrmkM&$O2V(F39IF%3k8ng<=zLTXo+lK3dn8VY@Eyf(AD!B$(wTU(_c)tq?W- zDf&&~ZF0keo!Oj5@1(cUzEWUi=o4QjDG6H=>8C~SQEi>G3XGb)Y6_E=XJZih$pex@>V26=m$@saqKRRnuN zFb^1%c;0-!=dRF+g_8VR-ud3p2pFm%+`M(G`Az56t+rJLw6*5_qz zpvYdSo0B~J@wt=(3igpB_m9Cv!Ct!I$%lk}qAyoiq34GIhStrT}Wnkr+~AGyO%D*|>C5?bm0gJ7d5w|zt z2Xm1U-^$k5^hW#SfYKCO`JQB=3_mRx4j@W$>zp^Sgl}#A##6q7Ry_AZSVW>lBgcU* zMn4@5cb&E7xS9vu5jNK2$SX;^Eq*^cde|}SMuPK#pVNLSmG}|I&B~ z6}ES=xFNUS{wDV-c3|VM)l12-k$r5NgUK`QDT^3eYW1eZ$xV&#Z>n?hBFU>$=li>A zom8!p4NC9mo#V$)>O0<+yA29iD*2n9ZR<#Vy*dQ)T|9LYEzVi!TU9c`D7F1;Mvo)x zS0$Vzj2>UJ^1577CO+(1lZy=$$2!iLcw{RL!A>|HOlg7aFej1Z*Z@td!IFb%-L?E2lV~+OlU~kjvh5jwWp5qSEW(2 ztDMnFZHw>c81)rOn-9ZSf2=7VY!Q;K(8QndwJ-~b@nJZULzCc#+kgU~1=a^HAt~at zsQk_$TRE08r!*D)a`q9f99zgDn*AL4%jP8K5PoYFH61FS+VeO|SZrJRyu(c=?j`3+ zEFQ^ac5?8%b5Z9nd|-eqsLHk^VcU@5tlGNG%A0sRq5b-rcGy24-vl7h$s|>f_#uaz zEJ!692`gw`1q;Xp#FLLVT2z(%B%5@x5Tn;$n@a@HWU5>h{*poGk`m&=gZDZE$Hz1y zyNw8Tqv)H~LUa+Xqu1kDVH_XAqU{xAE7xw6C0b^0iCJBTgPv9fDntA*^pZ+`ff2kN zMyBOx4{!87HJ$8Cfx9KG)3L|gm_|SU!_#j z%{8ZK-`VXPwuXAP$ZpSAse^hUB!SDrVZI;59q-MN-;&qd5c+jcysAyhY8;4n;qVdy zoFoL51v+=udarZ-J?Dmv@)YA*QM|ep{Y1nuqgY%(uA>YN^p-Xv2ybps4-5Urwy1yQ zb0a)37bKYEBF3-||IiGuUmg2xv~68pAw*`VwXm z1m{L;vNa2sU`bGb@L0l>X5$!p7|d=Q?%dHle!QYwD`yJOoi$pu5f=e6hSgL@HFyf^ zO`8qI!gVBDr?1`QtxstWYo7NY^RLq&VN$>fZPz`X{aB4ZGKTu2*=?o7P zGeKn&GW=(akJYzIkXw5~6X`e(cdYGJJZMF{^e(O_kp&xW+M-oy@8@zTl+}&!L{_XG zOpVHUij?0etLLPGvv-^8t@C?vAC&b)7SM!HTDUJ+fhuUAU#;IK@V^YAKS6sc!>R5D?%Iwc*Dc8nL&D8dTvI#!|)T4-HcdvaaUpzIC;wTW=ma~s*_mT@=hU_F{DyncrszQhoj8_Qd}o8;{Rgp7QgrpzfCy^C=lg4 zMn6Jx!TrWqi%{7sBb;J6=M@W32l#->@5&3i9)aY^wwKLsBjRQh>SP@1Y$QN7vp~6k ziC~3Fz$4&qeM#&G&`N4w$CE^Sso&z~uOH?Z0g9OkHpP*l@JVt31LGQ&xyhYA8$_op zlz-!#W9CMDVCzU+SpYt2*Kk^OOEV zXSJ@OQ>hlSY$FAQ0AgD-Ux6cK;_xX+wJUyM*>g%s1lC534z;?|LbFY?{$11k)xD0z zYVikaalm?NCQ7nbOR2+>P(XBm&c=b8&`ER&S+K-f!OS2qoMr+SErFrDtE;t#XB<3x z&8K>ReXS6ZR+E$nfpgOc+AJtb3jtqbRryRmNnrE2_$g3{un9qmC^yt1-9#@4je0uJ zMt43)T1s-KYy8onXMz+1+6f2=7>D0g-MD#G)k5#;&O!ZiizY}B$2Zs1xzQ#>9#?^n zZM`U`V4lWVey$@oY_Fr!Cv z41zw-q7f6~U|1H-RhZKd22_CNti~XO?1YCWx)8c1Y$!u;j4fnZcQ@>a^=1IVsaShF zhu7!NGa{CbmCWkO^M{F;wJfGr$jOVcA?TJ=i;>D%=jYA!pCuQC2GH9i-(7|1J0xY|Gf;$@7Nd70iX z1GpF#g(9s7bTVo2$H_6X_CdzWbGyy2-RozRVRk_`{-g*LY2#1mInR9_ZK>hHaZ{W> zgyFb`0Ac?{%cJgJuM%m!zUII(vMFTv4Xfje=~F$Ss~tDzr2bIRyGE57z{n>dU2!tX zK@HGqbTXNfTsjp)PpKGO58@@cC@YlpJ#FM)ulnj}Kn&9zYu|r36vyI^d1_PR`kr+e zkb*Sl@xyhaWjA}w-YS{|M>}R=_%^>0PX|w>GB%1e%lBojOS-ETjolb4q+=(he0xn0(Yh&g!-Ch#2f0|64(<2tl zhI=g+@LTe_W6(zEQ2;XJKz>>_E+mI*4<2D7FQZvvspkG zb+%TJGy~xM%6xdTFbqkXL}H&e_fe%yJ^`Y}8EZ$tC zbI%odYR;M$XMp=lzD=&eBIIKF1xr@1KWy%oFW-3}Bml%i>3%V3E@HaOO##n!Ui5)N zlpoRT zu;}KPDlRYyIg;fwAQi`~ztNSl%2{Mi*omCZ!!9|AOszsOCq@H@M#F?tX9uRd7;-$v zWvYX*e0bpv2*MSe#LfJe@jXtT+-SIvJGH^8xreQ)LGK-VB-)LI z%<7o_)e!3xb?6KOn%U^g4k^V{@hCd6G<(-oJKepubCXefDJ4#RH>o+r6uK^?M@OUA zjy7-8$)2B4_~AfzrI%D4yC}U6%eafLHAa$f$I9>m$T|AB&CesMfegr-WRPdNN--|Y z7rn%gx%h&+*avp+WcsuN6u(3*4aT$=+;Ow%qRN)PTdTmT)uC*gwkmH9((>4*H0elm zX%yn25f>|)9^<8?-)XgyVWd1dm^WDgN_KRtDpH)hFD20W+xq#{`_g--j2kx#GP56l z-Rx~n?v+5W+Z|Qg+^M=(Z8ar!&=BNy1P^*+jfi5nv8>uap77r!`Qit&n_-a)tDR?P z+m~$!9Uw%Bd52?Al&IveJ^QD^@K`p*gsoAG>Uu9%ZxV0CE0HSgcyp1JLg9>3Au#9HZpmkdGIUn8qe26x-c>vNdKUvhrrZB(~ z_aFyeq>e6mF;hdvn;{Y0R<~tCT#E@Tyc64yeF<}@Gy)fSO!Fq|u4)YYnBcY`Hy66Y z_wAma!#C6|)^`BtM>hS<{+W4Ck-mh@PcUI1B)=X|G>e!{31dnxy*GJ64Su{r8TTf( zIp`D$7`S*IIhg+r7ABrxR8E2ZCLp(u>G*ex;)&E7W{NTT%zTZoKAK3#^n<|}QT z^bTF7_|Q7X|K9vYzUUqr^5#YNmEamW@*H8j?jcl|A8jyp+`IsQhtQkf`bm-^dDQ&S zWE^q~?DxZ|9tCN4&&dJ~$@g$xF@}e*PQdQP&Lj56NGH2g9xqBfF(JsnqVE<`jPgs? zkzjU-kyd#q6gRZ>95)U`9P(E}GezJF?d>DQ^-&<>(^}veiY4O1i?E`Reu|%Z5!Fk$ z$`>tLSxjkf*pMaX82vSZ4F^~DWzYY2-{A3JZKph^JO9j9*4Y;t)BdS_<{zX7i~9Uxc&as@U6W9Z(`VnsGk^**Nn1!t4erw_ zAe`oY$w|Z?ByQu>qD<>+(n@fO35%5_DuQsT%SN4AOOe?4dhCzk`Kcm}1T#5d+fqy%wZ4J*2>#mfJ+Z5-B1P=xa#gj&m8j^Ml=%nRt(s-t^asF|%u*Q%47d@C zb965nubd-|8o0zZre)n%_tS)a4%NXD0>~|rk>rr!cdWUiZR%coyx-UKllxR!>(U#} z8_lcxu^i0%i^eln1Sxr@xb+Q{mto26AmVuZoo2(My)3|3#gJ{S(gS||8XT3sA~3*? z7>hXbq~RXbW@A|H8lRo)Wk9VfI&6awM@tZTBJLr=nE_K-aRcfFudOC9rrgvkgiR4!klEuoIEV-e-1AIjGo>bd(g znhQFUJdo0@h7LGVW3zmgp2eO}!Dsn3GdQ9)*f>q|Ox)ck@J1r6GNmq>?^I6uuj->Y z%m*A(@vZhFb#?5jKJwcn(AkH_OV#{cSh*_2){)pY`seQ&j5Tub5Eg5~rXn3fuaRGG>C9nkXjCqlDpi-eiUb3!J+OZ zlR-!hdcdHDH%oL*I4%B}G!m#^5)sTp<|;rIB$SP17n1gEj5!H2T_he&(JYzEZ_}w?( zM%OE0W*e&am&rcDvT$>y+(!FJIx;9os{A8^b*No(fehBFZLcQX=GyvI&&O2~@WnRf z7j8L6)>nxQh>SK3xPiv;~@eD_`M?0#Y|m|93@F?vx%u~zjEo@+raSzp(= z?fUN1_?zARytmsq0|D;Yl<%^2Xxo~9I_-$yL?m!+r+cdJ!x!TuYGU)04rwa0^?;GThFgteCXxWyQSj*FSJIBitrvqcSX}6$m z?@n{}X(uHb88A(UfV(#0$;BX}!~0Ao17yo4v1|{q9_0h8S8^_&uxU`hCB=Jcfv_(+m({wXI-Yed zJ>{Ts8`k+Zkn(XGf=n5_p6 zjawXN$fs!Na)YN-3~mtcxYO9p$mb@9+tMc!NPDf5n5)fGGQUgX&gwdwWjE37@V4JK zkG4+sSsyF&e7Wa63h`PUdx9I-qtC9Nh8?eV1Gln(iW zt-j_h@N6Bqg{;keGF3%EQCtg%i@%Apr{-)towIDPIF$cagNa{_m;1E2pSvE4)qF~>-0c1dQYBq66c6p-ARwK8^Do-e$r|+HsP^k_;|yN3 zel6!QmNYNkJU8AjSMxGH#f8H*N09t(o7ETaWU>?b^K$1P=ln8Cp=iU)GdG9GNAnW( z7*S79C%qKgsd(7D{Ki=-;BVrX1B(rs&Z>Nmo7<1keL~rgwVa2W0m3h@lY5E8=h=%n zDG6tA(uoOFI!$S(<MX}UQdqPRO)}g?K=Rt^aAlYJ+bF43p`k^qB z>RM8wgm8sQwPw^RU5d+f3W#sNt?&3s zf@lE%~L}@?*0Y z=Qf|nGBu`<66K(ZFl^H#ypdkygoJNqmlRLAQ|Az9zNi<77f+9)8H{1S5LW!Dm5&`S z_HsQiy!bO1ZAy!F0MReM-R6k0qQ8ao`p7_c;VRjggjev7f3hP#(-n?a5s7Zyu#!LPk_dW-uI3U<-*KGR zae**f$nW*K1H)=kS^0c)>kg?-Jc`Kr(DAkrB%%8i{|fJVX;x}7um|1V#EGm z3w#{~%|GW47Q+kMA1&MSIC1q@jK(9JqzoPIAJP@(G{XAo$?|%;c`knqi3G>cJfA$q zJ%v~|&%^JQ&SKhhPL_yUureOmF`n9BW4MIrWVSEIcsfNm=1+9CL6V?WAWlV4Ui+O(955#kJYus#}Wxh2$NBp8=VYgt5 z>567$cG&%sXd=RS4~Lk>v}kmcgUu4WbNBNcbDc!_qd9JFR9aK)>M{PdRePLl;B{d> zhirG7#_97j%Wt~U77^MIw*6YOa-V%lp-Le%;}F+8ga5*UjgC?O=9yS-*C7ql=GoF{ zo*1^fPYaQUo5QWRQKi+o#H$y2_k`TQogp&Rurcx2{dx1tPQ#ovX`!#T`L(#5%`36Y zgJIL#e8V7-3p~*>1(miuMShZpXxdtMdT~+hNhLnm*lt`rBsx(OXZ$ho-#5LJx?T&T z?|z*d41-urH8#DnEYUTmAL;Be*U$+3Vzg{I494>wovbJy`9PFWw26aH=WERT2i|U9Sl>{drMTxa|%jFRGjN!WP`1 zg>61k|1+CC?!B5uQ_uW<;^-p3Iz2QV4&67Jw_i#`Su z5G+Cko|fs*DZWfdq2pmB4g8|iciM-SDi~_F@3l|UlBv(So8Fgw6?qjkwGSM$P)UYT z=%C+QC>qqTMuLMMVXKa)Uh&|5ccI zEjh_ZSks3(4{U)GKc(cWAxK4bT(mMHqG;NRc;_XT{0|cLTF(+4QzLf8BemJ63V36LsFNWA^LzL}>^&Zv@*GUtGyc1n`lBZwakOYxQ`F zH@b20JcVF9kfyZ$2x&@W=Ye=Jw*?m;Odq@=s*Y|#z!FEs=#R@4+5-)9Lh=0Z&zplw zqa>Tq0qd{N=oq&IAJKlt(Q+&%adRBnSZGkl!ecELt8{bSp%XBmzswfHvL4k_R9`S& zqTNfMu7>u4co}S)R0Abmx+J=a8Id`0=!9u$Kf)dz!^_`+JqrnKE0=z zfQpnsFLt|0wDFxtHCwdTb(@60is$*My}O)O8ABX!DfPmyz4YqfUNlH^TQoA3XS?V> zk;SL<%;cDDb_FT-SH21W8C|W zqCsj6P?wZj*|Hjx@f(EpN#a8wyQ9LaSD@E+DICDF?)w16M{#sxDRzDN%tAz+P2fJiI^30`sa5r!9OhSCg2A}NV9 zxn9}3*%+|>73=^3f?OTv;@me6%)TaHDZhX9P}+y-s_w4ouC6+D>eM;^b83G7Hbh(c zC1=z@6GJ3xu+qOmi*!oG^mj<^yHUi)xO#ARVaIg zBwtN@9@KSYqR=px57C$`yX5^^LSu)wQT1_4o-cZjHAly{0eQYo5M$rL6W@ zBrdD>)3RFsd)cu0_gMd@EmtG_ktECN%dPMO8rs$K)lUhzaaU_wZq>%&nH_f!^~dD8 zCAJ6B{?qbtUo%>ktK>ETk*-#Tthc?Ni5A++#_=))f$ifacoXVL#aLXo^Q~53bJN>I z+58Oz%`Q!5!O>)gn8M;t*P}g4#vV1-aAR^V9zF)1EcwYwM%<=p~?uk`ZNjGngn3 zk4c^uWY;$aOF6=#C8=@2W{UMqdm!awtDQvb5zcLS^qG;*N-~iBNsZWwR2HII$}ZBj zi*IAN*-#ppU>sGUanvPCgfh8a1 zZYbfh`}f8g70FaVxY9pjAYL03@hF&S4qx-S8&XzGn%5@cCCP+_sDwjR34Wc8K&CqQNjY-V8>~i2v-?js%94|YR$!3cPK6>TpL(YzjoFf^$O6(Z zX$>L9;4D{HO_7j8c}p5Ax0aYM+Fr?k58%}kvl)?3s099GI z>#W+U8nrP}{Gg=gwh3_LY=%MtrD&1U zm4uF`J|uyfu?Xcc-ei5rq`hWjQm!erm%~#ACDy~AnDD~`WA6#L=MVvHn_H(Q+@OWS zLBPGcWkov3)7AQ(0$x z0?SNM2W$bEyvSwp#Cm&W-3&`FO7qBjKun!TODn^kOegGrZy>-%bAwPwG?ech5bx zn-YOlSKfbrQBS|SB33O`2?P3sK5;cZ;zRq;mHU$$`)#Q)ZQ=d1o_5TicKAFyTeMwV zJ@+q^vs&}Xido=m;=+2odr-Dc1;al)vBcRrCmP5E*qsxPtEb7I=_Pp0nZ4_{voqKy z@l)YttrpE39xOSsJ_?}4espW@kqY{2QPlbNCE4ikFasF^*RhQ=84nr84vi`Ksl4o6 zS*ApJyB5l2^&a+6`dapQ@3=WOOhDoK`U(m3UD!*X*^?5qTw#o;WIef-G*HU!At0ZJm)-Leci#@%r;s1lSpBi6p|iy>>|vZd*Z;ep6!xRwZ@L2`eR7cB4U zKqArdXyOk7Sjy^)sDMr2en~BS z46GAn91Mlvolrnku{~n0Hc62ew#I@W>^-yT*X-;8W6gnm0y7(46*qUqN3a36XPhqs z9?K0TwJ4k9KZ}NVa+$9-zFe)Ay?UQSAEcvAqJ1slhOA zeEW&or4l3^?{mziw>5)hx?kP2MC1tXpA}SM?h_MBP3vrcb;r^+3PlUG(H@x;b8;}; zNrJ*8@EJAH1J3MXCFG&^E|rIxM?Mb_S`;w(VcancGL3|eB8kaB5Vx7=J+0@jZ`3c1 zdyY+S)xK(aT1-?vX>YblPgVum@65a3hDnd4m-FuiRyY4yfxtF7v=r_CS&CmS`klUg zT5C@8vP35|$1{{=YS`%<^B}B7>a>ABBczJmVR?SL^8K=Gb;lyQ`0_MDR08O=&55}* zu1oHb>%vUbh^tWK)d0?(1HTsiUY!|tvMbFFx6Zf_?hL|=2MX*jyJ%+yPwpp>l5NP$ zDqBW;TL!Dx>VJ`won)+AA~tS4?z17QW%L7E<6FD{quy?bRgFcf$a$*@aZdf+McBHd ze3o8B<3t@(RfxS_4Y5~UPI4+sJ`CAA+6WjBkJevPmhPHg$^j|Tq8#tkx z_AQ&$`tAyPtRspOzX&;xdLrFjHa`Hf63sEiI1l5R_HFom|yGWS?YF(zs59g z-tk_QfBWV)d15N1PJoj-hIyc~*O~?^fqf_LefrJXkNx~|Tu&0zCe}jg!h&WBPaX@` z&8pP8+GE*1)~wHJl+TSJa_<>`aJ~a8iBaSQ@?V_0Uc4xgX#~B)RYN@6$EC-LQS)4a zbIB5-ru^pGGP$YuCxTC(OC#ogIlwbHvdtQ1*C#Gl;T{4jC5tJUDj#l z&bjAw=_Dx4BUbG2hP{+4KPS5e@QuGzqi)u?5n*SjARnfbt<7ZO+3tJV0y4D-LP=LG zMgDaF*kkrhZhX*gNaE?I>-9~~yy@yXJ{1DOgj+hQDP5sj+f9&JWwvjak`#(_^*{PB zK^Xn}bP>5$yUQsX0li~dq{hA&tC1ybqTdLorCOwp#k*sIPc7na6f$LvP-uTTMjCR6 zY`cn#JhB^vLo(cQo^%eKX@$i6R^x8x2Z31z{m{wc#iX`Nb(@-uvtD8ScgfDzgqF=@ zUb4N$JmFwbjtxiqu2CvgJI)q~t`Kq&U=!nREitAnu|^aELo}6mvRCKrNMA2WS8@Aa zwC)NRH}LVy_eg)@q)&q@kCV1%L7}RS`qLHR3Dacek5+2l!a8SP=Pb0ke#(QUy2kGg ziyq=GT#r1pGehM>l=1dRTzRIz3n7^h*Y@127;A)7LTEVuzigQW0_-($f+q3UHM92naBOO6lvKoIE1Z1aPjMRzZZt{IPDt-HMOPm zJGE%Elry!c^f9+PU;6@+WkR2uQpaS2usjd2!~&wVcgIE^ddf;_9lwGHVH!`ct|w)E ze*fdDlD)nerECJ+#uK`%lPmTHL+QYmUBh9hn7zBKSG`b;9m-WJy=5B}aU0?!q|T!- z1ZvMHJKGG0vxzT3=9_bEW(jW(BUUWj$-a?E66j1w69@Xx;Pzq#GZcf;P3(f5Xzipi zbka~7rH*c)6r*T5GGK-4A51(f5q3O1zxK#Lylfaw1~h9U+iFIb&dv-p7Nm@N(la}z ztrK8~iF##GoayFuJ}Cz6t!6@;WUQu(2dilRvX($*&cy$!k64?3p0LySQ$4+}lOIR? znw=SGuylm2${)oOn6!7c=6SD@32Q)o0bX^J#$f`bBh*yU8Kyy_%8E6cQZ9$uq-jHI zkgT85EY~;F7}T4QX#_^Ka+B`V*32=gY;r;lhdGAZXw+;p=j>@cKFiiR8k!w%QZG~o zku-MrUR$#2O68}~kO!zt_OA8A^}vj%7jX8mA!%2YjCUSp)LlpAe5Em|3ZHVmx=(~h zXtj9_Q!WPY6SoEPP4S0!*pRcBGk>tfxWLX?5n1p7S9Fx%SEv$|KQ!EMf2fI!`tor8 zMPhF9wt2|pi;{DV0DWL|9~6a$<+F%{-26F!Bc3GYFj{9q)hs__~PJGkXIZ64Y{PWiQ zc|?MnQy&v=mFE8etJ*Fs literal 87069 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�luD|)3@ZMRjanC( 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[_PPmEv>Nj3h_Q@ul^_!9PeeX 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 literal 4746 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 literal 5309 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 diff --git a/espeak-data/fi_dict b/espeak-data/fi_dict index a08d45a6fa2c82a3c0660e1869fb9204cc925124..a9d64c9e8318d63846ee3efdf99240aa1cfae465 100644 GIT binary patch literal 4567 zcmZu#TW{OQ6&`XJ%93fvUU!2m_C>9hqS}J3lX$h8qISC2hd4$8cHaWDg+Pi!lhlQ> zL^)BmNekbS{);Z^y!APc`>;a(NPkJcGeb&B+5zmDIdkTmGv`h*gRxI;GIrx^A`ThN zxty_-qjE8s&EM^?>Q&Ykg8`jYF7jz#?BICA=!B!Z8Muy>7Wmbxej9g{xtV-b5r|O^1F$?MVlKVzVUA1ADl97Kj>Wf~PykMvQs$A4wMeqR(Qi-U4ez3L^&aG31WUgz`ce!nnu z^$H#~nfQ+-c!HzHZ2b+nf?BKV3M()9mo!PPG>geY%d!530%#~8o+2YTS-jJ@??nw~ z2wSX?)*icbf<^MVR_p?UK zYQ+N4QVbX^fuEFH2%DA+q&Odk-nKc*j;G^%FMgOdY&)QI6^u{!8)kR}2l`;p>#|ki zjQxyv?mczP*lmZ-pxs825=sjhl()e+K?kHdZ`V@fsNFxWKw29W#>PXaQDtws3gI95`NJE9{#9>^i2DAcXO^vA?IpDliCg7xb2Q2=e8T z8CVM{1lenup}QxFTO`|8o_T^GYcFLZytZSe%bV;r?|k)if#?_uT|nTz%cdL@$6`L#s1{vn%#a;x%iLY)9vz3(URCHW9CvwCvBuzZ=AKdB(7?S1txcPa_k97@txokRpQHq7X#i~5PNc6pkNVUv=}hW^v_QRGroqCCKOk1|xKw^D zhzePiq8KklqE$vhN1(s|!ABCcQfeDM9$WhRAJwVt8L|_QXcf zNFAxbEJ>28DBR&>)Sa#<6!j6k+(J`@d@9Wpw~Go{mc^>xX`ly1!&}okzksHukbO(< z{M?6r<2EHFw6Ac36b;T};5hz?ZNZ^7^iDIhON33mvuJ*SkHaqxV%LotL5uiOTiKuH zhd1@kFWtClrC#bf;E8Lk2&-aSW)_M^u=-6iK!+?PbB_Y+hzz{0cZzx;*F~iuH6g>y z5OGqgWG)a;rAH#}!T}(UWVtL9@~Ef~a$VFJxh^UUm_i@FQ_Wr>5#(M}LUfgQ)=CM) zCy3s8;0(M$d*De0Axr@}@Q{idVY}ItZ8%bx-uZpgeAQY3k+KkSG9gJfq_9T{SQ(Xz zG8ITY|B3YHM~?D-D83W9$ECI)=U=407YIaX?Q$Udb-C>O(}|2NRKKK*vJE~QXRQ>% z$7MQM*ZnZEs2#seX8WGlMwV;C736>pUP@L=prvRb;Zpy}L)kC11o>oxm50oRLk|bumE4i0-~*B2N}M>&999 zL5OT~Kj@l~W#Ci8ke?amSz1OLk*8roKFI@XiguN-0hQlw3W5k!*|cm6Z=A_5N^+jw z3>_>Qe<{+9vk!vQ(z9M1*Qm!ORutfUYLH3nOs2$Wmj#B?@sly zs-DdxJIL*)%kKqx$o!gVH61ys&UL}KVDoE^^qBCB&G?K}%=tUU6E=Uxk=hbI2K0MC z{pGEQ@rW7PIG;@Yy58q7rw_~_oAN0z1IG7R!1pbzyUgGYi?z@6G3#>2Vumib$Ml3H z`HZ7~!#AE8GJe29en1xl2$#}@isk&e&UnZKhpQ$01YDj$rWZhlAdfH|Gyaer^M`al zX57b=ETx4w0q)@waLS+K;$K1O6;M*f_b~Ms1niM$6|>K{%lbmA>UHkA;Vpm$jJKI~ zJr8G-y1xAlZxh~-@fI5@yjBZ%hF%{5Pan~$$L}+}$By+ngt|}o8RId_ILxaBgV_Ws zi(`m1f<&h{9x>j;v;91)>ppJ+OY~{Uw1FQ_^o-`7?hjL1V4txOZk>?eCra=!;|+i& z47$w|DZgh2x7dVxe`iJ)`sd$~6@Zg7ZnK=*7MrLCphKpIP9e}e=qiO!_^i$NO8`$9 zKf?4(P0!hLu=Bvz18~Op0P2KKCp;&2`5S;Q*b9&bitVu%zLt!zh=?=)BTkv&YW3}J t^!iO+W3>DhOIp+k)DEl`e(?B$FABx`A93yd50HKS78;ztr3ngU{{?8^o2CE& literal 4567 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 gx>^kIiC?xx#5&K2h_TJ_u=IBvT) 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�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

This command will speak: "This is some phonetic text input". - - +