Don't recognize space as a thousands separator if it's tab, newline, or multiple spaces. Don't recognuze space as a thousands separator if not followed by exactly 3 digits. Unrecognized HTML tags should not add a space (eg. <font> <b> inside a word). lang=hu: fixes for when numbers are ordinal. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@236 d46cf337-b52f-0410-862d-fd96e6ae7743master
@@ -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,6 +219,7 @@ 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 | |||
@@ -256,8 +258,10 @@ 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 | |||
@@ -271,6 +275,7 @@ 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 | |||
@@ -287,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 | |||
@@ -309,6 +316,7 @@ moorreesburg mur'e@sbWrx2 | |||
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 | |||
@@ -321,7 +329,6 @@ 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 | |||
@@ -335,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 | |||
@@ -346,6 +355,7 @@ viëtnam vj'Etnam | |||
wallonië val'o@ni@ | |||
washington _^_EN | |||
wellington wEliNt@n | |||
wimbledon _^_EN | |||
wolseley wulsli | |||
uganda ug'anda | |||
uruguay urugwaI | |||
@@ -360,6 +370,7 @@ ackerman ak@rman | |||
adam adam | |||
adriaan A:drijan | |||
adrie A:dri | |||
agnes _^_EN | |||
albertus alb'&rtWs | |||
alfred _^_EN | |||
allah %alA: | |||
@@ -367,6 +378,7 @@ 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 | |||
@@ -381,6 +393,7 @@ benjamin bEndZ@m@n | |||
bennett bEn@t | |||
bertha b&rta | |||
bester b'Est@r | |||
betjie bEici | |||
betsie bEtsi | |||
beyers beI@rs | |||
blignault blIx2n@Ut | |||
@@ -388,10 +401,12 @@ 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 | |||
@@ -404,10 +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 | |||
@@ -420,6 +437,7 @@ cronjé krOnj'e@ | |||
cussons kas@ns | |||
cynthia _^_EN | |||
dalene dal'e@n | |||
danielle dani;'&l | |||
darwin _^_EN | |||
daniël d'A:ni:@l | |||
david _^_EN | |||
@@ -466,7 +484,6 @@ flaubert _^_FR | |||
floris $1 | |||
fouché fuS'e@ | |||
fourie fur'i | |||
francina $2 | |||
francois franSwa | |||
françois frA~nsw'A: | |||
gabriël x2A:bri@l | |||
@@ -475,11 +492,13 @@ 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 | |||
@@ -501,6 +520,7 @@ ingrid iNgr@d | |||
isabel is@b&l | |||
iskariot isk'ariOt | |||
jaco jaku | |||
jakomina jakum'ina | |||
james _^_EN | |||
jane _^_EN | |||
Jean ZA~n $capital | |||
@@ -528,15 +548,22 @@ 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 | |||
lucretia lukr'i:Sja | |||
lukas lukas | |||
lulu lulu | |||
mabalêl mabal'&l | |||
mabel _^_EN | |||
mackintosh _^_EN | |||
madelene mad@l'e@n | |||
mbeki mbE:ki | |||
@@ -555,6 +582,8 @@ 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 | |||
@@ -579,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 | |||
@@ -588,6 +618,8 @@ 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 | |||
@@ -602,6 +634,7 @@ 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 | |||
@@ -611,6 +644,7 @@ retief r@tif | |||
rhodes _^_EN | |||
riekert rik@rt | |||
robert _^_EN | |||
robin _^_EN | |||
ronel run'&l | |||
rossouw r@s@U | |||
rousseau r@s@U | |||
@@ -639,6 +673,7 @@ stephanus st@fA:nWs | |||
stevenson _^_EN | |||
strauss straUs | |||
stockenström stOk@nstro@m | |||
stuart _^_EN | |||
suzanne suz'A:n | |||
suzette suz'Et | |||
tania tanja | |||
@@ -678,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 | |||
@@ -692,17 +729,21 @@ 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 | |||
toyota $2 | |||
venda vEnda | |||
vicks viks | |||
volvo vOlvu | |||
wimpy wImpi | |||
@@ -868,6 +909,7 @@ algaande $2 | |||
alge alx2@ | |||
algehele alx2@h,e@l@ | |||
allegro al'Egru | |||
allergene $3 | |||
almiskie $3 | |||
alom al_'Om | |||
alreeds $2 | |||
@@ -882,6 +924,7 @@ aspris $2 | |||
asseblief as@bl'if | |||
assessore $3 | |||
attraksie $2 | |||
aversie av'&rsi | |||
babelaas bab@lA:s | |||
barrikade $3 | |||
@@ -898,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 | |||
@@ -912,27 +957,36 @@ casino kas'i:n@U | |||
cedille s@dIl@ | |||
charisma kar'Isma | |||
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 | |||
@@ -948,9 +1002,11 @@ 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 | |||
@@ -965,10 +1021,12 @@ 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@ | |||
@@ -1017,6 +1075,7 @@ intens @nt'Ens | |||
intensiteit $4 | |||
ironieë irun'i:@ | |||
jantwak jantw'ak | |||
jawoord jA:vo@rt | |||
jupiter jupit@r | |||
@@ -1024,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 | |||
@@ -1047,6 +1110,7 @@ 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 | |||
@@ -1054,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@ | |||
@@ -1093,6 +1156,7 @@ nimmermeer $1 | |||
nirvana n@rvA:na | |||
nogeens nOx2_e@ns | |||
normale nOrm'A:l@ | |||
nousedae n@Us@dA: | |||
numeri nWm@ri | |||
oeuvre W:vr@ | |||
@@ -1142,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 | |||
@@ -1157,17 +1222,21 @@ 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 | |||
@@ -1180,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 | |||
@@ -1210,9 +1280,11 @@ 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 | |||
@@ -1221,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 | |||
@@ -1245,10 +1321,13 @@ verafgeleë f&rafx2@le@@ | |||
verby f@rbeI | |||
verdere f&rd@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@ | |||
@@ -1259,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 | |||
@@ -1284,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@ | |||
@@ -1,5 +1,5 @@ | |||
//maintainer: Willem van der Walt | |||
// email: [email protected] | |||
// email: [email protected] | |||
// tel: +27 12 8413996 | |||
// Meraka Institute, CSIR | |||
//With contributions by Christo de Klerk | |||
@@ -53,11 +53,13 @@ | |||
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 (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 | |||
@@ -82,7 +84,7 @@ | |||
@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 | |||
@@ -133,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 | |||
@@ -197,6 +201,7 @@ | |||
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 | |||
@@ -272,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 | |||
@@ -344,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 | |||
@@ -452,6 +459,7 @@ | |||
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. | |||
@@ -468,9 +476,11 @@ | |||
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 | |||
@@ -533,7 +543,9 @@ | |||
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 | |||
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 | |||
@@ -627,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 | |||
@@ -655,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 | |||
@@ -676,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 | |||
@@ -915,6 +931,7 @@ | |||
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 | |||
@@ -937,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 | |||
@@ -1230,7 +1248,7 @@ | |||
&) 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 | |||
@@ -1254,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 | |||
@@ -1358,6 +1380,7 @@ | |||
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 | |||
@@ -1458,7 +1481,7 @@ | |||
@) 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 | |||
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. | |||
@@ -1482,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 | |||
@@ -1540,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 | |||
@@ -1565,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 | |||
@@ -1603,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 | |||
@@ -1640,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 | |||
@@ -1674,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. | |||
@@ -1722,12 +1754,14 @@ | |||
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 | |||
@@ -1786,6 +1820,7 @@ | |||
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... | |||
@@ -1809,6 +1844,7 @@ | |||
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 | |||
@@ -1862,6 +1898,7 @@ | |||
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. | |||
@@ -2103,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 | |||
@@ -2147,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 | |||
@@ -2160,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 | |||
@@ -2186,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 | |||
@@ -2319,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 | |||
@@ -2357,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 | |||
@@ -2366,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.) | |||
@@ -2470,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. | |||
@@ -2523,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 | |||
@@ -2623,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 | |||
@@ -2689,12 +2738,13 @@ | |||
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 | |||
@@ -2708,15 +2758,18 @@ | |||
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 | |||
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 | |||
@@ -2745,6 +2798,7 @@ | |||
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 | |||
@@ -2804,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 | |||
@@ -2819,6 +2874,7 @@ | |||
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 | |||
mozzarella m%Ots%ar&l%a // fix stress and zz sound: Mozzarella(kaas) | |||
.group n | |||
@@ -2843,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 | |||
@@ -2853,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 | |||
@@ -3094,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 | |||
@@ -3127,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. | |||
@@ -3250,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 | |||
@@ -3337,9 +3398,11 @@ | |||
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 | |||
@@ -3427,6 +3490,7 @@ | |||
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 | |||
@@ -3435,6 +3499,7 @@ | |||
_) 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 | |||
@@ -3458,6 +3523,7 @@ | |||
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 | |||
@@ -3501,6 +3567,7 @@ | |||
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 | |||
@@ -3519,6 +3586,7 @@ | |||
.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. | |||
@@ -3583,12 +3651,15 @@ | |||
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. | |||
@@ -3627,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 | |||
@@ -3647,6 +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. | |||
provita pr%uvit%a // fix v sound: provita/-s and compounds | |||
.group q | |||
@@ -3684,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 | |||
@@ -3692,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) | |||
@@ -3753,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 | |||
@@ -3824,7 +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 | |||
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 | |||
@@ -3842,7 +3917,7 @@ | |||
@) 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 | |||
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 | |||
@@ -3930,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 | |||
@@ -3986,7 +4062,7 @@ | |||
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 | |||
@@ -4044,6 +4120,7 @@ | |||
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 | |||
@@ -4080,6 +4157,7 @@ | |||
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 | |||
@@ -4089,6 +4167,7 @@ | |||
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.) | |||
@@ -4123,6 +4202,7 @@ | |||
@) 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 | |||
@@ -4159,10 +4239,12 @@ | |||
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 | |||
@@ -4173,6 +4255,8 @@ | |||
_) 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 | |||
@@ -4198,6 +4282,7 @@ | |||
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 | |||
@@ -4221,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 | |||
@@ -4264,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 | |||
@@ -4297,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 | |||
@@ -4341,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 | |||
@@ -4348,16 +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 | |||
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 | |||
@@ -4486,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 | |||
@@ -4516,6 +4607,7 @@ | |||
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 | |||
@@ -4531,6 +4623,7 @@ | |||
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. | |||
@@ -4542,7 +4635,9 @@ | |||
_) 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 | |||
@@ -4598,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 | |||
@@ -4702,6 +4798,8 @@ | |||
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 | |||
@@ -4711,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 | |||
@@ -4732,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 | |||
@@ -4772,6 +4872,7 @@ | |||
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 (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 | |||
@@ -4831,8 +4932,10 @@ | |||
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 | |||
@@ -4925,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 | |||
@@ -4944,6 +5049,7 @@ | |||
wa (vrag vA: // long a sound: (bok-/krui)wavrag/-te | |||
_) wa (wy vA: // fix stress and a sound: // wawyd/wawydwakker, etc. | |||
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. | |||
@@ -4958,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 | |||
@@ -4974,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 | |||
@@ -4984,6 +5091,7 @@ | |||
@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 | |||
@@ -5014,6 +5122,7 @@ | |||
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 |
@@ -1,4 +1,4 @@ | |||
| |||
// This file is UTF8 encoded | |||
// Spelling-to-phoneme words for Danish | |||
@@ -27,7 +27,7 @@ _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 aks'aN gr'a:v | |||
_hac h'atS,Ek | |||
@@ -58,9 +58,9 @@ _#32 blank | |||
@ sn,&:bel'&: | |||
/ sgRVsdrai $max3 | |||
\ 'Vmvendsgr,VsdRai $max3 | |||
_, koma: | |||
_, k'oma: | |||
_; se:mi:ko:lVn | |||
_: ko:lVn | |||
_: k'o:lVn | |||
_. puNtum | |||
_? spWrgsmVlstajn | |||
_! udRVbstejn | |||
@@ -73,9 +73,16 @@ __ b'Onsdrai | |||
÷ divid'eReD meD | |||
= l'imeD | |||
# n'OmV | |||
§ paragR'af | |||
§ 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 | |||
@@ -235,6 +242,7 @@ z sEt | |||
// exceptions | |||
Alene al'en@ // alone | |||
egen a:j@n | |||
eget a:j@D | |||
egne a:in@ | |||
@@ -248,8 +256,9 @@ havde h'aD@ // had | |||
idet id'e // in so far as | |||
sagde sa@ // said | |||
sig sAi // oneself | |||
//slags sl+ags // sort, type | |||
slags sl'ags // sort, type | |||
tre tr'e // the number 3 | |||
@@ -1,4 +1,4 @@ | |||
| |||
// This file is UTF8 encoded | |||
// Spelling-to-phoneme rules for Danish | |||
@@ -29,6 +29,8 @@ | |||
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: | |||
@@ -90,6 +92,7 @@ | |||
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 | |||
@@ -180,6 +183,7 @@ | |||
æ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 | |||
@@ -196,6 +200,7 @@ | |||
plu) d (se | |||
ral) d (e | |||
sag) d (e | |||
sed) d (el D | |||
sku) d (t | |||
smu) d (s | |||
snu) d (e D | |||
@@ -570,13 +575,17 @@ foreta) g (e | |||
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 | |||
@@ -585,7 +594,9 @@ foreta) g (e | |||
mm m | |||
m (A m | |||
gour) met m'e | |||
kompli) ment maN | |||
kompli) ment (e ment | |||
regle) ment (e ment | |||
.group n | |||
@@ -604,6 +615,10 @@ foreta) g (e | |||
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 | |||
@@ -634,6 +649,7 @@ foreta) g (e | |||
sa) ng (e N | |||
se) ng (e N | |||
ti) ng (e N | |||
ti) ng (ent Ng | |||
træ) ng (e N | |||
arra) ng NS | |||
@@ -694,8 +710,8 @@ foreta) g (e | |||
.group r | |||
r r | |||
r (A R | |||
r R | |||
r (K r // not followed by a vowel | |||
ø) r V: | |||
Ae) r V | |||
&) rd (e_ r | |||
@@ -893,3 +909,4 @@ proven) u y | |||
@@ -90,8 +90,8 @@ x Iks | |||
// Numbers | |||
//======== | |||
_0 'nUl | |||
_1 _'aIn | |||
_1a _'aIns | |||
_1 _'aIns | |||
_1a _'aIn | |||
_2 'tsvaI | |||
_3 'd@-*aI | |||
_4 'fi:* | |||
@@ -672,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 |
@@ -361,6 +361,7 @@ | |||
@@) erisch @*IS | |||
&) erung (_ =@*UN | |||
echo ECo: | |||
_) e (ff %E | |||
l) e (g_ 'e: | |||
eih (_ aI | |||
@@ -673,6 +674,7 @@ | |||
// @) keit (_S4 kaIt | |||
// @) keiten (_S6 kaIt@n | |||
ko (e@ ko: | |||
kolleg k%Ole:g | |||
_) komme (C@ k%OmE | |||
_) ko (mp k%O | |||
@@ -791,6 +793,8 @@ | |||
_) 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: | |||
@@ -823,10 +827,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 | |||
@@ -975,6 +981,7 @@ | |||
t (chen_ t | |||
_) teen _^_EN | |||
_) tele (@ t,e:le: | |||
_) thermo tE*mo: | |||
tuerei (_ tu:@*'aI | |||
thrill _^_EN | |||
_pa) th t | |||
@@ -993,7 +1000,7 @@ | |||
u u: | |||
uh (+ u: | |||
uell u:'El | |||
ue y: | |||
u (e u: | |||
r) ue (_ u:@ | |||
t) ue (_ u:@ | |||
ue (_ 'y: |
@@ -11,8 +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 | |||
n N n^ p r s S t | |||
T tS v w x x2 z Z | |||
Dictionary ne_dict | |||
@@ -143,6 +143,17 @@ N n^ p Q R R2 s t | |||
T tS v v# w x z | |||
Dictionary hu_dict | |||
A a: E e: i i: o o: | |||
u u: Y y y: Y: | |||
- : 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 | |||
Dictionary fi_dict | |||
& &i &y a a2 ai au e | |||
@@ -164,8 +175,8 @@ W~ y Y | |||
: b d dZ f g h j | |||
k l m n N n2 n^ p | |||
p2 r R r2 s S t t2 | |||
t3 tS v w z Z z2 z3 | |||
p2 r r2 s S t t2 t3 | |||
tS v w z Z z2 z3 | |||
Dictionary grc_dict | |||
@@ -206,15 +217,12 @@ r. s S s. t T t. th | |||
th. v w x z | |||
Dictionary hu_dict | |||
Dictionary am_dict | |||
A a: E e: i i: o o: | |||
u u: Y y y: Y: | |||
@ a e i o u y | |||
- : b c d dZ f g | |||
h j J k l m n N | |||
n^ p r R R2 s S s2 | |||
t tS ts v z Z | |||
b d h l m q R s | |||
S t tS | |||
Dictionary hy_dict | |||
@@ -233,10 +241,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 | |||
@@ -273,6 +281,21 @@ k l m n N p R s | |||
S t tS v w x z Z | |||
Dictionary ro_dict | |||
@ @- @I @U a aI aU e | |||
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; | |||
Dictionary ku_dict | |||
8 a e E E# eI eU i | |||
@@ -333,6 +356,15 @@ S; t t. th th. tS v w | |||
z z. | |||
Dictionary nci_dict | |||
a e i o O | |||
: ? b c d f g j | |||
k l m n p R s S | |||
t tS v w x | |||
Dictionary nl_dict | |||
8 @ @- A a: E e: EI | |||
@@ -417,21 +449,6 @@ S s# s; t T tS ts v | |||
w x z Z | |||
Dictionary ro_dict | |||
@ @- @I @U a aI aU e | |||
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; | |||
Dictionary ru_dict | |||
8 @- a A e E E# E2 | |||
@@ -512,8 +529,8 @@ I i: o o: U u u: V | |||
: ; 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. th tS v | |||
w z z. | |||
s S s. t T t. th tS | |||
v w z z. | |||
Dictionary tr_dict |
@@ -305,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 | |||
@@ -599,6 +599,7 @@ archive A@kaIv | |||
archway $1 | |||
arena a2ri:n@ | |||
argue A@gju: | |||
aries e@ri:z | |||
arithmetic a2rITm@tIk | |||
arise a2raIz | |||
arisen a2rIz@n | |||
@@ -1306,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 | |||
@@ -1710,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 | |||
@@ -2419,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@ | |||
@@ -2580,6 +2583,7 @@ Baez baI'Ez | |||
Bambi bambi: | |||
Barack ba2rA:k | |||
Barbara bA@b@r@ | |||
Betsy bEtsI | |||
Boris b0rIs | |||
Brien braI@n | |||
Candace kandIs | |||
@@ -2630,6 +2634,7 @@ Graeme greI@m | |||
Graham greI@m | |||
Hadrian heIdri:@n | |||
Harriet hari@t | |||
Heidi haIdI | |||
Huw hju: | |||
Iain i:@n | |||
Ian i:@n | |||
@@ -3204,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 |
@@ -2815,7 +2815,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: | |||
@@ -2940,6 +2939,7 @@ | |||
_) in (k IN | |||
_) in (l In | |||
_) in (m In | |||
_) inn (K In | |||
_) inno (ce In@ | |||
_) inno (v In@ | |||
_) inn (um %In | |||
@@ -4839,6 +4839,7 @@ | |||
?3 n) ucle u:klI | |||
?3 n) uclear u:kli@3 | |||
@) u (da_ 'ju: | |||
b) u (ddh U | |||
u (guC V | |||
f) u (gal 'ju: | |||
ug (er_ u:g | |||
@@ -5410,7 +5411,7 @@ | |||
ž Z | |||
þ T | |||
ð D | |||
ñ n^ | |||
ñ _^_ES | |||
' |
@@ -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 |
@@ -37,6 +37,7 @@ | |||
_) d d | |||
m) d d | |||
n) d d | |||
r) d d | |||
.group e |
@@ -24,7 +24,7 @@ | |||
// 2006-11-18 Gilles Casse <[email protected]> | |||
// | |||
// Updated 2009-10-26 Michel Such <[email protected]> | |||
// Updated 2010-02-07 Michel Such <[email protected]> | |||
// | |||
// * Numbers, a few abbreviations and exceptions. | |||
// | |||
@@ -305,7 +305,7 @@ qq quelque $text | |||
qqs quelques $text | |||
ratp $abbrev | |||
riaa $abbrev | |||
riscos RiskoEs | |||
riscos riskoEs | |||
sap $abbrev | |||
scsi $abbrev | |||
sos $abbrev | |||
@@ -362,7 +362,7 @@ néanmoins $u+ | |||
toutefois $u+ | |||
afin afE~ $u+ $brk | |||
avant $u+ | |||
après $u+ | |||
après aprEz2 $u+ | |||
(temps en temps) tA~zA~tA~ | |||
ainsi $u+ | |||
alors alOr $u+ | |||
@@ -476,7 +476,7 @@ parmi $u+ | |||
pour $u+ | |||
autant $u+ | |||
tandis $u+ | |||
dès $u | |||
dès dEz2 $u | |||
entre $u+ | |||
entre $verb | |||
contre $u+ | |||
@@ -573,7 +573,7 @@ tel $u+ | |||
telle $u+ | |||
telles $u+ | |||
tout t'ut2 | |||
rien Ri-'E~n2 | |||
rien ri-'E~n2 | |||
// Letters which can be words | |||
//=========================== | |||
@@ -593,8 +593,8 @@ dessous d@su | |||
hareng _!arA~ | |||
pastis pastis | |||
poing pwE~ | |||
ressent R@s'A~t2 | |||
riz Ri | |||
ressent r@s'A~t2 | |||
riz ri | |||
sphincter sfE~ktEr | |||
sous $u+ | |||
sur $u+ | |||
@@ -687,7 +687,7 @@ queries kueri | |||
quit _^_en | |||
recorder ricordeur $text | |||
requiem rekw^ijEm | |||
revolver RevOlvEr | |||
revolver revOlvEr | |||
scan skan | |||
scanner skaner2 $verb | |||
scanner skanWr $noun | |||
@@ -723,7 +723,7 @@ cut kWt | |||
mazout mazut | |||
michael mikaEl | |||
out aut | |||
rut Ryt | |||
rut ryt | |||
scorbut scorbutt $text | |||
scout skut | |||
stout staut | |||
@@ -826,7 +826,7 @@ outlook autlu:k | |||
paint _^_en | |||
paper _^_en | |||
people _^_en | |||
redhat REdat | |||
redhat rEdat | |||
same _^_en | |||
sametime _^_en | |||
schubert SubEr | |||
@@ -897,4 +897,3 @@ venezuela venezyela | |||
wallis wAlis | |||
futuna futuna | |||
zimbabwe zimbabwe | |||
@@ -23,7 +23,7 @@ | |||
// 2006-11-18 Gilles Casse <[email protected]> | |||
// | |||
// Updated: 2009-11-20 Michel Such <[email protected]> | |||
// Updated: 2010-02-07 Michel Such <[email protected]> | |||
// | |||
// Letter classes: | |||
@@ -590,6 +590,7 @@ _m) e (ga e | |||
Z) ème i-Em | |||
è E | |||
ès E | |||
Ar) ès (_ Es | |||
m) ès (_ Es | |||
n) ès (_ Es | |||
@@ -1072,14 +1073,13 @@ C) oing (_ _^_en // going | |||
.group r | |||
_) r (A R | |||
_su) rr rr // surréaliste | |||
cou) rr rr // courrai | |||
mou) rr rr // mourrai | |||
cou) rr (i r // courrier | |||
r r // rien | |||
rr r | |||
_) radio (@P5 Radio | |||
_) radio (@P5 radio | |||
// group r: English section | |||
_) real _^_en |
@@ -6,6 +6,7 @@ | |||
_0 nullA | |||
_1 EJ | |||
_2 kEt:Y: | |||
_2a ke:t // for 200, 2000 | |||
_3 ha:R2om | |||
_4 ne:J | |||
_5 Yt | |||
@@ -25,6 +26,7 @@ _7X hEtvEn | |||
_8X n^oltsvAn | |||
_9X kilEntsvEn | |||
_0C sa:z | |||
_0M1 EzER2 | |||
_1M1 EzER2 | |||
_2M1 ke:tEzER2 | |||
@@ -35,12 +37,21 @@ _0M3 millia:R2d | |||
_1M3 EJmillia:R2d | |||
_2M3 ke:tmillia:R2d | |||
_0M4 billio: | |||
_1M4 billio: | |||
_2M4 ke:tbillio: | |||
_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 | |||
@@ -76,34 +87,61 @@ _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) | |||
_0-a A $alt2 | |||
_0-i Ei $alt2 | |||
_0-e E $alt2 | |||
_0-án a:n $alt2 | |||
_0-ára a:R2A $alt2 | |||
_0-ére e:R2E $alt2 | |||
_0-ra a:R2A $alt2 | |||
_0-re e:R2E $alt2 | |||
_0-én e:n $alt2 | |||
_0-ai Ai $alt2 | |||
_0-ei Ei $alt2 | |||
_0-től e:tY:l $alt2 | |||
_0-tól a:to:l $alt2 | |||
_0-ig e:ig $alt2 //special date ordinal numbers for example elsejéig, negyedikéig etc. | |||
_0-éről e:R2Y:l $alt2 | |||
_0-áról a:R2o:l $alt2 | |||
_0-ára a:R2A $alt2 | |||
_0-ától a:to:l $alt2 | |||
_0-ről e:R2Y:l $alt2 | |||
_0-ról a:R2o:l $alt2 | |||
_0-ével e:vEl $alt2 | |||
_0-ával a:vAl $alt2 | |||
_0-éig e:ig $alt2 | |||
_0-áig a:ig $alt2 | |||
_#-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 | |||
@@ -117,6 +155,14 @@ _0-áig a:ig $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 | |||
@@ -137,8 +183,6 @@ _0-áig a:ig $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 | |||
@@ -147,50 +191,23 @@ _0-áig a:ig $alt2 | |||
(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 | |||
(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 | |||
// with these suffixes, use [J:] not [J] | |||
(1-es) EJ:ES | |||
(1-et) EJ:Et | |||
(1-est) EJ:ESt | |||
(1-esét) EJ:ESe:t | |||
(1-esével) EJ:ESe:vEl | |||
(1-essel) EJ:ES:El | |||
(1-eseik) EJ:ESEik | |||
(1-eseikkel) EJ:ESEik:El | |||
(1-eseiket) EJ:ESEikEt | |||
(1-esekkel) EJ:ESEk:El | |||
(1-esek) EJ:ESEk | |||
(1-el) EJ:El | |||
(2-es) kEt:ES | |||
(2-est) kEt:ESt | |||
(2-essel) kEt:ES:El | |||
(2-őt) kEt:Y:t | |||
(2-esen) kEt:ESEn | |||
(2-esével) kEt:ESe:vEl | |||
(2-n) kEt:Y:n | |||
(2-esekkel) kEt:ESEk:El | |||
(2-eseket) kEt:ESEkEt | |||
(2-eseik) kEt:ESEik | |||
(2-esük) kEt:ESyk | |||
(3-as) ha:R2mAS | |||
(3-asának) ha:R2mASa:nAk | |||
(3-ason) ha:R2mASon | |||
(3-assal) ha:R2mAS:Al | |||
(3-asával) ha:R2mASa:vAl | |||
(3-ast) ha:R2mASt | |||
(3-astól) ha:R2mASto:l | |||
(3-ashoz) ha:R2mAShoz | |||
(3-at) ha:R2mAt | |||
(3-al) ha:R2om:Al | |||
(3-asok) ha:R2mASok | |||
(3-asoknak) ha:R2mASoknAk | |||
(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 | |||
@@ -199,36 +216,17 @@ _0-áig a:ig $alt2 | |||
(6-tal) hAt:Al | |||
(6-tól) hAt:o:l | |||
(6-tól) h'Atodika:to:l $alt2 | |||
(7-es) hEtES | |||
(7-est) hEtESt | |||
(7-esek) hEtESEk | |||
(7-eseket) hEtESEkEt | |||
(7-esekkel) hEtESEk:El | |||
(7-esbe) hEtESbE | |||
(7-esben) hEtESbEn | |||
(7-esük) hEtESyk | |||
(7-tel) he:t:El | |||
(7-el) he:t:El | |||
(7-től) he:t:Y:l | |||
(7-től) hEtEdike:tY:l $alt2 | |||
(7-essel) hEtES:El | |||
(7-esen) hEtESEN | |||
(7-eseknek) hEtESEknEk | |||
(7-et) hEtEt | |||
(7-em) hEtEm | |||
(10-es) tizES // use [i] not [i:] | |||
(10-est) tizESt | |||
(10-essel) tizES:El | |||
(10-esével) tizESe:vEl | |||
(10-en) tizEn | |||
(10-et) tizEt | |||
(7-tel) he:t:El | |||
(8-cal) n^olts:Al | |||
_10e tiz | |||
_20e hus | |||
(10-szer) ti:s:ER2 | |||
(10-szeres) ti:s:ER2ES | |||
(20-as) husAS // use [u] not [u:] | |||
(20-ast) husASt | |||
(20-assal) husAS:Al | |||
(20-asával) husASa:vAl | |||
(20-at) husAt | |||
//special number exceptions | |||
@@ -242,6 +240,7 @@ _0-áig a:ig $alt2 | |||
(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 | |||
@@ -281,6 +280,20 @@ 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 | |||
_acu e:lES | |||
@@ -300,7 +313,6 @@ _tld tildE | |||
// characters | |||
_#9 tAb | |||
_#13 vAlAmi | |||
_#32 so:kYz | |||
_cap n'AJ_| | |||
_?? kAR2AktEr||ko:d // unknown characters (change this) | |||
@@ -310,8 +322,9 @@ _?? kAR2AktEr||ko:d // unknown characters (change this) | |||
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 | |||
@@ -319,6 +332,7 @@ 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 | |||
@@ -326,7 +340,13 @@ 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 | |||
@@ -354,7 +374,22 @@ vö v'EZd||_'Yss2E | |||
// Articles | |||
a $u $strend2 // the | |||
az $u $strend2 | |||
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 | |||
@@ -375,12 +410,12 @@ 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 | |||
miatt $unstressend // because | |||
bár $u $pause // although | |||
habár $u $pause // although | |||
ha $u $pause // if | |||
@@ -405,14 +440,15 @@ is $u // also | |||
elöl $unstressend // in front of | |||
elől $unstressend | |||
elé $unstressend | |||
előtt $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 // after | |||
után $unstressend $alt3 // after | |||
alól $unstressend | |||
alá $unstressend | |||
@@ -437,15 +473,15 @@ neki $unstressend | |||
nekem $unstressend | |||
közül $unstressend | |||
közé $unstressend | |||
között $u | |||
között $u $alt3 | |||
an $u // so many persons | |||
as $u | |||
ba $unstressend // into | |||
ban $unstressend // in | |||
ban $u // in | |||
be $unstressend | |||
ben $unstressend | |||
ból $unstressend // from inside | |||
ből $unstressend | |||
ben $u | |||
ból $u // from inside | |||
ből $u | |||
e $u // in query, his/her | |||
ei $u // his her multiole | |||
en $u | |||
@@ -489,7 +525,14 @@ vel $unstressend | |||
ellen $unstressend // against | |||
//elé $u // before | |||
//óta $u // since | |||
ó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 | |||
@@ -535,7 +578,6 @@ tartják $unstressend | |||
erős $unstressend | |||
lenni $unstressend | |||
lennie $unstressend | |||
közt $u+ | |||
levegőjére $unstressend | |||
ad $unstressend | |||
kapják $unstressend | |||
@@ -833,7 +875,7 @@ velem $unstressend | |||
velünk $unstressend | |||
veletek $unstressend | |||
velük $unstressend | |||
közt $unstressend | |||
közt $unstressend $alt3 | |||
hiszik $unstressend | |||
hiszitek $unstressend | |||
önt $unstressend | |||
@@ -866,6 +908,17 @@ 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 | |||
@@ -885,7 +938,7 @@ vannak $unstressend | |||
voltam $u // to be, past | |||
voltál $u | |||
volt $u | |||
volt $u $alt3 | |||
voltunk $u | |||
voltatok $u | |||
voltak $u | |||
@@ -1013,7 +1066,7 @@ _¤ pe:nznEmjEl | |||
® bEjEJzEt: | |||
™ ve:djEJ | |||
_` tompA | |||
_ SokYz | |||
_ so:kYz | |||
_« bElSY:|bAl|ide:zY:jEl | |||
_» bElSY:|jobb|ide:zY:jEl | |||
_ la:JkYtY:jEl | |||
@@ -1057,10 +1110,12 @@ nato na:to: | |||
(end-of line) u:jS,oR2 | |||
$textmode | |||
MSZP emeszpé | |||
SZDSZ eszdéesz | |||
egyezség eggyesség | |||
@@ -1074,6 +1129,30 @@ egyezség eggyesség | |||
(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 | |||
@@ -33,6 +33,10 @@ | |||
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 | |||
@@ -64,8 +68,8 @@ | |||
kilen) c (csatorn ts | |||
ner) c (stóla ts | |||
kavi) cs (zátony tS | |||
?!2 cherbourg SER2buR2g | |||
har) c (cselek ts | |||
@@ -80,7 +84,7 @@ hierar) ch (i h | |||
mün) ch (en h | |||
maso) ch (istA h | |||
monar) ch (i h | |||
_pe) ch h | |||
_pe) ch h: | |||
szé) ch tS | |||
_zi) ch (y tS | |||
_szé) che (ny tSe: | |||
@@ -93,6 +97,8 @@ hierar) ch (i h | |||
ar) ch (ivál h | |||
?!2 _) church (il tSYR2tS | |||
?!2 bu) ch (enwald h | |||
?!2 da) ch (au h | |||
.group d | |||
d d | |||
@@ -146,11 +152,18 @@ hierar) ch (i h | |||
föl) d (sáv d | |||
dühtől dytY:l | |||
rövi) d (zárlat d | |||
sarja) d (zik d | |||
nyála) d (z 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 | |||
.group dz | |||
fogó) dz (kod ts | |||
@@ -166,32 +179,37 @@ szedelő) dz z | |||
tapogató) dz z | |||
ó) dz (kod ts | |||
villó) dz z | |||
e) dz (ő dz | |||
e) dz (és dz | |||
e) dz (ő dz: | |||
e) dz (és dz: | |||
kére) dz ts | |||
mentegető) dz z | |||
dz dz | |||
A) dz (A dz | |||
dz dz: | |||
A) dz (A dz: | |||
dzs dZ | |||
A) dzs dZ: | |||
dz dz | |||
dz dz: | |||
C) dzs dZ | |||
A) dzs (A dZ: | |||
borsó) dz z | |||
beszé) dz (avar dz | |||
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 | |||
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: | |||
@@ -242,7 +260,8 @@ 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 | |||
@@ -262,7 +281,7 @@ ritkasá) g (gyűjt g | |||
e) gyj (elentésű Jj | |||
lá) gy (sá J | |||
gyön) gy (sor J | |||
_minde) gy (ik J: | |||
_minde) gy (ik J | |||
na) gysz (a Js | |||
na) gy (sokára J | |||
@@ -272,7 +291,7 @@ _minde) gy (ik J: | |||
ho) gy (se J | |||
na) gy (ság J | |||
he) gy (ség J | |||
e) gy (ség J | |||
e) gys (ég J|S | |||
e) gy (sarkú J | |||
e) gy (sejtű J | |||
e) gy (sínű J | |||
@@ -281,6 +300,29 @@ _minde) gy (ik 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 | |||
.group h | |||
h h | |||
@@ -301,6 +343,10 @@ _minde) gy (ik J: | |||
t) í (zen i | |||
t) í (zet i | |||
v) í (zen i | |||
sz) í (vatás i | |||
v) í (zére i | |||
.group j | |||
j j | |||
@@ -325,6 +371,7 @@ _minde) gy (ik J: | |||
kossuth koSu:t | |||
kossutht koSu:t: | |||
készségg ke:SSe:g: | |||
_a) kk (reditál k | |||
.group l | |||
l l | |||
@@ -367,6 +414,8 @@ keresztü) l (j 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 | |||
@@ -375,11 +424,14 @@ keresztü) l (j l | |||
mauser mAuzER2 | |||
mosquito moskito: | |||
mosquitó moskito: | |||
messerschmitt mEs:ER2Smit: | |||
?!2 hi) mm (ler m | |||
.group n | |||
n n | |||
n (g N | |||
n (k N | |||
n (g n | |||
n (k n | |||
n (p m | |||
ny n^ | |||
nny n^n^ | |||
@@ -415,7 +467,6 @@ negyve) n (yard n | |||
ö) n (járó n | |||
tulajdo) n (jog n | |||
ko) nn (ektor n //connector word, we spokening one n letter, not two n letter | |||
me) nj (_S2 n^ | |||
be) nn (szülött n | |||
éle) n (jár n | |||
magá) n (jelleg n | |||
@@ -426,6 +477,9 @@ tulajdo) n (jog 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 | |||
@@ -467,7 +521,7 @@ tulajdo) n (jog n | |||
_) richá (rd R2iCa: | |||
reichsmarschall R2EjsmAR2SAl: | |||
?!2 _) roose (velt R2u:z | |||
?!2 _) reichs R2Ejs | |||
.group s | |||
s S | |||
@@ -494,13 +548,15 @@ juventu) s s //a radio station name | |||
ó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 (olini ss2 | |||
mu) ss (olin ss2 | |||
_má) ssz (ó Ss | |||
mennydörgé) ssz (erű Ss | |||
robbaná) ss S: | |||
@@ -656,6 +712,11 @@ motoro) ssz (emüveg 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 | |||
@@ -684,7 +745,7 @@ kenyere) szs (ák SZ | |||
li) sztsz (erű st|s | |||
tava) sz (ára s | |||
rongyo) szs (ák SZ | |||
para) sztsz (ek st|s | |||
.group t | |||
@@ -755,7 +816,7 @@ vörösmar) ty ti | |||
á) t (sza t | |||
á) tj (ár t|j | |||
á) t (szö t | |||
á) t (sző t | |||
á) tsz (ő t|s | |||
á) t (szú t | |||
á) t (szű t | |||
á) t (jut t | |||
@@ -816,7 +877,7 @@ passzá) t (szél t | |||
épüle) t (sarok t | |||
mene) t (sor t | |||
skó) t (sapka t | |||
lé) t (jogosultsága t | |||
lé) t (jogosultság t | |||
bérle) t (jegy t | |||
csapa) t (játék t | |||
ese) t (jog t | |||
@@ -838,6 +899,21 @@ négyze) t (centi t | |||
á) 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 | |||
.group ts | |||
ts (_S2 tS //general rule with word end of ts letters | |||
@@ -888,6 +964,7 @@ négyze) t (centi t | |||
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: | |||
@@ -909,6 +986,12 @@ indula) tsz (ó 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: | |||
.group u | |||
u u | |||
@@ -916,6 +999,8 @@ indula) tsz (ó t|s | |||
.group ú | |||
ú u: | |||
h) ú (szan u | |||
h) ú (szas u | |||
h) ú (szat u | |||
.group ü | |||
ü y | |||
@@ -927,6 +1012,7 @@ indula) tsz (ó t|s | |||
ű 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 | |||
@@ -1030,9 +1116,17 @@ 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 | |||
.group | |||
$ dolla:R2 | |||
ä E | |||
æ E |
@@ -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 |
@@ -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 @@ | |||
** | |||
**) * (_ _:: | |||
@@ -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: | |||
@@ -147,6 +147,7 @@ _tld t'Ild@2 | |||
// abbreviations | |||
//************** | |||
ooxml $abbrev | |||
// articles | |||
@@ -305,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 |
@@ -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 _ | |||
@@ -196,7 +196,6 @@ tamil தமிழ் $text | |||
பாகவதம் $alt | |||
பகவத் $alt | |||
பங்கம் $alt | |||
பீடி $alt | |||
பீதி $alt | |||
பேகம் $alt | |||
பார்லி $alt | |||
@@ -210,6 +209,29 @@ tamil தமிழ் $text | |||
பாக்கி $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] | |||
@@ -220,8 +242,6 @@ tamil தமிழ் $text | |||
தயாநிதி $alt | |||
தயாளு $alt | |||
துந்துவி $alt | |||
தயவு $alt | |||
தடால் $alt | |||
திக் $alt | |||
தடக் $alt | |||
தீக்ஷை $alt | |||
@@ -234,16 +254,32 @@ tamil தமிழ் $text | |||
திக்கற்ற $alt | |||
தானு $alt | |||
திட $alt | |||
தேவ $alt | |||
தோ $alt | |||
தினசரி $alt | |||
தரும $alt | |||
தொப் $alt | |||
தொப்பென்று $alt | |||
தொப்னு $alt | |||
திக்கெட்டும் $alt | |||
தேவா $alt | |||
// initial ட | |||
டார்ச் t.a:rtS | |||
// initial ச as [tS] | |||
சீ tSi: | |||
சே tSe: | |||
சீ $alt | |||
சே $alt | |||
சீசீ tSi:tSi: | |||
சீச்சீ $alt | |||
சிட்டாய் $alt | |||
சேச்சே $alt | |||
கக $alt // initial க as [g] | |||
கனம் $alt | |||
கணம் $alt | |||
கிலி $alt | |||
கில்லி $alt | |||
காந்தி $alt | |||
@@ -251,8 +287,6 @@ tamil தமிழ் $text | |||
கோமதி $alt | |||
கயா $alt | |||
காயத்ரி $alt | |||
கங்கை $alt | |||
கங்கா $alt | |||
கட $alt | |||
கோ $alt | |||
கதி $alt | |||
@@ -260,7 +294,38 @@ tamil தமிழ் $text | |||
கச்சாமி $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 |
@@ -26,6 +26,9 @@ | |||
// க is k when preceded by these | |||
.L01 ஷ் ஸ் ட் | |||
// ப is p when preceded by these | |||
.L02 ட் ற் ல் ஷ் ஸ் | |||
// consonants | |||
@@ -38,7 +41,7 @@ | |||
_) க kV | |||
_) க (B k | |||
_) க (T gV // if word has $alt attribute in ta_list | |||
_) க (BT g // $alt | |||
_) க (BT+ g // $alt | |||
க்க kkV | |||
க்க (B kk | |||
ற்) க _kV | |||
@@ -47,6 +50,7 @@ | |||
L01) க (B k | |||
க (ிரு k | |||
க (ூட k | |||
ங்) க (ொ k | |||
க (ீத g | |||
க (ஜ gV | |||
@@ -63,7 +67,6 @@ | |||
_) க (ாண்டாமிருக g | |||
_) க (ோந்து g | |||
_) க (ாந்த g | |||
_) க (ுண்ட g | |||
_) க (ோபுர g | |||
_) க (ுகன g | |||
_) க (ணபதி gV | |||
@@ -71,7 +74,6 @@ | |||
_) க (ோதுமை g | |||
_) க (ுகை g | |||
_) க (ோஷ g | |||
_) க (ுண g | |||
_) க (தியில் gV | |||
_) க (டிகார gV | |||
வி) க்ட (ோரியா kt. // victoria | |||
@@ -110,6 +112,39 @@ | |||
_) க (ாண்டீப g | |||
_) க (ர்வ gV | |||
_) க (ுருவா g | |||
_) க (னம gV | |||
_) க (னத் gV | |||
_) க (ுண்டு g | |||
_) க (ுண்டன g | |||
_) க (ுண்டர g | |||
_) க (ுண்டடி g | |||
_) க (ுண்டாக g | |||
_) க (ுண்டாய g | |||
_) க (ுணம g | |||
_) க (ுணங் g | |||
_) க (ுணத் g | |||
_) க (ண்டங் gV | |||
_) க (ுண்டம்மா g | |||
_) க (டப்பாரை gV | |||
_) க (ோலிக g | |||
_) க (ோலிய g | |||
_) க (ானம g | |||
_) க (ானங் g | |||
_) க (ானத்த g | |||
_) க (திகலங் gV | |||
_) க (ுப்பென்ற g | |||
_) க (ுபீர g | |||
_) க (ும்பல g | |||
_) க (ும்மிருட்ட g | |||
_) க (ப்பென்ர gV | |||
_) க (ங்கை gV | |||
_) க (ங்கா gV | |||
_) க (ுபுக் g | |||
_) க (லாட்டா gV | |||
_) குண்டாந்த (டி gun.d.a:ntV | |||
_) க (லீர gV | |||
_) க (ோல்மால g | |||
_) க (வாஸ்கர gV | |||
_கல்) க (ி k | |||
_கல்) க (ண்ட kV | |||
@@ -117,8 +152,20 @@ | |||
கொல்) க (த்தா kV | |||
கோயில்) க (ாளை k | |||
_) குல்க (ந்த gulkV | |||
_ராஜ) க (ும k | |||
_ராஜ) க (ுல k | |||
க (வி kV | |||
க (ுல k | |||
க (ுமார k | |||
தின) க (ர kV | |||
பிரபா) க (ர kV | |||
சுதா) க (ர்_ kV | |||
சுதா) க (ரிட kV | |||
சுதா) க (ரின kV | |||
மது) க (ர kV | |||
திவா) க (ர kV | |||
_) கி (ராம g | |||
_) கி (ரகண g | |||
நற்) க (ுண g | |||
.group ங | |||
@@ -131,6 +178,8 @@ | |||
ச (B s | |||
_) ச sV | |||
_) ச (B s | |||
_) ச (T tSV | |||
_) ச (BT tS | |||
ச்ச tS:V | |||
ச்ச (B tS: | |||
ட்) ச tSV | |||
@@ -139,14 +188,19 @@ | |||
ற்) ச (B tS | |||
ஞ்) ச dZV | |||
ஞ்) ச (B dZ | |||
ச் (_ tS | |||
ச் (_N tS | |||
ச்_) ச tSV // previous word ends in ச் | |||
ச்_) ச (B tS | |||
_) ச (ெண்ட tS | |||
_) சாம்ப (ியன tSa:mp | |||
_) ச (ிட் tS | |||
_) ச (ின் tS | |||
_) ச (ிட்டு tS | |||
_) ச (ிட்டாட்ட tS | |||
_) ச (ிட்டி tS | |||
_) ச (ிட்ல tS | |||
_) ச (ேரி tS | |||
_) ச (ெஸ் tS | |||
_) ச (ப்பாத்தி tSV | |||
_) ச (ெட்டியார tS | |||
@@ -160,14 +214,21 @@ | |||
_) ச (ித்ரா tS | |||
_) ச (ெல்லம tS | |||
_) ச (துர் tSV | |||
ச (ந்திர tSV | |||
வி) ச (ித்திர tS | |||
சு) சித (்ரா tSit | |||
_) ச (ிட்டாக tS | |||
_) சிரு (ஷ்டி sri | |||
சீ (னிவாச sri: | |||
ச (ாந்தி s. | |||
ச (ண்மு s.V | |||
சங்க (ர s.VNkV | |||
ச (ண்பக s.V | |||
ச (ெண்பக s. | |||
சு (வாரஸ்ய s | |||
சு (வாமி s | |||
சி (ரம s | |||
.group ஜ | |||
@@ -193,6 +254,17 @@ | |||
ிங்) ட (ன் 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 | |||
.group ண | |||
ண n.V | |||
@@ -205,13 +277,15 @@ | |||
_) த tV | |||
_) த (B t | |||
_) த (T dV // if word has $alt attribute in ta_list | |||
_) த (BT d // if word has $alt | |||
_) த (BT+ d // if word has $alt | |||
த்த ttV | |||
த்த (B tt | |||
க்) த tV | |||
க்) த (B t | |||
ஸ்) த tV | |||
ஸ்) த (B t | |||
ப்) த tV | |||
ப்) த (B t | |||
// exceptions, த as [d] | |||
_) த (ர்ம dV | |||
@@ -220,8 +294,10 @@ | |||
_) த (ெய்வ d | |||
_) த (ுஷ் d | |||
_) த (க்ஷிணா dV | |||
_) த (ண்ட dV | |||
_) த (ண்டவாள tV | |||
_) த (ண்டன dV | |||
_) த (ண்டம dV | |||
_) த (ண்டத் dV | |||
_) த (ண்டக் dV | |||
_) த (ருமி dV | |||
_) த (ர்பை dV | |||
_) த (ாவா d | |||
@@ -243,6 +319,7 @@ | |||
_) த (ிரவிய d | |||
_) த (ூப d | |||
_) த (ீப d | |||
_) த (ீப்ப t | |||
_) த (ைரிய d | |||
_) த (ிடீர d | |||
_) த (ிடப d | |||
@@ -251,9 +328,11 @@ | |||
_) த (ிரவ d | |||
_) த (ிடீ d | |||
_) த (ிவச d | |||
_) த (ியான d | |||
_) தி (யான dj | |||
_) த (ானிய d | |||
_) த (ுக்க d | |||
_) த (ுக்கிரி t | |||
_) த (ுக்கடா t | |||
_) த (ிகில d | |||
_) த (ூம d | |||
_) த (ாவணி d | |||
@@ -275,6 +354,7 @@ | |||
_) த (டியர dV | |||
_) த (ிக்கு d | |||
_) த (ிக்கு_வாய t | |||
_) த (ிக்கு_முக்க t | |||
_) த (ிக்கில d | |||
_) த (னபால dV | |||
_) த (னசேகரன dV | |||
@@ -292,7 +372,9 @@ | |||
_) த (ட்சிண dV | |||
_) த (ன்ராஜ dV | |||
_) த (ாராபுர d | |||
_) த (டி_மாட dV | |||
_) த (டிJ_மாட dV | |||
_) த (டிJ_புத்தக dV | |||
_) த (டிJ_பயல dV | |||
_) த (ேவன d | |||
_) த (ேவி d | |||
_) த (ேவர்க d | |||
@@ -314,8 +396,36 @@ | |||
_) த (ேவேந் d | |||
_) த (ரிசி dV | |||
_) த (ுரை d | |||
_) த (ேவ d | |||
_) த (ூசி d | |||
_) த (ம்பதி dV | |||
_) த (ிவான d | |||
_) த (ினேஷ d | |||
_) த (ாராள d | |||
_) து (வேச d // dv | |||
_) து (வேஷ d // dv | |||
_) த (ருமன dV | |||
_) த (ருமர dV | |||
_) த (ண்டபாணி dV | |||
_) த (ண்டாயுதபாணி dV | |||
_) த (ண்டித் dV | |||
_) த (ரிசனங் dV | |||
_) த (ேவகி d | |||
_) த (கி dV | |||
_) த (ாயாதி d | |||
_) த (ுட்ட d | |||
_) த (ொம் d | |||
_) த (டபுடல dV | |||
_) த (டால dV | |||
_) த (ம்பிடி dV | |||
_) த (ிக்கை d | |||
_) த (ிக்கே d | |||
_) த (ேவாமிருத d | |||
_) த (ுச்சம d | |||
_) த (ொபுக் d | |||
_) த (ினந் d | |||
_) த (யவ dV | |||
_) த (ிவாகர d | |||
யு) த்த ddV | |||
யு) த்த(B dd | |||
@@ -323,6 +433,7 @@ | |||
பு) த்த (ியி dd | |||
பு) த்த (ர ddV | |||
பு) த்த (ன ddV | |||
சமு) த்த (ிர dd | |||
_சாந்) த (ி t | |||
_சும) த (ி t | |||
@@ -339,6 +450,9 @@ | |||
பிரபாவ) த (ி t | |||
_கோம) த (ி t | |||
_பிர) த (ீ t | |||
பவி) த (்ரா t | |||
நி) த (்ய t | |||
சி) த (்ரா t | |||
_) திரு (ஷ்டி dri | |||
_) திரு (திரா dri | |||
@@ -364,14 +478,13 @@ _கோம) த (ி t | |||
ப (B b | |||
_) ப pV | |||
_) ப (B p | |||
_) ப (T bV // if word has $alt attribute in ta_list | |||
_) ப (BT b // if word has $alt | |||
_) ப (T+ bV // if word has $alt attribute in ta_list | |||
_) ப (BT+ b // if word has $alt | |||
ப்ப ppV | |||
ப்ப (B pp | |||
ட்) ப pV | |||
ட்) ப (B p | |||
ற்) ப pV | |||
ற்) ப (B p | |||
L02) ப pV | |||
L02) ப (B p | |||
குஷ்) ப (ு b | |||
று) ப _pV | |||
று) ப(B _p | |||
@@ -383,22 +496,21 @@ _கோம) த (ி t | |||
த) ப (B b | |||
@) பத (ி pVt | |||
ன்) பத (ி bVd | |||
ப (ுர p | |||
ப (ால p | |||
ப (ாள p | |||
ம்) ப (ா b | |||
ப (ூர p | |||
// _) ப (ால b | |||
_) ப (ால் p | |||
_) ப (ாலின் p | |||
_) ப (ாலை p | |||
// _) ப (ாலில் p | |||
_) ப (ாலுடன் p | |||
// _) ப (ாலினுடைய p | |||
_) ப (ாலாபிஷேக p | |||
_) ப (ாலு b | |||
_) ப (ாலும்_ p | |||
_) ப (ானு b | |||
_) ப (ீம b | |||
_) ப (காசுர bV | |||
@@ -414,7 +526,6 @@ _கோம) த (ி t | |||
_) பக் (த bVk | |||
_) ப (லம bV | |||
_) ப (லவான bV | |||
_) ப (ிராமண b | |||
_) ப (ிரம்ம b | |||
_) ப (ம்பர bV | |||
_) ப (லூன bV | |||
@@ -493,7 +604,50 @@ _கோம) த (ி t | |||
_) ப (லிய bV | |||
_) ப (ோதித் b | |||
_) ப (ோதன b | |||
_) ப (ூட்ஸ b | |||
_) ப (ுத்திய b | |||
_) ப (ுத்திக் b | |||
_) ப (ுத்திசாலி b | |||
_) ப (ேஜார b | |||
_) ப (ேதி b | |||
_) ப (த்திரமா bV | |||
_) ப (ேலன்ஸ b | |||
_) ப (ந்தோபஸ்த bV | |||
_) ப (ெல் b | |||
_) ப (ாதகம b | |||
_) ப (ீராமணர b | |||
_) ப (ிரித்தானி b | |||
_) ப (ாதிப்ப b | |||
_) ப (ாதிக்க b | |||
_) ப (லகீன bV | |||
_) ப (லஹீன bV | |||
_) ப (ட்சண bV | |||
_) ப (ீடி b | |||
_) ப (ீடிகை p | |||
_) ப (ீடித்த p | |||
_) ப (ெட்ரூம b | |||
_) ப (ாத்ரூம b | |||
_) ப (ாபுவ b | |||
_) ப (யபக்தி bV | |||
_) ப (ாவனை b | |||
_) ப (ேஷ b | |||
_) ப (ாத்யதை b | |||
_) ப (ில்டிங் b | |||
_) ப (ால்ய b | |||
_) ப (ாவனா b | |||
_) ப (லங் bV | |||
_) ப (ட்டரி bV | |||
_) ப (ட்டரு bV | |||
_) ப (ட்டன bV | |||
_) ப (லப்படு bV | |||
_) ப (ாரத்த b | |||
_) ப (ந்துக்கள bV | |||
_) ப (ந்துவ bV | |||
_) பலாத்க (ார bVla:dk | |||
_) ப (லராம bV | |||
_) ப (ங்கார bV | |||
_) ப (லசாலி bV | |||
_) ப (ூதாகார b | |||
கோ) ப (ி p | |||
முரன்) ப (ாட p | |||
@@ -501,6 +655,27 @@ _கோம) த (ி t | |||
முன்) ப (கல pV | |||
நன்) ப (கல pV | |||
பின்) ப (கல pV | |||
கல்) ப (னா pV | |||
ப (ாதை p | |||
ப (டி pV | |||
ம்) ப (ுரா b | |||
இன்ஸ்) ப (ெக்டர p | |||
எதிர்) ப (ார p | |||
ப (ோது p | |||
ப (ோதிலும் p | |||
ப (ோதும் p | |||
எழும்) ப (ூர b | |||
நாலா) ப (ுற p | |||
ப (ோதும்_+ p | |||
ப (ோதே_+ p | |||
ப (ோல்_ p | |||
// 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 | |||
_) பி (ரம்மன b | |||
_) பி (ராமணன b | |||
@@ -539,7 +714,32 @@ _கோம) த (ி t | |||
_) பி (ரதேச p | |||
_) பி (ரசித்தி p | |||
_) பி (ரம்ம b | |||
_) பி (ரமிப்ப b | |||
_) பீ (ராமண b | |||
_) பி (ரித்தானி b | |||
_) பி (ரதர்_ b | |||
_) பி (ராப் p | |||
_) பி (ரத p | |||
_) பி (ரவேசி p | |||
_) பி (ரசவ p | |||
_) பி (ரசங் p | |||
_) பி (ரளய p | |||
_) பி (ராமண b | |||
_) பி (ரார்தி p | |||
_) பி (ரோகிதர p | |||
_) பி (ரஸ்தா p | |||
_) பி (ரஜ p | |||
_) பி (ரமை b | |||
_) பி (ரமுகர p | |||
_) பி (ரயோசன p | |||
_) பி (ரவாக p | |||
_) பி (ரமித் b | |||
_) பிரச (்னை prVtS | |||
_) பி (ரியர p | |||
_) பி (ரவேச p | |||
_) பி (ரயோக p | |||
_) பி (ரக்ஞை p | |||
_) பி (ரயத்தன p | |||
// musical notes | |||
சா) ப (ா p | |||
@@ -574,8 +774,21 @@ _கோம) த (ி t | |||
_த) ப (ால 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 | |||
@@ -617,6 +830,7 @@ _கோம) த (ி t | |||
.group வ | |||
வ vV | |||
வ (B v | |||
_) வி (யாபார v | |||
.group ஶ | |||
@@ -660,6 +874,9 @@ _கோம) த (ி t | |||
இ i | |||
_) இ (ரா // silent before 'raa' | |||
_) இ (ராக i | |||
_) இ (ரான i | |||
_) இ (லட்சிய // silent | |||
ஈ i: | |||
@@ -1,4 +1,4 @@ | |||
58 phoneme tables | |||
59 phoneme tables | |||
new total | |||
base 99 99 | |||
consonants 9 107 | |||
@@ -15,12 +15,13 @@ consonants 9 107 | |||
de 32 126 | |||
eo 13 111 | |||
jbo 2 111 | |||
nci 3 120 | |||
fi 40 130 | |||
fr 56 138 | |||
fr 55 138 | |||
fr_ca 11 138 | |||
hi 58 145 | |||
ta 20 148 | |||
hu 23 115 | |||
hu 24 116 | |||
lv 29 122 | |||
nl 24 119 | |||
pl 20 113 | |||
@@ -45,7 +46,7 @@ consonants 9 107 | |||
ru 39 130 | |||
vi 41 136 | |||
zhy 41 133 | |||
zh 62 150 | |||
zh 64 150 | |||
sw 12 108 | |||
tr 18 123 | |||
ku 18 124 | |||
@@ -81,6 +82,7 @@ d/d [d] base | |||
[d] base2 | |||
[d] fi | |||
[d] fr | |||
[d] hu | |||
[d] pl | |||
[d;] pl | |||
[d] hr | |||
@@ -91,6 +93,7 @@ d/d_ [d] base | |||
[d] fi | |||
[d] fr | |||
[d.] hi | |||
[d] hu | |||
[d] pl | |||
[d;] pl | |||
[d] hr | |||
@@ -103,6 +106,7 @@ d/dr [*] base | |||
[d] fr | |||
[d.] hi | |||
[dh.] hi | |||
[d] hu | |||
[d] pl | |||
[d;] pl | |||
[d] hr | |||
@@ -122,6 +126,7 @@ d/xd [d] base | |||
[d.] hi | |||
[dh] hi | |||
[dh.] hi | |||
[d] hu | |||
[d] pl | |||
[d] hr | |||
[d] sr | |||
@@ -238,23 +243,32 @@ j2/j2o [;] base | |||
j2/j2u [;] base | |||
j2/xj2 [;] base | |||
j/_j [j] base | |||
[j] zh | |||
j/j_ [j] base | |||
[j] de | |||
[j] zh | |||
j/j@ [j] base | |||
[j] de | |||
[j] zh | |||
j/ja [j] base | |||
[j] de | |||
[j] zh | |||
j/je [j] base | |||
[j] de | |||
[j] zh | |||
j/ji [j] base | |||
[j] de | |||
[j] zh | |||
j/jo [j] base | |||
[j] de | |||
[j] zh | |||
j/_j_short [j] de | |||
j/ju [j] base | |||
[j] de | |||
[j] zh | |||
j/xj [j] base | |||
[j] de | |||
[j] zh | |||
klatt/b [b] base | |||
klatt/bh [B] base | |||
klatt/dz_pzd [J] base | |||
@@ -299,6 +313,7 @@ l/_l [l] base | |||
[l] fr | |||
[l/] fr | |||
[l] hu | |||
[l] zh | |||
l/l_ [l/] base | |||
[l/3] base | |||
[l/] fr | |||
@@ -306,7 +321,7 @@ l/l_@ [l/3] base | |||
[W] fr | |||
[Y] fr | |||
[l/] fr | |||
l/l@ [] base | |||
l/l@ [] base | |||
[L] base | |||
[W] fr | |||
[Y] fr | |||
@@ -333,14 +348,14 @@ l/L2_oL [l/2] base | |||
l/L2_uL [l/2] base | |||
l/l_3 [l/] de | |||
l/l_4 [ll] sq | |||
l/la [] base | |||
l/la [] base | |||
[L] base | |||
[a] fr | |||
[l] fr | |||
l/l_a [l/3] base | |||
[l/] fr | |||
[wA] fr | |||
l/le [] base | |||
l/le [] base | |||
[L] base | |||
[l] fr | |||
l/l_e [l/3] base | |||
@@ -349,22 +364,23 @@ l/L_eL_af [&] af | |||
[&:] af | |||
l/l_front [L] sq | |||
l/l_front_ [l/4] sq | |||
l/li [] base | |||
l/li [] base | |||
[L] base | |||
[l] fr | |||
[l] zh | |||
l/l_i [l/3] base | |||
[l/] fr | |||
[i] sq | |||
l/l_long [l] base | |||
[l] fr | |||
l/lo [] base | |||
l/lo [] base | |||
[L] base | |||
[l] fr | |||
l/l_o [l/3] base | |||
[l/] fr | |||
[o2] fr | |||
l^/l_rfx [l.] base | |||
l/lu [] base | |||
l/lu [] base | |||
[L] base | |||
[l] fr | |||
[w^i] fr | |||
@@ -495,12 +511,12 @@ r3/r_trill.wav [R2] base | |||
[r*] sr | |||
[x] pt | |||
r3/r_uvl [r"] base | |||
[r] fr | |||
[r/2] fr | |||
r3/r_uvl.wav [r"] base | |||
r3/rx [*] base | |||
[r/] base | |||
[r/] af | |||
[r] fr | |||
[r/2] fr | |||
[R] fr_ca | |||
[x] pt_pt | |||
[*;] ro | |||
@@ -1407,6 +1423,7 @@ vowel/e_mid2 [E] af | |||
[E2] de | |||
[E:] de | |||
[e] jbo | |||
[e] nci | |||
[e] fi | |||
[E] nl | |||
[e] sk | |||
@@ -1486,7 +1503,8 @@ vowel/i_en [i:] en | |||
vowel/i_fnt [i:] en_wi | |||
[i:] hi | |||
[i] pa | |||
vowel/ii [I] en_n | |||
vowel/ii [I] en | |||
[I] en_n | |||
[I2] en_n | |||
[I] en_rp | |||
[I2] en_rp | |||
@@ -1855,24 +1873,21 @@ vwl_fr/r@ [r] fr | |||
vwl_fr/@R [x] pt_pt | |||
vwl_fr/_r2 [r] fr | |||
vwl_fr/@R2 [R] fr_ca | |||
vwl_fr/ra [r] fr | |||
vwl_fr/ra [a] fr | |||
vwl_fr/r_a [r/2] fr | |||
vwl_fr/r_a~ [A~] fr | |||
vwl_fr/rA~ [A~] fr | |||
vwl_fr/re [r] fr | |||
vwl_fr/r_e [r/2] fr | |||
vwl_fr/ri [i] fr | |||
[r] fr | |||
vwl_fr/ri [r] fr | |||
vwl_fr/r_i [r/2] fr | |||
vwl_fr/ro [r] fr | |||
vwl_fr/r_o [o] fr | |||
[o2] fr | |||
[r/2] fr | |||
vwl_fr/ru [r] fr | |||
[u] fr | |||
vwl_fr/r_u [r/2] fr | |||
vwl_fr/ry [y] fr | |||
[w^i] fr | |||
vwl_fr/ry [w^i] fr | |||
vwl_fr/r_y [y] fr | |||
vwl_fr/tr [r] fr | |||
vwl_fr/w_a [wA] fr | |||
@@ -1984,6 +1999,7 @@ x/d_ [d] base | |||
x/d_dnt [d[] base | |||
[d] base2 | |||
[d] fi | |||
[d] hu | |||
[d] pl | |||
x/d_pzd [d;] pl | |||
x/dzh [J] base |
@@ -17,12 +17,13 @@ volume 32 | |||
0 l- NULL 0 l | |||
0 w/ NULL 0 w | |||
0 j/ NULL 0 j | |||
0 a/ NULL 0 V | |||
2 ; i 0 NULL | |||
0 ; NULL 0 NULL | |||
0 - NULL 0 NULL | |||
0 g- NULL 0 NULL | |||
0 @- NULL 0 NULL | |||
0 * NULL 0 r | |||
0 * NULL 0 NULL | |||
0 R2 NULL 0 r | |||
0 R NULL 0 r | |||
@@ -40,4 +41,3 @@ volume 32 | |||
0 R NULL 0 r | |||
0 x NULL 0 h | |||
@@ -164,6 +164,9 @@ phoneme I | |||
vowel starttype #i endtype #i | |||
length 130 | |||
IfNextVowelAppend(;) | |||
IF nextPhW(isVel) THEN | |||
FMT(vowel/ii) | |||
ENDIF | |||
FMT(vowel/ii_2) | |||
endphoneme | |||
@@ -1,7 +1,7 @@ | |||
//==================================================== | |||
// French | |||
//==================================================== | |||
// Updated 2009-10-13 Michel Such <[email protected]> | |||
// Updated 2010-02-09 Michel Such <[email protected]> | |||
phoneme #l virtual | |||
// Used for l and l/ | |||
@@ -31,7 +31,7 @@ phoneme r | |||
NextVowelStarts | |||
VowelStart(vwl_fr/r@) | |||
VowelStart(vwl_fr/ra) | |||
VowelStart(NULL) | |||
VowelStart(vwl_fr/re) | |||
VowelStart(vwl_fr/ri) | |||
VowelStart(vwl_fr/ro) | |||
@@ -43,23 +43,17 @@ phoneme r | |||
ELIF prevPhW(p) OR prevPhW(k) THEN | |||
FMT(vwl_fr/tr) | |||
ELIF prevPhW(t) THEN | |||
FMT(vwl_fr/tr) addWav(r3/r_uvl,30) | |||
FMT(vwl_fr/tr) addWav(r3/rx,30) | |||
ENDIF | |||
IF thisPh(isWordStart) THEN | |||
IF prevPh(isVowel) OR prevPh(isPause) OR prevPh(#l) OR prevPh(r/2) THEN | |||
FMT(vwl_fr/_r) | |||
ENDIF | |||
FMT(vwl_fr/_r2) addWav(r3/r_uvl, 25) | |||
FMT(vwl_fr/_r2) addWav(r3/rx, 15) | |||
ENDIF | |||
FMT(vwl_fr/r) addWav(r3/r_uvl,25) | |||
endphoneme | |||
phoneme R // First letter of a word | |||
import_phoneme fr/r | |||
lengthmod 0 | |||
FMT(vwl_fr/r) addWav(r3/rx,25) | |||
endphoneme | |||
@@ -94,7 +88,7 @@ phoneme r/2 // variant of [r] when not preceding a vowel | |||
EndSwitch | |||
IF prevPh(isVowel) THEN | |||
FMT(vwl_fr/r_) addWav(r3/r_uvl, 30) | |||
FMT(vwl_fr/r_) addWav(r3/rx, 30) | |||
ELIF prevPh(m) OR prevPh(n) THEN | |||
FMT(r3/r_n) | |||
ENDIF | |||
@@ -193,6 +187,9 @@ phoneme a | |||
VowelStart(l/la, -15) | |||
ENDIF | |||
IF prevPh(#r) THEN | |||
VowelStart(vwl_fr/ra) | |||
ENDIF | |||
FMT(vowel/a_6) | |||
endphoneme | |||
@@ -231,10 +228,6 @@ phoneme i | |||
IfNextVowelAppend(;) | |||
IF prevPh(#r) THEN | |||
VowelStart(vwl_fr/ri, -30) | |||
ENDIF | |||
FMT(vowel/i_2) | |||
endphoneme | |||
@@ -318,11 +311,7 @@ phoneme u | |||
length 170 | |||
IF nextPh(i) THEN | |||
Length 50 | |||
ENDIF | |||
IF prevPh(R) THEN | |||
VowelStart(vwl_fr/ru, -10) | |||
Length 50 | |||
ENDIF | |||
FMT(vowel/u_bck2) | |||
@@ -340,10 +329,6 @@ phoneme y | |||
vowel starttype #u endtype #u | |||
length 170 | |||
IF prevPh(#r) THEN | |||
VowelStart(vwl_fr/ry) | |||
ENDIF | |||
IF nextPh(l/) THEN | |||
VowelEnding(l/l_y, -30) | |||
ENDIF | |||
@@ -425,13 +410,12 @@ endphoneme | |||
phoneme A~ | |||
vowel starttype #a endtype #a | |||
length 190 | |||
IF prevPh(#r) THEN | |||
VowelStart(vwl_fr/rA~) | |||
ENDIF | |||
IF nextPh(r/2) THEN | |||
VowelEnding(vwl_fr/r_a~) | |||
ENDIF | |||
IF prevPh(#r) THEN | |||
VowelStart(vwl_fr/rA~) | |||
ENDIF | |||
FMT(vnasal/aa_n4) | |||
endphoneme | |||
@@ -553,7 +537,7 @@ phoneme g | |||
FMT(g/g_) addWav(x/g_) | |||
ENDIF | |||
FMT(g/g) addWav(x/g, 20) | |||
FMT(g/g) addWav(x/g, 20) | |||
endphoneme | |||
@@ -721,7 +705,7 @@ phoneme z | |||
vcd alv frc sibilant | |||
voicingswitch s | |||
lengthmod 6 | |||
Vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50 | |||
Vowelout f1=0 f2=1700 -300 300 f3=-100 60 len=50 | |||
IF nextPh(isPause2) THEN | |||
FMT(voc/z_) addWav(ufric/s_, 45) |
@@ -104,6 +104,12 @@ phoneme ts | |||
endphoneme | |||
phoneme dz | |||
import_phoneme consonants/dz | |||
voicingswitch ts | |||
endphoneme | |||
phoneme t // dental variant of /t/ | |||
vls dnt stop | |||
lengthmod 2 | |||
@@ -117,12 +123,29 @@ phoneme t // dental variant of /t/ | |||
endphoneme | |||
phoneme d // dental variant of /d/ | |||
import_phoneme base/d[ | |||
phoneme d | |||
vcd dnt stop | |||
voicingswitch t | |||
lengthmod 5 | |||
Vowelin f1=2 f2=1500 -300 300 f3=-150 80 | |||
Vowelout f1=2 f2=1500 -300 300 f3=-150 80 | |||
IF PreVoicing THEN | |||
FMT(d/xd) | |||
ENDIF | |||
IF nextPh(isPause2) THEN | |||
FMT(d/d_) addWav(x/d_dnt) | |||
ELIF nextPh(r) THEN | |||
FMT(d/dr) addWav(x/d_dnt, 110) | |||
ENDIF | |||
FMT(d/d) addWav(x/d_dnt, 110) | |||
endphoneme | |||
phoneme c | |||
import_phoneme consonants/c2 | |||
voicingswitch J |
@@ -1,6 +1,6 @@ | |||
//==================================================== | |||
// Romanian - based on Italian | |||
// Romanian | |||
//==================================================== | |||
// Vowels |
@@ -71,7 +71,10 @@ endphoneme | |||
phoneme u | |||
vowel starttype #u endtype #u | |||
length 110 | |||
ChangeIfNotStressed(U) | |||
IF prevPhW(isVel) THEN | |||
ELSE | |||
ChangeIfNotStressed(U) | |||
ENDIF | |||
FMT(vowel/u_6) | |||
endphoneme | |||
@@ -84,7 +87,10 @@ endphoneme | |||
phoneme u: | |||
vowel starttype #u endtype #u | |||
length 260 | |||
ChangeIfNotStressed(U:) | |||
IF prevPhW(isVel) THEN | |||
ELSE | |||
ChangeIfNotStressed(U:) | |||
ENDIF | |||
FMT(vowel/u_6) | |||
endphoneme | |||
@@ -1,4 +1,4 @@ | |||
//based on "phonemes" | |||
//==================================================== | |||
// Tone Numbers | |||
//==================================================== | |||
@@ -101,6 +101,45 @@ phoneme N | |||
endphoneme | |||
phoneme l | |||
liquid | |||
lengthmod 2 | |||
CALL vowelstart_l | |||
IF nextPhW(#i) THEN | |||
VowelStart(l/li) | |||
ENDIF | |||
FMT(l/_l) | |||
endphoneme | |||
phoneme j | |||
liquid palatal | |||
lengthmod 1 | |||
IF nextPh(isVowel) THEN | |||
NextVowelStarts | |||
VowelStart(j/j@) | |||
VowelStart(j/ja) | |||
VowelStart(j/je) | |||
VowelStart(j/ji) | |||
VowelStart(j/jo) | |||
VowelStart(j/ju) | |||
EndSwitch | |||
VowelEnding(j/xj, -30) | |||
FMT(j/_j) | |||
ELSE | |||
// no vowel follows | |||
Vowelout len=70 | |||
FMT(j/j_) | |||
ENDIF | |||
endphoneme | |||
phoneme p | |||
vls blb stop |
@@ -567,7 +567,7 @@ phoneme m | |||
VowelStart(m/mu) | |||
EndSwitch | |||
IF thisPh(isNotVowel) AND nextPhW(isLiquid) THEN | |||
IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN | |||
FMT(m/mj) | |||
ELIF prevPh(isPause) THEN | |||
FMT(m/_m) | |||
@@ -596,7 +596,7 @@ phoneme n | |||
VowelStart(n/nu) | |||
EndSwitch | |||
IF thisPh(isNotVowel) AND nextPhW(isLiquid) THEN | |||
IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN | |||
FMT(n/nj) | |||
ELIF prevPh(isPause) OR prevPh(n) THEN | |||
FMT(n/_n) | |||
@@ -626,7 +626,7 @@ phoneme n. | |||
VowelStart(n/nu) | |||
EndSwitch | |||
IF thisPh(isNotVowel) AND nextPhW(isLiquid) THEN | |||
IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN | |||
FMT(n/nj) | |||
ELIF prevPh(isPause) OR prevPh(n.) THEN | |||
FMT(n/_nr) | |||
@@ -658,6 +658,11 @@ phoneme n^ | |||
IF prevPh(isPause) THEN | |||
FMT(n^/_n^) | |||
ELIF nextPh(isNotVowel) THEN | |||
IF nextPhW(n^) THEN | |||
Length 75 | |||
ELIF prevPhW(n^) THEN | |||
Length 100 | |||
ENDIF | |||
FMT(n^/n^_) | |||
ENDIF | |||
endphoneme | |||
@@ -686,7 +691,7 @@ phoneme N | |||
VowelEnding(nn/inn, -40) | |||
ENDIF | |||
IF thisPh(isNotVowel) AND nextPhW(isLiquid) THEN | |||
IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN | |||
FMT(nn/nnj) | |||
ELIF prevPh(isPause) THEN | |||
FMT(nn/_nn) | |||
@@ -1521,6 +1526,9 @@ include ph_esperanto | |||
phonemetable jbo eo | |||
include ph_lojban | |||
phonemetable nci base2 | |||
include ph_nahuatl | |||
phonemetable fi base | |||
include ph_finnish | |||
@@ -14,7 +14,7 @@ The 'phondata-manifest' file is produced by espeakedit when it compiles | |||
the phoneme data. If it is not present here, find it in the espeak-data directory. | |||
NOTE: | |||
The format of espeak-data/phondata changed in eSpeak version 1.41. The utility | |||
The format of espeak-data/phondata changed in eSpeak version 1.43. The utility | |||
has been modified for this. [jonsd] | |||
--- |
@@ -1,3 +1,12 @@ | |||
// 13.02.10 JSD: Changed for eSpeak version 1.43 | |||
#include <stdio.h> | |||
#include <stdlib.h> | |||
#include <string.h> | |||
@@ -33,26 +42,21 @@ | |||
#define N_PHONEME_TAB_NAME 32 | |||
// This is a new format for eSpeak 1.43 | |||
typedef struct { | |||
unsigned int mnemonic; | |||
unsigned int phflags; | |||
unsigned short std_length; | |||
unsigned short spect; | |||
unsigned short before; | |||
unsigned short after; | |||
unsigned char code; | |||
unsigned char type; | |||
unsigned char start_type; | |||
unsigned char end_type; | |||
unsigned char length_mod; | |||
unsigned char reduce_to; | |||
unsigned char alternative_ph; | |||
unsigned char link_out; | |||
unsigned int mnemonic; // 1st char is in the l.s.byte | |||
unsigned int phflags; // bits 16-19 place of articulation | |||
unsigned short program; | |||
unsigned char code; // the phoneme number | |||
unsigned char type; // phVOWEL, phPAUSE, phSTOP etc | |||
unsigned char start_type; | |||
unsigned char end_type; | |||
unsigned char std_length; // for vowels, in mS/2; for phSTRESS, the stress/tone type | |||
unsigned char length_mod; // a length_mod group number, used to access length_mod_tab | |||
} PHONEME_TAB; | |||
// This is a new format for eSpeak 1.41 | |||
typedef struct { // 44 bytes | |||
short frflags; | |||
@@ -102,15 +106,13 @@ void usage (const char *program_name); | |||
int | |||
main (int argc, char *argv[]) | |||
{ | |||
int main (int argc, char *argv[]) | |||
{//============================== | |||
const char *indir = "/usr/share/espeak-data"; | |||
const char *outdir = "."; | |||
const char *manifest = "phondata-manifest"; | |||
char *f1, *f2; | |||
if (argc > 4) | |||
usage (argv[0]); | |||
@@ -175,12 +177,12 @@ main (int argc, char *argv[]) | |||
printf ("Done.\n"); | |||
return 0; | |||
} | |||
} // end of main | |||
void | |||
swap_phondata (const char *infile, const char *outfile, | |||
void swap_phondata (const char *infile, const char *outfile, | |||
const char *manifest) | |||
{ | |||
{//========================================================== | |||
FILE *in, *mfest, *out; | |||
char line[1024]; | |||
unsigned char buf_4[4]; | |||
@@ -282,12 +284,13 @@ swap_phondata (const char *infile, const char *outfile, | |||
fclose (in); | |||
fclose (out); | |||
fclose (mfest); | |||
} | |||
} // end of swap_phondata | |||
void | |||
swap_phonindex (const char *infile, const char *outfile) | |||
{ | |||
void swap_phonindex (const char *infile, const char *outfile) | |||
{//========================================================== | |||
FILE *in, *out; | |||
char buf_4[4]; | |||
unsigned int val; | |||
in = fopen (infile, "rb"); | |||
@@ -302,24 +305,27 @@ swap_phonindex (const char *infile, const char *outfile) | |||
exit (1); | |||
} | |||
fread (buf_4, 4, 1, in); // skip first 4 bytes | |||
fwrite(buf_4, 4, 1, out); | |||
while (! feof (in)) { | |||
size_t n; | |||
n = fread (&val, 4, 1, in); | |||
n = fread (&val, 2, 1, in); | |||
if (n != 1) | |||
break; | |||
val = SWAP_UINT (val); | |||
fwrite (&val, 4, 1, out); | |||
val = SWAP_USHORT (val); | |||
fwrite (&val, 2, 1, out); | |||
} | |||
fclose (in); | |||
fclose (out); | |||
} | |||
} // end of swap_phonindex | |||
void | |||
swap_phontab (const char *infile, const char *outfile) | |||
{ | |||
void swap_phontab (const char *infile, const char *outfile) | |||
{//======================================================== | |||
FILE *in, *out; | |||
char buf_4[4]; | |||
int i, n_phoneme_tables; | |||
@@ -359,11 +365,7 @@ swap_phontab (const char *infile, const char *outfile) | |||
table.mnemonic = SWAP_UINT (table.mnemonic); | |||
table.phflags = SWAP_UINT (table.phflags); | |||
table.std_length = SWAP_USHORT (table.std_length); | |||
table.spect = SWAP_USHORT (table.spect); | |||
table.before = SWAP_USHORT (table.before); | |||
table.after = SWAP_USHORT (table.after); | |||
table.program = SWAP_USHORT (table.program); | |||
fwrite (&table, sizeof (PHONEME_TAB), 1, out); | |||
} | |||
@@ -371,7 +373,8 @@ swap_phontab (const char *infile, const char *outfile) | |||
fclose (in); | |||
fclose (out); | |||
} | |||
} // end of swap_phontab | |||
void | |||
usage (const char *program_name) |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2009 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -102,6 +102,10 @@ static keywtab_t k_conditions[] = { | |||
{NULL, 0, 0} | |||
}; | |||
// place of articulation | |||
#define i_isVel 0x28 | |||
static keywtab_t k_properties[] = { | |||
{"isPause", 0, phPAUSE}, | |||
{"isVowel", 0, phVOWEL}, | |||
@@ -112,6 +116,8 @@ static keywtab_t k_properties[] = { | |||
{"isPalatal", 0, i_isPalatal}, | |||
{"isRhotic", 0, i_isRhotic}, | |||
{"isVel", 0, i_isVel}, | |||
{"isDiminished", 0, i_isDiminished}, | |||
{"isUnstressed", 0, i_isUnstressed}, | |||
{"isNotStressed",0, i_isNotStressed}, | |||
@@ -269,7 +275,7 @@ static keywtab_t keywords[] = { | |||
{"vcd", tPHONEME_FLAG, phVOICED}, | |||
{"vls", tPHONEME_FLAG, phFORTIS}, | |||
// place of articulation | |||
// place of articulation, set bits 16-19 of phflags | |||
{"blb", tPLACE, 1}, | |||
{"lbd", tPLACE, 2}, | |||
{"dnt", tPLACE, 3}, | |||
@@ -347,7 +353,7 @@ static void DecompilePhoneme(FILE *f_out, PHONEME_TAB *ph, int compile_phoneme) | |||
int any; | |||
const char *name; | |||
static char *INV = "Invalid"; | |||
static const char *INV = "Invalid"; | |||
static const char *instn_category_string[16] = { | |||
"", "", "IF", "IF OR", |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -91,6 +91,7 @@ MNEM_TAB mnem_flags[] = { | |||
{"$alt", 20}, // use alternative pronunciation | |||
{"$alt2", 21}, | |||
{"$combine", 22}, // Combine with the next word | |||
{"$alt3", 23}, | |||
{"$dot", 24}, // ignore '.' after this word (abbreviation) | |||
{"$hasdot", 25}, // use this pronunciation if there is a dot after the word |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -3499,38 +3499,46 @@ int RemoveEnding(Translator *tr, char *word, int end_type, char *word_copy) | |||
if(end_type & SUFX_E) | |||
{ | |||
// add 'e' to end of stem | |||
if(IsLetter(tr, word_end[-1],LETTERGP_VOWEL2) && IsLetter(tr, word_end[0],1)) | |||
if(tr->translator_name == L('e','n')) | |||
{ | |||
// vowel(incl.'y') + hard.consonant | |||
for(i=0; (p = add_e_exceptions[i]) != NULL; i++) | |||
// add 'e' to end of stem | |||
if(IsLetter(tr, word_end[-1],LETTERGP_VOWEL2) && IsLetter(tr, word_end[0],1)) | |||
{ | |||
len = strlen(p); | |||
if(memcmp(p,&word_end[1-len],len)==0) | |||
// vowel(incl.'y') + hard.consonant | |||
for(i=0; (p = add_e_exceptions[i]) != NULL; i++) | |||
{ | |||
break; | |||
len = strlen(p); | |||
if(memcmp(p,&word_end[1-len],len)==0) | |||
{ | |||
break; | |||
} | |||
} | |||
if(p == NULL) | |||
end_flags |= FLAG_SUFX_E_ADDED; // no exception found | |||
} | |||
if(p == NULL) | |||
end_flags |= FLAG_SUFX_E_ADDED; // no exception found | |||
} | |||
else | |||
{ | |||
for(i=0; (p = add_e_additions[i]) != NULL; i++) | |||
else | |||
{ | |||
len = strlen(p); | |||
if(memcmp(p,&word_end[1-len],len)==0) | |||
for(i=0; (p = add_e_additions[i]) != NULL; i++) | |||
{ | |||
end_flags |= FLAG_SUFX_E_ADDED; | |||
break; | |||
len = strlen(p); | |||
if(memcmp(p,&word_end[1-len],len)==0) | |||
{ | |||
end_flags |= FLAG_SUFX_E_ADDED; | |||
break; | |||
} | |||
} | |||
} | |||
} | |||
else | |||
if(tr->langopts.suffix_add_e != 0) | |||
{ | |||
end_flags |= FLAG_SUFX_E_ADDED; | |||
} | |||
if(end_flags & FLAG_SUFX_E_ADDED) | |||
{ | |||
word_end[1] = 'e'; | |||
utf8_out(tr->langopts.suffix_add_e, &word_end[1]); | |||
#ifdef LOG_TRANSLATE | |||
if(option_phonemes == 2) | |||
{ |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -68,6 +68,7 @@ | |||
static int n_digit_lookup; | |||
static char *digit_lookup; | |||
static int speak_missing_thousands; | |||
static int number_control; | |||
typedef struct { | |||
@@ -762,16 +763,18 @@ static int CheckDotOrdinal(Translator *tr, char *word, WORD_TAB *wtab, int roman | |||
int ordinal = 0; | |||
int c2; | |||
int nextflags; | |||
if((tr->langopts.numbers & NUM_ORDINAL_DOT) && ((word[0] == '.') || (wtab[0].flags & FLAG_HAS_DOT)) && !(wtab[1].flags & FLAG_NOSPACE)) | |||
{ | |||
if(roman || !(wtab[1].flags & FLAG_FIRST_UPPER)) | |||
{ | |||
utf8_in(&c2, &word[2]); | |||
if((word[1] != 0) && IsAlpha(c2)) | |||
if((word[1] != 0) && ((c2 == 0) || (wtab[0].flags & FLAG_COMMA_AFTER) || IsAlpha(c2))) | |||
{ | |||
// ordinal number is indicated by dot after the number | |||
// but not if the next word starts with an upper-case letter | |||
// (c2 == 0) is for cases such as, "2.," | |||
ordinal = 2; | |||
if(word[0] == '.') | |||
word[0] = ' '; | |||
@@ -779,8 +782,19 @@ static int CheckDotOrdinal(Translator *tr, char *word, WORD_TAB *wtab, int roman | |||
if((roman==0) && (tr->translator_name == L('h','u'))) | |||
{ | |||
// lang=hu don't treat dot as ordinal indicator if the next word is a month name ($alt). It may have a suffix. | |||
if(TranslateWord(tr, &word[2], 0, NULL) & FLAG_ALT_TRANS) | |||
nextflags = 0; | |||
if(IsAlpha(c2)) | |||
{ | |||
nextflags = TranslateWord(tr, &word[2], 0, NULL); | |||
} | |||
if((tr->prev_dict_flags & FLAG_ALT_TRANS) && ((c2 == 0) || (wtab[0].flags & FLAG_COMMA_AFTER) || iswdigit(c2))) | |||
ordinal = 0; // TEST 09.02.10 | |||
if(nextflags & FLAG_ALT_TRANS) | |||
ordinal = 0; | |||
if((tr->prev_dict_flags & (FLAG_ALT_TRANS | FLAG_ALT3_TRANS)) && (nextflags & FLAG_ALT3_TRANS)) | |||
ordinal = 0x22; | |||
} | |||
} | |||
} | |||
@@ -941,6 +955,12 @@ static int LookupThousands(Translator *tr, int value, int thousandplex, int thou | |||
sprintf(string,"_%dM%do",value,thousandplex); | |||
found_value = Lookup(tr, string, ph_thousands); | |||
} | |||
if(!found_value & (number_control & 1)) | |||
{ | |||
// look for the 'e' variant | |||
sprintf(string,"_%dM%de",value,thousandplex); | |||
found_value = Lookup(tr, string, ph_thousands); | |||
} | |||
if(!found_value) | |||
{ | |||
// is there a different pronunciation if there are no hundreds,tens,or units ? (LANG=ta) | |||
@@ -970,6 +990,12 @@ static int LookupThousands(Translator *tr, int value, int thousandplex, int thou | |||
sprintf(string,"_%s%do",M_Variant(value), thousandplex); | |||
found = Lookup(tr, string, ph_thousands); | |||
} | |||
if(!found && (number_control & 1)) | |||
{ | |||
// look for the 'e' variant | |||
sprintf(string,"_%s%de",M_Variant(value), thousandplex); | |||
found = Lookup(tr, string, ph_thousands); | |||
} | |||
if(!found) | |||
{ | |||
// is there a different pronunciation if there are no hundreds,tens,or units ? | |||
@@ -1013,10 +1039,11 @@ static int LookupNum2(Translator *tr, int value, int control, char *ph_out) | |||
{//======================================================================== | |||
// Lookup a 2 digit number | |||
// control bit 0: ordinal number | |||
// control bit 1: tens and units (use special form of '1', LANG=de "eins") | |||
// control bit 1: final tens and units (not number of thousands) (use special form of '1', LANG=de "eins") | |||
// control bit 2: tens and units only, no higher digits | |||
// control bit 3: use feminine form of '2' (for thousands | |||
// control bit 4: speak zero tens | |||
// control bit 5: variant of ordinal number (lang=hu) | |||
int found; | |||
int ix; | |||
@@ -1025,6 +1052,7 @@ static int LookupNum2(Translator *tr, int value, int control, char *ph_out) | |||
int used_and=0; | |||
int found_ordinal = 0; | |||
int next_phtype; | |||
int ord_type = 'o'; | |||
char string[12]; // for looking up entries in *_list | |||
char ph_ordinal[20]; | |||
char ph_tens[50]; | |||
@@ -1040,6 +1068,11 @@ static int LookupNum2(Translator *tr, int value, int control, char *ph_out) | |||
ph_digits[0] = 0; | |||
ph_and[0] = 0; | |||
if(control & 0x20) | |||
{ | |||
ord_type = 'q'; | |||
} | |||
if((control & 2) && (n_digit_lookup == 2)) | |||
{ | |||
// pronunciation of the final 2 digits has already been found | |||
@@ -1062,12 +1095,12 @@ static int LookupNum2(Translator *tr, int value, int control, char *ph_out) | |||
if(control & 4) | |||
{ | |||
sprintf(string,"_%dox",value); // LANG=hu, special word for 1. 2. when there are no higher digits | |||
sprintf(string,"_%d%cx",value,ord_type); // LANG=hu, special word for 1. 2. when there are no higher digits | |||
found = Lookup(tr, string, ph_digits); | |||
} | |||
if(found == 0) | |||
{ | |||
sprintf(string,"_%do",value); | |||
sprintf(string,"_%d%c",value,ord_type); | |||
found = Lookup(tr, string, ph_digits); | |||
} | |||
found_ordinal = found; | |||
@@ -1075,13 +1108,28 @@ static int LookupNum2(Translator *tr, int value, int control, char *ph_out) | |||
if(found == 0) | |||
{ | |||
if((value == 1) && (control & 2)) | |||
if(control & 2) | |||
{ | |||
// the final tens and units of a number | |||
if(number_control & 1) | |||
{ | |||
// look for 'e' variant | |||
sprintf(string,"_%de",value); | |||
found = Lookup(tr, string, ph_digits); | |||
} | |||
} | |||
else | |||
{ | |||
if(Lookup(tr, "_1a", ph_out) != 0) // LANG=de, "eins" | |||
return(0); | |||
// followed by hundreds or thousands etc | |||
sprintf(string,"_%da",value); | |||
found = Lookup(tr, string, ph_digits); | |||
} | |||
if(!found) | |||
{ | |||
sprintf(string,"_%d",value); | |||
found = Lookup(tr, string, ph_digits); | |||
} | |||
sprintf(string,"_%d",value); | |||
found = Lookup(tr, string, ph_digits); | |||
} | |||
} | |||
@@ -1103,7 +1151,7 @@ static int LookupNum2(Translator *tr, int value, int control, char *ph_out) | |||
if((control & 1) && ((units == 0) || (tr->langopts.numbers & NUM_SWAP_TENS))) | |||
{ | |||
sprintf(string,"_%dXo", tens); | |||
sprintf(string,"_%dX%c", tens, ord_type); | |||
if(Lookup(tr, string, ph_tens) != 0) | |||
{ | |||
found_ordinal = 1; | |||
@@ -1146,13 +1194,29 @@ static int LookupNum2(Translator *tr, int value, int control, char *ph_out) | |||
if((control & 1) && ((tr->langopts.numbers & NUM_SWAP_TENS) == 0)) | |||
{ | |||
// ordinal | |||
sprintf(string,"_%do",units); | |||
sprintf(string,"_%d%c",units,ord_type); | |||
if((found = Lookup(tr, string, ph_digits)) != 0) | |||
{ | |||
found_ordinal = 1; | |||
} | |||
} | |||
if(found == 0) | |||
{ | |||
if((number_control & 1) && (control & 2)) | |||
{ | |||
// look for 'e' variant | |||
sprintf(string,"_%de",units); | |||
found = Lookup(tr, string, ph_digits); | |||
} | |||
else | |||
if(((control & 2) == 0) || ((tr->langopts.numbers & NUM_SWAP_TENS) != 0)) | |||
{ | |||
// followed by hundreds or thousands (or tens) | |||
sprintf(string,"_%da",units); | |||
found = Lookup(tr, string, ph_digits); | |||
} | |||
} | |||
if(found == 0) | |||
{ | |||
sprintf(string,"_%d",units); | |||
Lookup(tr, string, ph_digits); | |||
@@ -1221,6 +1285,7 @@ static int LookupNum3(Translator *tr, int value, char *ph_out, int suppress_null | |||
// Translate a 3 digit number | |||
// control bit 0, previous thousands | |||
// bit 1, ordinal number | |||
// bit 5 variant form of ordinal number | |||
int found; | |||
int hundreds; | |||
int tensunits; | |||
@@ -1237,7 +1302,7 @@ static int LookupNum3(Translator *tr, int value, char *ph_out, int suppress_null | |||
char ph_hundred_and[12]; | |||
char ph_thousand_and[12]; | |||
ordinal = control & 2; | |||
ordinal = control & 0x22; | |||
hundreds = value / 100; | |||
tensunits = value % 100; | |||
buf1[0] = 0; | |||
@@ -1281,9 +1346,9 @@ static int LookupNum3(Translator *tr, int value, char *ph_out, int suppress_null | |||
} | |||
if(tr->langopts.numbers2 & 0x200) | |||
sprintf(ph_thousands,"%s%s%c",ph_10T,ph_digits,phonPAUSE_NOLINK); // say "thousands" before its number, not after | |||
sprintf(ph_thousands,"%s%s",ph_10T,ph_digits); // say "thousands" before its number, not after | |||
else | |||
sprintf(ph_thousands,"%s%s%c",ph_digits,ph_10T,phonPAUSE_NOLINK); | |||
sprintf(ph_thousands,"%s%s",ph_digits,ph_10T); | |||
hundreds %= 10; | |||
if(hundreds == 0) | |||
@@ -1362,6 +1427,8 @@ static int LookupNum3(Translator *tr, int value, char *ph_out, int suppress_null | |||
x = 3; // ordinal number | |||
if((value < 100) && !(control & 1)) | |||
x |= 4; // tens and units only, no higher digits | |||
if(ordinal & 0x20) | |||
x |= 0x20; // variant form of ordinal number | |||
} | |||
else | |||
{ | |||
@@ -1391,6 +1458,7 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned | |||
int n_digits; | |||
int value; | |||
int ix; | |||
int digix; | |||
unsigned char c; | |||
int suppress_null = 0; | |||
int decimal_point = 0; | |||
@@ -1404,6 +1472,7 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned | |||
int max_decimal_count; | |||
int decimal_mode; | |||
int hyphen; | |||
int suffix_ix; | |||
char *p; | |||
char string[20]; // for looking up entries in **_list | |||
char buf1[100]; | |||
@@ -1420,6 +1489,7 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned | |||
n_digit_lookup = 0; | |||
buf_digit_lookup[0] = 0; | |||
digit_lookup = buf_digit_lookup; | |||
number_control = 0; | |||
for(ix=0; isdigit(word[ix]); ix++) ; | |||
n_digits = ix; | |||
@@ -1444,7 +1514,6 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned | |||
speak_missing_thousands = 0; | |||
} | |||
ph_ordinal2[0] = 0; | |||
ph_zeros[0] = 0; | |||
@@ -1478,9 +1547,9 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned | |||
} | |||
*p = 0; | |||
if(suffix[0] != 0) | |||
if((suffix[0] != 0) && (!isdigit(suffix[0]))) // not _#9 (tab) | |||
{ | |||
sprintf(string,"_0%s",suffix); | |||
sprintf(string,"_#%s",suffix); | |||
if(Lookup(tr, string, ph_ordinal2)) | |||
{ | |||
// this is an ordinal suffix | |||
@@ -1526,20 +1595,26 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned | |||
if(word[n_digits] == tr->langopts.thousands_sep) | |||
thousands_inc = 2; | |||
suffix_ix = n_digits+2; | |||
if(thousands_inc > 0) | |||
{ | |||
// if the following "words" are three-digit groups, count them and add | |||
// a "thousand"/"million" suffix to this one | |||
digix = n_digits + thousands_inc; | |||
ix = n_digits + thousands_inc; | |||
while(isdigit(word[ix]) && isdigit(word[ix+1]) && isdigit(word[ix+2])) | |||
while(((wtab[thousandplex+1].flags & FLAG_MULTIPLE_SPACES) == 0) && | |||
isdigit(word[digix]) && isdigit(word[digix+1]) && isdigit(word[digix+2]) && !isdigit(word[digix+3]) && !isdigit(word[digix-1])) | |||
{ | |||
if((word[ix] != '0') || (word[ix+1] != '0') || (word[ix+2] != '0')) | |||
if((word[digix] != '0') || (word[digix+1] != '0') || (word[digix+2] != '0')) | |||
thousands_exact = 0; | |||
thousandplex++; | |||
if(word[ix+3] == tr->langopts.thousands_sep) | |||
ix += (3 + thousands_inc); | |||
digix += 3; | |||
if((word[digix] == tr->langopts.thousands_sep) || ((tr->langopts.numbers & NUM_ALLOW_SPACE) && (word[digix] == ' '))) | |||
{ | |||
suffix_ix = digix+2; | |||
digix += thousands_inc; | |||
} | |||
else | |||
break; | |||
} | |||
@@ -1550,6 +1625,15 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned | |||
suppress_null = 1; | |||
} | |||
if(tr->translator_name == L('h','u')) | |||
{ | |||
// variant form of numbers when followed by hyphen and a suffix starting with 'a' or 'e' | |||
if((wtab[thousandplex].flags & FLAG_HYPHEN_AFTER) && (thousands_exact==1) && ((word[suffix_ix] == 'a') || (word[suffix_ix] == 'e'))) | |||
{ | |||
number_control |= 1; // use _1e variant of number | |||
} | |||
} | |||
if((word[n_digits] == tr->langopts.decimal_sep) && isdigit(word[n_digits+1])) | |||
{ | |||
// this "word" ends with a decimal point | |||
@@ -1713,7 +1797,7 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned | |||
if((tr->langopts.numbers & NUM_NOPAUSE) && (next_char == ' ')) | |||
utf8_in(&next_char,p); | |||
if(!iswalpha(next_char) && !(wtab[0].flags & FLAG_HYPHEN_AFTER)) | |||
if(!iswalpha(next_char) && !((wtab[thousandplex].flags & FLAG_HYPHEN_AFTER) && (thousands_exact != 0))) | |||
strcat(ph_out,str_pause); // don't add pause for 100s, 6th, etc. | |||
} | |||
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -1543,12 +1543,12 @@ static int ReplaceKeyName(char *outbuf, int index, int &outix) | |||
int letter; | |||
char *p; | |||
p = &outbuf[index+1]; | |||
p = &outbuf[index]; | |||
if((letter = LookupMnem(keynames, p)) != 0) | |||
{ | |||
ix = utf8_out(letter, p); | |||
outix = index + ix + 1; | |||
outix = index + ix; | |||
return(letter); | |||
} | |||
return(0); | |||
@@ -1636,16 +1636,26 @@ static int ProcessSsmlTag(wchar_t *xml_buf, char *outbuf, int &outix, int n_outb | |||
if(tag_name[0] == '/') | |||
{ | |||
tag_type = LookupMnem(ssmltags,&tag_name[1]) + SSML_CLOSE; // closing tag | |||
// closing tag | |||
if((tag_type = LookupMnem(ssmltags,&tag_name[1])) != 0) | |||
{ | |||
outbuf[outix++] = ' '; | |||
} | |||
tag_type += SSML_CLOSE; | |||
} | |||
else | |||
{ | |||
tag_type = LookupMnem(ssmltags,tag_name); | |||
if((tag_type = LookupMnem(ssmltags,tag_name)) != 0) | |||
{ | |||
// separate SSML tags from the previous word (but not unknown HMTL tags such as <b> <font> which can occur inside a word) | |||
outbuf[outix++] = ' '; | |||
} | |||
if(self_closing && ignore_if_self_closing[tag_type]) | |||
return(0); | |||
} | |||
voice_change_flag = 0; | |||
terminator = CLAUSE_NONE; | |||
ssml_sp = &ssml_stack[n_ssml_stack-1]; | |||
@@ -2178,9 +2188,7 @@ f_input = f_in; // for GetC etc | |||
} | |||
xml_buf[n_xml_buf] = 0; | |||
c2 = ' '; | |||
buf[ix++] = ' '; | |||
self_closing = 0; | |||
if(xml_buf[n_xml_buf-1] == '/') | |||
{ | |||
@@ -2211,6 +2219,7 @@ f_input = f_in; // for GetC etc | |||
} | |||
return(terminator); | |||
} | |||
c2 = GetC(); | |||
continue; | |||
} | |||
} | |||
@@ -2510,6 +2519,13 @@ if(option_ssml) parag=1; | |||
if(nl_count==0) | |||
{ | |||
if((c1 == ',') && (cprev == '.') && (tr->translator_name == L('h','u')) && iswdigit(cprev2) && (iswdigit(c_next) || (iswlower(c_next)))) | |||
{ | |||
// lang=hu, fix for ordinal numbers, eg: "december 2., szerda", ignore ',' after ordinal number | |||
c1 = CHAR_COMMA_BREAK; | |||
is_end_clause = 0; | |||
} | |||
if(c1 == '.') | |||
{ | |||
if((tr->langopts.numbers & NUM_ORDINAL_DOT) && | |||
@@ -2522,7 +2538,7 @@ if(option_ssml) parag=1; | |||
} | |||
else | |||
{ | |||
if (iswlower(c_next)) | |||
if (iswlower(c_next) || (c_next=='-')) // hyphen is needed for lang-hu (eg. 2.-kal) | |||
is_end_clause = 0; // only if followed by lower-case, (or if there is a XML tag) | |||
} | |||
} | |||
@@ -2565,7 +2581,7 @@ if(option_ssml) parag=1; | |||
buf[ix] = ' '; | |||
buf[ix+1] = 0; | |||
if(!IsAlpha(c_next)) | |||
if(iswdigit(cprev) && !IsAlpha(c_next)) // ???? | |||
{ | |||
punct_data &= ~CLAUSE_DOT; | |||
} |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -174,7 +174,7 @@ static int create_events(short* outbuf, int length, espeak_EVENT* event, uint32_ | |||
} | |||
int sync_espeak_terminated_msg( uint unique_identifier, void* user_data) | |||
int sync_espeak_terminated_msg( uint32_t unique_identifier, void* user_data) | |||
{//===================================================================== | |||
ENTER("sync_espeak_terminated_msg"); | |||
@@ -1,7 +1,7 @@ | |||
#ifndef SPEAK_LIB_H | |||
#define SPEAK_LIB_H | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -26,6 +26,7 @@ | |||
/*************************************************************/ | |||
#include <stdio.h> | |||
#include <stddef.h> | |||
#define ESPEAK_API_REVISION 5 | |||
/* |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -35,7 +35,7 @@ | |||
#include "translate.h" | |||
#include "wave.h" | |||
const char *version_string = "1.42.21 19.Dec.09"; | |||
const char *version_string = "1.42.42 12.Feb.10"; | |||
const int version_phdata = 0x014220; | |||
int option_device_number = -1; | |||
@@ -942,13 +942,14 @@ void InterpretPhoneme(Translator *tr, int control, PHONEME_LIST *plist, PHONEME_ | |||
case 9: | |||
data = ((instn & 0xf) << 16) + prog[1]; | |||
prog++; | |||
switch(instn2) | |||
{ | |||
case 1: | |||
// call a procedure or another phoneme | |||
if(n_return < N_RETURN) | |||
{ | |||
return_addr[n_return++] = prog+1; | |||
return_addr[n_return++] = prog; | |||
prog = &phoneme_index[data] - 1; | |||
} | |||
break; |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -1458,7 +1458,7 @@ int Generate(PHONEME_LIST *phoneme_list, int *n_ph, int resume) | |||
} | |||
} | |||
if((next->type==phVOWEL) || ((next->type==phLIQUID)) && (next->newword==0)) // ?? test 14.Aug.2007 | |||
if((next->type==phVOWEL) || ((next->type==phLIQUID) && (next->newword==0))) // ?? test 14.Aug.2007 | |||
{ | |||
StartSyllable(); | |||
} |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -235,6 +235,7 @@ void SetIndicLetters(Translator *tr) | |||
SetLetterBitsRange(tr,LETTERGP_Y,0x3e,0x4c); // + vowel signs | |||
tr->langopts.param[LOPT_UNPRONOUNCABLE] = 1; // disable check for unpronouncable words | |||
tr->langopts.suffix_add_e = tr->letter_bits_offset + 0x4d; //virama | |||
} | |||
void SetupTranslator(Translator *tr, const short *lengths, const unsigned char *amps) | |||
@@ -361,6 +362,7 @@ Translator *SelectTranslator(const char *name) | |||
tr->langopts.stress_rule = STRESSPOSN_1L; | |||
tr->langopts.numbers = NUM_HUNDRED_AND | NUM_ROMAN | NUM_1900; | |||
tr->langopts.param[LOPT_COMBINE_WORDS] = 2; // allow "mc" to cmbine with the following word | |||
tr->langopts.suffix_add_e = 'e'; | |||
} | |||
break; | |||
@@ -793,7 +795,7 @@ SetLengthMods(tr,3); // all equal | |||
case L('n','o'): // Norwegian | |||
{ | |||
static const short stress_lengths_no[8] = {160,140, 200,200, 0,0, 220,210}; | |||
static const short stress_lengths_no[8] = {160,140, 200,200, 0,0, 220,230}; | |||
SetupTranslator(tr,stress_lengths_no,NULL); | |||
tr->langopts.stress_rule = STRESSPOSN_1L; |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -1763,6 +1763,12 @@ static int TranslateWord2(Translator *tr, char *word, WORD_TAB *wtab, int pre_pa | |||
first_phoneme = 0; | |||
} | |||
} | |||
if(word_flags & FLAG_COMMA_AFTER) | |||
{ | |||
SetPlist2(&ph_list2[n_ph_list2++],phonPAUSE_CLAUSE); | |||
} | |||
// don't set new-word if there is a hyphen before it | |||
if((word_flags & FLAG_HYPHEN) == 0) | |||
{ | |||
@@ -2018,6 +2024,7 @@ void *TranslateClause(Translator *tr, FILE *f_text, const void *vp_input, int *t | |||
int prev_out=' '; | |||
int prev_out2; | |||
int prev_in2=0; | |||
int prev_in_save=0; | |||
int next_in; | |||
int next_in_nbytes; | |||
int char_inserted=0; | |||
@@ -2166,14 +2173,15 @@ void *TranslateClause(Translator *tr, FILE *f_text, const void *vp_input, int *t | |||
prev_out = 'a'; | |||
} | |||
if(prev_in2 != 0) | |||
if(prev_in_save != 0) | |||
{ | |||
prev_in = prev_in2; | |||
prev_in2 = 0; | |||
prev_in = prev_in_save; | |||
prev_in_save = 0; | |||
} | |||
else | |||
if(source_index > 0) | |||
{ | |||
prev_in2 = prev_in; | |||
utf8_in2(&prev_in,&source[source_index-1],1); // prev_in = source[source_index-1]; | |||
} | |||
@@ -2199,13 +2207,13 @@ void *TranslateClause(Translator *tr, FILE *f_text, const void *vp_input, int *t | |||
if(prev_in != ' ') | |||
{ | |||
c = ' '; | |||
prev_in2 = c; | |||
prev_in_save = c; | |||
source_index--; | |||
} | |||
else | |||
{ | |||
embedded_count += EmbeddedCommand(source_index); | |||
prev_in2 = prev_in; | |||
prev_in_save = prev_in; | |||
// replace the embedded command by spaces | |||
memset(&source[srcix],' ',source_index-srcix); | |||
source_index = srcix; | |||
@@ -2285,6 +2293,12 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
word_flags |= FLAG_FOCUS; | |||
} | |||
if(c == CHAR_COMMA_BREAK) | |||
{ | |||
c = ' '; | |||
word_flags |= FLAG_COMMA_AFTER; | |||
} | |||
c = TranslateChar(tr, &source[source_index], prev_in,c, next_in, &char_inserted); // optional language specific function | |||
if(c == 8) | |||
continue; // ignore this character | |||
@@ -2311,7 +2325,7 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
if(iswdigit(prev_out)) | |||
{ | |||
if(!iswdigit(c) && (c != '.') && (c != ',')) | |||
if(!iswdigit(c) && (c != '.') && (c != ',') && (c != ' ')) | |||
{ | |||
c = ' '; // terminate digit string with a space | |||
space_inserted = 1; | |||
@@ -2350,7 +2364,11 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
// start of word, insert space if not one there already | |||
c = ' '; | |||
space_inserted = 1; | |||
next_word_flags |= FLAG_NOSPACE; | |||
if(!IsBracket(prev_out)) // ?? perhaps only set FLAG_NOSPACE for . - / (hyphenated words, URLs, etc) | |||
{ | |||
next_word_flags |= FLAG_NOSPACE; | |||
} | |||
} | |||
else | |||
{ | |||
@@ -2388,7 +2406,7 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
{ | |||
c = ' '; // lower case followed by upper case, treat as new word | |||
space_inserted = 1; | |||
prev_in2 = c; | |||
prev_in_save = c; | |||
} | |||
else | |||
if((c != ' ') && iswupper(prev_in) && iswlower(next_in)) | |||
@@ -2400,7 +2418,7 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
// changing from upper to lower case, start new word at the last uppercase, if 3 or more letters | |||
c = ' '; | |||
space_inserted = 1; | |||
prev_in2 = c; | |||
prev_in_save = c; | |||
next_word_flags |= FLAG_NOSPACE; | |||
} | |||
} | |||
@@ -2563,9 +2581,15 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
{ | |||
if(prev_out == ' ') | |||
{ | |||
word_flags |= FLAG_MULTIPLE_SPACES; | |||
continue; // multiple spaces | |||
} | |||
if((cc == 0x09) || (cc == 0x0a)) | |||
{ | |||
next_word_flags |= FLAG_MULTIPLE_SPACES; // tab or newline, not a simple space | |||
} | |||
if(space_inserted) | |||
{ | |||
words[word_count].length = source_index - words[word_count].sourceix; | |||
@@ -2653,6 +2677,7 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
if(word_count > 0) | |||
{ | |||
words[word_count-1].flags |= FLAG_LAST_WORD; | |||
// FLAG_NOSPACE check to avoid recognizing .mr -mr | |||
if((terminator & CLAUSE_DOT) && !(words[word_count-1].flags & FLAG_NOSPACE)) | |||
words[word_count-1].flags |= FLAG_HAS_DOT; | |||
} | |||
@@ -2665,7 +2690,9 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
int c_temp; | |||
char *pn; | |||
char *pw; | |||
char number_buf[80]; | |||
int nw; | |||
char number_buf[60]; | |||
WORD_TAB num_wtab[15]; // copy of 'words', when splitting numbers into parts | |||
// start speaking at a specified word position in the text? | |||
count_words++; | |||
@@ -2718,6 +2745,7 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
number_buf[0] = ' '; | |||
pn = &number_buf[1]; | |||
nx = n_digits; | |||
nw = 0; | |||
while(pn < &number_buf[sizeof(number_buf)-3]) | |||
{ | |||
@@ -2727,6 +2755,8 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
*pn++ = c; | |||
if((--nx > 0) && (tr->langopts.break_numbers & (1 << nx))) | |||
{ | |||
memcpy(&num_wtab[nw++], &words[ix], sizeof(WORD_TAB)); // copy the 'words' entry for each word of numbers | |||
if(tr->langopts.thousands_sep != ' ') | |||
{ | |||
*pn++ = tr->langopts.thousands_sep; | |||
@@ -2746,15 +2776,17 @@ if((c == '/') && (tr->langopts.testing & 2) && IsDigit09(next_in) && IsAlpha(pre | |||
} | |||
} | |||
pw--; | |||
memcpy(&num_wtab[nw], &words[ix], sizeof(WORD_TAB)*2); // the original number word, and the word after it | |||
// include the next few characters, in case there are an ordinal indicator or other suffix | |||
memcpy(pn, pw, 16); | |||
pn[16] = 0; | |||
nw = 0; | |||
for(pw = &number_buf[1]; pw < pn;) | |||
{ | |||
// keep wflags for each part, for FLAG_HYPHEN_AFTER | |||
dict_flags = TranslateWord2(tr, pw, &words[ix], words[ix].pre_pause,0 ); | |||
dict_flags = TranslateWord2(tr, pw, &num_wtab[nw++], words[ix].pre_pause,0 ); | |||
while(*pw++ != ' '); | |||
words[ix].pre_pause = 0; | |||
} |
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * | |||
@@ -55,6 +55,7 @@ | |||
#define FLAG_ALT_TRANS 0x100000 // language specific | |||
#define FLAG_ALT2_TRANS 0x200000 // language specific | |||
#define FLAG_COMBINE 0x400000 // combine with the next word | |||
#define FLAG_ALT3_TRANS 0x800000 // language specific | |||
#define FLAG_ALLOW_DOT 0x01000000 // ignore '.' after word (abbreviation) | |||
#define FLAG_NEEDS_DOT 0x02000000 // only if the word is followed by a dot | |||
@@ -103,6 +104,8 @@ | |||
#define FLAG_HYPHEN_AFTER 0x4000 | |||
#define FLAG_ORDINAL 0x8000 // passed to TranslateNumber() to indicate an ordinal number | |||
#define FLAG_HAS_DOT 0x10000 // dot after this word | |||
#define FLAG_COMMA_AFTER 0x20000 // comma after this word | |||
#define FLAG_MULTIPLE_SPACES 0x40000 // word is preceded by multiple spaces, newline, or tab | |||
#define FLAG_NO_TRACE 0x10000000 // passed to TranslateRules() to suppress dictionary lookup printout | |||
#define FLAG_NO_PREFIX 0x20000000 | |||
@@ -203,6 +206,7 @@ | |||
#define SAYAS_DIGITS1 0xc1 | |||
#define CHAR_EMPHASIS 0x0530 // this is an unused character code | |||
#define CHAR_COMMA_BREAK 0x0557 // unused character code | |||
// Rule: | |||
// [4] [match] [1 pre] [2 post] [3 phonemes] 0 | |||
@@ -437,6 +441,7 @@ typedef struct { | |||
const unsigned int *replace_chars; // characters to be substitutes | |||
const char *ascii_language; // switch to this language for Latin characters | |||
int max_lengthmod; | |||
int suffix_add_e; // replace a suffix (which has the SUFX_E flag) with this character | |||
} LANGUAGE_OPTIONS; | |||
@@ -1,5 +1,5 @@ | |||
/*************************************************************************** | |||
* Copyright (C) 2005 to 2007 by Jonathan Duddington * | |||
* Copyright (C) 2005 to 2010 by Jonathan Duddington * | |||
* email: [email protected] * | |||
* * | |||
* This program is free software; you can redistribute it and/or modify * |