Browse Source

espeak 1.44.05 release version

Fix error in big-endian data conversion program, producing bad data.

Make geminated voiced stops (eg. [bb] ) longer at fast speeds.

Provide conditional compilation of the mbrola interface, define macro INCLUDE_MBROLA in speech.h

Mbrola: also look for mbrola voices in /usr/share/mbrola/voices

Pad TUNES and frame_t structures to a multiple of 4 bytes.

lang=da, Don't weaken unvoiced stops before pause.
lang=el, Remove final unstressed [a] if the next word starts with [a].
lang=pt, Change final [U] to [w] if next word starts with a vowel.


espeak 1.44.03

Fixes:
Lang=el, mk.  Was speaking words as individual letters.
Lang=pl.  Fix prounciation of 'ć' and 'ci'.
Fix crash in big-endian data conversion program.
Fix problem where changing voices reduces the speaking rate, at fast rates.

speak_lib.h:  add macro definitions for minimum, maximum, and normal speaking rate values.


git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@253 d46cf337-b52f-0410-862d-fd96e6ae7743
master
jonsd 14 years ago
parent
commit
14e212f3a1

+ 1
- 1
dictsource/af_list View File

@@ -207,7 +207,7 @@ _3o d'&:r
_7o s'e@v@n
_8o _'ax2
_9o ne@x2@n
_0Co h'On@rtst@
//_0Co h'On@rtst@


// Place names

+ 416
- 8
dictsource/da_list View File

@@ -1,4 +1,4 @@
// PB = Peter Bjarkov - [email protected]
// PB = Peter Bjarkov - [email protected]

// This file is UTF8 encoded
// Spelling-to-phoneme words for Danish
@@ -170,7 +170,7 @@ da $u
// conjunctions
og V $u+ $pause // and
men $pause // but
eller $u+ $pause $only // or
eller // or
mens $pause // while
for fV
fordi fVd'i $pause // because - PB: changed stress
@@ -202,10 +202,10 @@ han $u
hun $u
det de $u
dét de
vi $u
vi vi $u
i _i $u+
mig maj $u // me
dig daj $u+
dig daj $u
dem $u
ham $u
hende $u
@@ -396,13 +396,11 @@ oregon _^_EN $alt
paul _^_EN $alt
reynolds _^_EN $alt
purvis _^_EN
sally _^_EN $alt
washington _^_EN $alt
white _^_EN $alt
chicago _^_EN $alt

// PB French words
croissant _^_FR
croquis _^_FR
crouton _^_FR
jugement _^_FR
@@ -965,6 +963,7 @@ inventar $alt
jaguar $alt
janitshar $alt
jubilar $alt
kommentar $alt
korsar $alt
laminar $alt
legatar $alt
@@ -1588,6 +1587,7 @@ opponent $alt
opulent $alt
orient $alt
patent $alt
patient $alt
piment $alt
permanent $alt
potent $alt
@@ -2194,6 +2194,357 @@ vestalinde $alt
violinistinde $alt
værtinde $alt

// PB nouns with final -isme - stressed i
absolutisme $alt
absurdisme $alt
aforisme $alt
afværgemekanisme $alt
agnosticisme $alt
akademisme $alt
aktivisme $alt
albinisme $alt
alkoholisme $alt
alpinisme $alt
altruisme $alt
amatørisme $alt
amerikanisme $alt
anakronisme $alt
analfabetisme $alt
anarkisme $alt
anarkosyndikalisme $alt
anglicisme $alt
animisme $alt
antagonisme $alt
antropomorfisme $alt
aristokratisme $alt
arkaisme $alt
astigmatisme $alt
atavisme $alt
ateisme $alt
atomisme $alt
autisme $alt
avantgardisme $alt
baptisme $alt
barbarisme $alt
barthianisme $alt
behaviorisme $alt
bilisme $alt
bolsjevisme $alt
bonapartisme $alt
botulisme $alt
brahmanisme $alt
brandesianisme $alt
brutalisme $alt
buddhisme $alt
bureaukratisme $alt
calvinisme $alt
centralisme $alt
chauvinisme $alt
cyklisme $alt
cæsarisme $alt
dadaisme $alt
danisme $alt
darwinisme $alt
decentralisme $alt
defaitisme $alt
deisme $alt
dekonstruktivisme $alt
demokratisme $alt
despotisme $alt
determinisme $alt
dilettantisme $alt
dirigisme $alt
dogmatisme $alt
doktrinarisme $alt
dokumentarisme $alt
dramadokumentarisme $alt
dualisme $alt
egoisme $alt
eklekticisme $alt
ekshibitionisme $alt
eksistentialisme $alt
eksorcisme $alt
eksotisme $alt
ekspansionisme $alt
ekspressionisme $alt
ekstremisme $alt
ekvilibrisme $alt
elitisme $alt
empirisme $alt
epikuræisme $alt
erotisme $alt
eskapisme $alt
etnocentrisme $alt
eudaimonisme $alt
eufemisme $alt
evolutionisme $alt
fanatisme $alt
farisæisme $alt
fascisme $alt
fatalisme $alt
fauvisme $alt
federalisme $alt
feminisme $alt
fetichisme $alt
feudalisme $alt
flagellantisme $alt
forbrugerisme $alt
formalisme $alt
freudianisme $alt
fundamentalisme $alt
funktionalisme $alt
futurisme $alt
føderalisme $alt
gallicisme $alt
gaullisme $alt
georgisme $alt
germanisme $alt
gigantisme $alt
gnosticisme $alt
grundtvigianisme $alt
græcisme $alt
hedonisme $alt
hegemonisme $alt
hellenisme $alt
hermafroditisme $alt
heroisme $alt
hinduisme $alt
historicisme $alt
historisme $alt
holisme $alt
hooliganisme $alt
humanisme $alt
hypnotisme $alt
idealisme $alt
idiotisme $alt
imperialisme $alt
impressionisme $alt
indeterminisme $alt
individualisme $alt
industrialisme $alt
infantilisme $alt
intellektualisme $alt
internationalisme $alt
interventionisme $alt
irrationalisme $alt
islamisme $alt
isolationisme $alt
isomorfisme $alt
jesuitisme $alt
judaisme $alt
kannibalisme $alt
kapitalisme $alt
katolicisme $alt
klassicisme $alt
klerikalisme $alt
kokainisme $alt
kollektivisme $alt
kolonialisme $alt
kolorisme $alt
kommercialisme $alt
kommunisme $alt
kommunitarisme $alt
komparatisme $alt
konformisme $alt
konfucianisme $alt
konkretisme $alt
konservatisme $alt
konsonantisme $alt
konstruktivisme $alt
korporatisme $alt
korporativisme $alt
kosmopolitisme $alt
kreationisme $alt
kretinisme $alt
kubisme $alt
kulturisme $alt
kvietisme $alt
kynisme $alt
lakonisme $alt
lamaisme $alt
lamarckisme $alt
latinisme $alt
leninisme $alt
lesbianisme $alt
liberalisme $alt
lobbyisme $alt
lutheranisme $alt
lyrisme $alt
machiavellisme $alt
magnetisme $alt
malthusianisme $alt
manierisme $alt
maoisme $alt
markedsmekanisme $alt
marxisme $alt
maskulinisme $alt
masochisme $alt
materialisme $alt
mccarthyisme $alt
mekanisme $alt
merkantilisme $alt
messianisme $alt
metabolisme $alt
metodisme $alt
militarisme $alt
minimalisme $alt
modernisme $alt
monarkisme $alt
monetarisme $alt
mongolisme $alt
monisme $alt
monopolisme $alt
monoteisme $alt
moralisme $alt
morfinisme $alt
mormonisme $alt
muhamedanisme $alt
mutisme $alt
mysticisme $alt
naivisme $alt
narcissisme $alt
nationalisme $alt
naturalisme $alt
naturisme $alt
nazisme $alt
negativisme $alt
neologisme $alt
nepotisme $alt
neutralisme $alt
nihilisme $alt
nomadisme $alt
nordisme $alt
norvagisme $alt
nudisme $alt
objektivisme $alt
obskurantisme $alt
okkultisme $alt
opportunisme $alt
optimisme $alt
organisme $alt
ostrakisme $alt
pacifisme $alt
panteisme $alt
papisme $alt
parallelisme $alt
parkinsonisme $alt
parlamentarisme $alt
partikularisme $alt
paternalisme $alt
patriarkalisme $alt
patriotisme $alt
pennalisme $alt
perfektionisme $alt
perspektivisme $alt
pessimisme $alt
pietisme $alt
platonisme $alt
pluralisme $alt
pointillisme $alt
polycentrisme $alt
polyteisme $alt
populisme $alt
positivisme $alt
pragmatisme $alt
primitivisme $alt
privatisme $alt
professionalisme $alt
protektionisme $alt
protestantisme $alt
provinsialisme $alt
psykologisme $alt
purisme $alt
puritanisme $alt
racisme $alt
radikalisme $alt
rationalisme $alt
realisme $alt
reformisme $alt
regionalisme $alt
relativisme $alt
reumatisme $alt
revanchisme $alt
revisionisme $alt
rigorisme $alt
romantisme $alt
royalisme $alt
sadisme $alt
sadomasochisme $alt
satanisme $alt
seksualisme $alt
sekterisme $alt
sekularisme $alt
seminarisme $alt
sensationalisme $alt
sensualisme $alt
sentimentalisme $alt
separatisme $alt
serialisme $alt
sexisme $alt
shamanisme $alt
shiisme $alt
shintoisme $alt
skandinavisme $alt
skepticisme $alt
slavisme $alt
snobbisme $alt
socialisme $alt
sofisme $alt
solipsisme $alt
somnambulisme $alt
spiritisme $alt
spiritualisme $alt
spontanisme $alt
stalinisme $alt
stoicisme $alt
strukturalisme $alt
subjektivisme $alt
supranaturalisme $alt
surrealisme $alt
svecisme $alt
syllogisme $alt
symbolisme $alt
syndikalisme $alt
synkretisme $alt
synkronisme $alt
tachisme $alt
taoisme $alt
teisme $alt
terrorisme $alt
thomisme $alt
totalitarisme $alt
totemisme $alt
traditionalisme $alt
transvestisme $alt
transvestitisme $alt
tropisme $alt
trotskisme $alt
truisme $alt
tsarisme $alt
turisme $alt
uniformisme $alt
unionisme $alt
unitarisme $alt
universalisme $alt
urbanisme $alt
utilitarisme $alt
utopisme $alt
vandalisme $alt
vegetarianisme $alt
vegetarisme $alt
verisme $alt
victorianisme $alt
vitalisme $alt
vokalisme $alt
voyeurisme $alt
vulgarisme $alt
vulkanisme $alt
zarisme $alt
zenbuddhisme $alt
zionisme $alt
ækvilibrisme $alt
æsteticisme $alt

// PB words with final -ni - stressed i
agoni $alt
androgyni $alt
@@ -2292,7 +2643,6 @@ metonymi $alt
monogami $alt
origami oreg'ami $alt
pandemi $alt
pastrami p&stR'Ami $alt
polygami $alt
salami sal'&mi $alt
socionomi $alt
@@ -2304,6 +2654,59 @@ uræmi $alt
vasektomi $alt
økonomi $alt

// PB stressed second syllable in words with initial ge
gebet $alt
gebis $alt
gebommerlig $alt
gebrokken $alt
gebrækkelig $alt
gebyr $alt
gebærde $alt
gedigen $alt
gedulgt $alt
gehalt $alt
gehejmeråd $alt
gehenna $alt
gehæng $alt
gehør $alt
gelassen $alt
geled $alt
gelejde $alt
gelinde $alt
gelænder $alt
gemak $alt
gemal $alt
gemen $alt
gemyse $alt
gemyt $alt
gemytlig $alt
genom $alt
gentil $alt
genuin $alt
gepard $alt
geranie $alt
geranium $alt
geråde $alt
gesandt $alt
gesandtskab $alt
gesims $alt
gesjæft $alt
geskæftig $alt
gespenst $alt
gestagen $alt
gestalt $alt
gestik $alt
gesvejsning $alt
gesvindt $alt
gevaldig $alt
gevalt $alt
gevandt $alt
gevind $alt
gevinst $alt
gevir $alt
gevækst $alt
gevær $alt

// words with final "in" - stressed i
aborigin $alt
adrenalin $alt
@@ -6018,7 +6421,7 @@ meriter $alt
merkantiliser $alt
metalliser $alt
metamorfoser $alt
metastaser $alt
metastasere $alt
migrer $alt
mikroskoper $alt
militariser $alt
@@ -6306,6 +6709,7 @@ refuser $alt
regaler $alt
regenerer $alt
reger $alt
ureger $alt // PB uregerlig
regionaliser $alt
registrer $alt
regreder $alt
@@ -10458,13 +10862,16 @@ fx fVegsemp@l // PB "fx" is short for 'for eksempel'
(cd'en) se:de:3n // PB
(cd'er) se:de:V // PB
emp $abbrev
hbo $abbrev // TV station
usa $abbrev
who $abbrev $allcaps // PB World Health Organization
vsop $abbrev
eu $abbrev
ekg $abbrev
co $abbrev $allcaps // PB for CO2-kvote
ngo $abbrev
edb $abbrev
mri $abbrev
wc v'ese // w is pronounces as v in Danish
(wc'et) v'ese@d
(wc'er) v'eseV
@@ -10545,6 +10952,7 @@ legenderne leg'EndVn3s
(så længe) sV||l'EN3
(så må) sV||m'O
(så har) sV||har
(ville så) vil3||sV
så sV $sentence $atstart
(virkede så) v'irkeD@||sV
(kom så) kVm||sV

+ 178
- 31
dictsource/da_rules View File

@@ -59,6 +59,7 @@
// PB words in da_list with final -ance
&) ance ($p_alt 'ANs@ // balance, romance
&) ance (+ ANs@ // PB unstressed after a syllable - ferieromance
&) ance (re+ ANse // PB afbalancere
&) ance (re$p_alt ANs'e // PB avancere
// PB general rule: [a] after consonant before m
C) a (m a // PB ham, gamle, lam
@@ -73,6 +74,7 @@
// PB general rule: [&] after k
k) a (+ & // PB kage, kaste
sk) a (k A // PB skak
_mak) a (b '& // PB makaber - stressed
// PB general rule: [a] after k before p
k) a (p+ a // PB kappe, kaptajn
k) a (pi+ & // PB [&] before i - kapitel
@@ -92,7 +94,7 @@

// PB general rule: [&] after d
d) a (+ & // PB dame, dag
d) a (g@ a // PB dagbog
d) ag (@ au // PB dagbog
dd) a (g & // PB middagstid
_d) a (m_ a // PB dam
_d) a (mm a // PB dammen
@@ -157,7 +159,7 @@
// PB general rule: [A] before nk
a (nk+ A // planke, slanke, anke, flanke
a (nklag+ & // PB anklage
a (nko+ & // PB ankomme
a (nkom+ & // PB ankomme
ang (re aN // PB angre
_) ang (eC aN // PB anger, angelsaksisk

@@ -192,6 +194,7 @@ _milli) a (r 'A // PB stressed - milliard
_trilli) a (r 'A // PB stressed - trilliard
_sejl) a (ds '& // PB stressed
_sah) a (ra 'A // PB stressed
metast) a (se '& // PB stressed
L08) av (C Au // stavn
st) av (nin &v // PB stavning
h) av (_ & // PB hav - problem with the noun "hav" [hAu]
@@ -244,6 +247,7 @@ _trilli) a (r 'A // PB stressed - trilliard
&) ation ($p_alt &S'on // delegation
&r) ation ($p_alt AS'on // koncentration
&r) at ($p_alt 'At // [A] after "r" - kammerat
&r) at (i$p_alt At // [A] after "r" - demokrati
&r) at (ur$p_alt At' // [A] after "r", stressed u - littteratur
intern) atio (nal &So // clash with "internat"
_oblig) atio (n &S'o // PB clash with "obligat" in da_list
@@ -333,6 +337,9 @@ _impres) a (rio 'A // PB stressed
_rab) a (rber 'A // PB stressed
_ar) a (ber 'A // PB stressed
eng) a (ng 'a // PB stressed
_chimp) a (n '& // PB stressed - chimpanse
pastr) a (mi 'A // PB stressed
a (sme '& // PB orgasme, entusiasme
bl) a (d & // PB blad
h) a (n & // PB han
j) a & // PB ja
@@ -450,6 +457,8 @@ restaur) ant 'AN // PB added stress
angeles &ndZ3lEs // PB
arrow &Rou // PB
abilene &bili:n // PB
s) ally &li // PB
th) a (nks & // PB thanksgiving
str) abads Ab'&s // PB stressed a, silent d
disput) a (ts '& // PB stressed
amsterd) a (m 'a // PB
@@ -458,6 +467,7 @@ amsterd) a (m 'a // PB
_domin) a (n '& // PB stressed - dominans
aw (K aw
ay (K Ej // PB a changed to E
bookm) a (ker Ej // PB

.group af

@@ -514,8 +524,9 @@ _domin) a (n '& // PB stressed - dominans
band) age &:S@ // PB gipsbandage
sC) ag &j // PB slag, slaget, Skagen, smag
sl) ag (C@ au // PB slagskib
sl) ag (ne &j // PB rædselsslagne
l) ag (_ &j // lag
opsl) ag &j // PB
opsl) ag &j // PB
f) ag (s au // PB fagsnak
l) ag (C au // PB flagstang, lagkage
l) ag (re &j // PB oplagres
@@ -606,6 +617,9 @@ _trienn) ale '&:l@
baseball bejsBO:l/2 // PB
butterfly bVtVflaj // PB
beach bi:tS // PB Beach Boys
_) blake blEjk // PB name
bridge bridZ // PB
_) bligh blAj // PB name

.group be
// PB words beginning with "be" with stress on the second syllable (850)
@@ -690,7 +704,8 @@ frederi) c (ia =ks // PB
fa) c (on s
ceylon sajl/2Vn // PB
cornichon kVrniS'VN // PB
charlie _^_EN // PB
charlie tSAli // PB
charles tSA:ls // PB
c (æsar s // PB
ni) ch (ol k // PB Nicholas
computer kVmpj'u:tV // PB
@@ -704,6 +719,15 @@ frederi) c (ia =ks // PB
connecticut kVn'etikVd // PB
carlisle kAlajl // PB
china tjajn& // PB
cleveland kli:vl&n // PB
croissant kroas'AN // PB
_) cartier kartj'e // PB
clair (voy klEr // PB clairvoyance
co (nrad kV // PB name
country kVntri // PB
chagall S&g'&l // PB name
_ali) ce s // PB
connie kVni // PB

.group d

@@ -843,7 +867,7 @@ stikor) d // PB exception - silent d in 'stikord'
ti) d (s D
ti) d (sel // PB silent d
sli) d (so D
A) d (t // PB silent d - forbudt, skudt, ladt
A) d (t++ // PB silent d - forbudt, skudt, ladt
fjer) d (e // PB silent d - fjerde
L09A) d (ta D // PB modtage, medtage, nedtage
in) d (u d
@@ -863,6 +887,8 @@ stikor) d // PB exception - silent d in 'stikord'
_) duke dZu:k // PB Duke - name
_) drive (- dRAjv // PB drive-in
_) dean (_ di:n // PB name
dubois dybw'A // PB name
dorothy _^_en // PB

.group é // added by PB
é 'e // idé, entré
@@ -878,6 +904,7 @@ stikor) d // PB exception - silent d in 'stikord'
al) er V // PB maler
mal) e (ri V // PB
perl) e @ // PB
ml) e @ // PB samlestykke
_dil) e (mma 'E // PB
ll) e (de // PB silent e - billede
midl) er V // PB midlertidig
@@ -885,7 +912,12 @@ stikor) d // PB exception - silent d in 'stikord'
_koll) e (ga 'e // PB stressed
_koll) eg (e 'ej // PB stressed kolleger
_sem) e (ster 'E // PB stressed
_) borgm) e (st 'E // PB borgmester - stressed
_) kompl) e (ks 'E // PB stressed
_grot) e (s 'E // PB gtotesk
r) e E // PB general rule: [E] after r
skr) eg aj // PB
r) e (nd a // PB røvrendt
r) e (nte &# // PB
r) e (st & // PB restlager
klatr) e V // PB
@@ -1030,6 +1062,7 @@ _en_ball) e (t 'E // PB
carst) e (n @
karst) e (n @
hest) e (n+ @ // PB hestene
serv) e @ // PB reservehjul
tr) edive aDv@ // PB tredive
entente ANt'ANt // PB
prof) essionel 'eSonel // PB
@@ -1071,8 +1104,8 @@ målesk) e e // PB måleske
strøsk) e e // PB strøske
støbesk) e e // PB støbeske
tesk) e e // PB teske

gourm) e 'e // PB gourmet
_rod) e (o 'e // PB stressed
// PB stressed e in words with -ekt - konfekt
_aff) e (kt 'E
_arkit) e (kt 'E
@@ -1088,6 +1121,7 @@ _intell) e (kt 'E
_konf) e (kt 'E
_korr) e (kt '&
_obj) e (kt 'E
obj) e (ktiv E
_perf) e (kt 'E
_proj) e (kt 'E
_prosp) e (kt 'E
@@ -1150,6 +1184,7 @@ _sakram) e (nte 'e
underl) eg ej // PB underlegen
str) eg (+ aj // PB stregen
p) eg aj // PB pegefinger
p) eggy Egi // PB name
_) ege (_ e:j@ // PB added _ - ege(træer)
_) ege (træ e:j@ // PB added _ - egetræe
L06) eg (e aj // PB p) changed to L06 to include b
@@ -1222,14 +1257,18 @@ _parent) e (s 'e PB stressed
ey i // PB jockey
eiffel ajf3l // PB Eiffeltårnet
ecstacy Est&si // PB
rev) eill (e 'Elj // PB
ef) eu Vj // PB plant
_) earl W:l/2 // PB Earl
_) earp W:b // PB name
_) east i:sd // PB Eastwood
eu (rop Wu // PB Europa
eau 'o // PB bureau, niveau
eau (kti @au // PB pladeauktion
_t) e (_ e // PB te
kin) e (s 'e // PB kineser
d) e (s_ @ // PB mødes
ar) e @ // PB vareprøve TEST

// PB plural suffix -ene
@) ene (_S3 @n@ // brødrene - the brothers
@@ -1253,9 +1292,13 @@ _parent) e (s 'e PB stressed
t) el (t_ el // PB ilttelt

// PB exceptions to the -el rule
// PB final -el i da_list - stressed e
// PB final -el in da_list - stressed e
&) el ($p_alt ''El - model
&) el (l$p_alt ''E - modellen - only one l
_app) el (sin El // PB

// PB final -elig in da_list - stress on previous syllable
&) elig ($p_alt =@li // PB jomfruelig

_) el el // elkedel
muskat) el ''El // PB
@@ -1392,6 +1435,7 @@ verdensd) el el
kuglep) en En // PB
ord) en @n
anci) enn EN // anciennitet
_) en (tusias AN // PB entusiasme
ep) en En (+ // PB fyldepen
app) en (diks 'En // PB stressed
susp) en (sion en // PB suspension
@@ -1473,6 +1517,8 @@ skizofr) en 'En // PB
vurd) ere (_ er3 // overvurdere
overs) er er // PB
g) er (+ V // unger, borgerkrig
g) er (ani er // PB geranium
g) er (man er // PB germansk
m) er (et V // PB nummeret
nysg) er (ri er // PB nysgerrig
revolv) er V // PB
@@ -1499,7 +1545,8 @@ _perif) er 'er // PB stressed
perif) er er // PB not stressed after a syllable
klav) er er // PB after a syllable - værtshusklaver
_univ) er (s 'Er // PB stressed
ubiv) er Er // PB after a syllable - skoleunivers
univ) er Er // PB after a syllable - skoleunivers
flatt) er (ende 'er // PB
n) er (_ V // PB italiener
up) er (C V // PB superfølsom
@d) er (C V // PB hæderlig - TOO BROAD?
@@ -1508,20 +1555,21 @@ _perif) er 'er // PB stressed

// not a -erne suffix
_mod) erne (+ 'ern@
&mod) erne (+ ern@
mod) erne (+ ern@
_cist) erne (+ 'ern@
&cist) erne (+ ern@
cist) erne (+ ern@
fascist) erne (+ Vn@ // exception to "&cist) erne"
_kas) erne (+ 'ern@
&kas) erne (+ ern@
kas) erne (+ ern@
_lant) erne (+ 'ern@
&lant) erne (+ ern@
lant) erne (+ ern@
plant) erne (++ Vn@
_luc) erne (+ 'ern@
&luc) erne (+ ern@
luc) erne (+ ern@
_saut) erne (+ 'ern
&saut) erne (+ ern
saut) erne (+ ern
_tav) erne (+ 'ern@
&tav) erne (+ ern@
tav) erne (+ ern@

// Exceptions to the suffix rules
// Words ending with -ere - stressed e - around 1.600 words in list file
@@ -1603,6 +1651,7 @@ reserv) ert 'ert
_) er (C %er // PB er + consonant: stress on next syllable - er'hverv
_) er (go er // PB not stress on next in "ergo..."
ov) er (+ V // PB overbevisende, sover
tatov) er er // PB tatovering
am) er (ika_ 'er // PB Amerika
_røv) er (i Vr' // PB røveri - stressed i
røv) er (i Vr // PB togrøveri
@@ -1654,7 +1703,7 @@ L06L06) er V // PB klipper
vildr) ede (_+ ED@ // PB vildrede
spr) ede (_+ ED@ // PB adsprede
ber) ede (_+ ED@ // PB berede
br) ede (_+ ED@ // PB brede
_br) ede (_+ ED@ // PB brede
_fr) ede (_+ ED@ // PB frede
vr) ede (_+ ED@ // PB vrede
ler) ede (_+ ED@ // PB fuglerede
@@ -1675,8 +1724,15 @@ L06L06) er V // PB klipper
@) et (_+ @D // PB elsket

// PB exceptions: not a 'et suffix
en_du) et (_ 'Et // PB
synge_du) et (_ 'Et // PB
sunget_du) et (_ 'Et // PB
synger_du) et (_ 'Et // PB
sang_du) et (_ 'Et // PB
@du) et (_ 'Et // PB
_sk) et et // PB sket
el) et (+ et // PB pærelet
spl) et (+ Et // PB skønhedsplet
geb) et (+ 'et // PB
s) et (_+ et // PB set
it) et (_+ 'et // aktivitet
@@ -1700,6 +1756,7 @@ _servi) et 'et // PB
_prof) et 'et // PB stressed
klarin) et et // PB
_plan) et 'et // PB
_pubert) et 'et // PB stressed
meg) et (+ et // PB not a suffix
om) et (++ 'et // PB kilometer, kometer
r) et (_++ &#t // ret
@@ -1709,18 +1766,19 @@ klarin) et et // PB
@r) et (_+ -@D // PB såret
av) et (+ @D // havet, lavet - avoid [Au]
tag) et @D
amul) et 'et // PB
amul) et 'Et // PB
alfab) et 'et // pb
_bill) et 'et // PB stressed
bill) et et // PB
_bill) et 'Et // PB stressed
_park) et 'Et // PB stressed
bill) et Et // PB
_tib) et 'et // PB
tib) et et // PB
_bill) ett 'et // PB stressed - only one t
_bill) ett 'Et // PB stressed - only one t
_kask) et 'et // PB stressed
_bajon) et 'Et // PB stressed
_tabur) et (+ '&#t // PB
bajon) et Et // PB
udsl) et et // PB udslet
udsl) et Et // PB udslet
intern) et Et // PB

// PB final -ette stressed e
@@ -1827,6 +1885,7 @@ _vinaigr) ette '&t@
.group g
g g
gg (e g // lægge
a) gg (res g // PB aggresiv - only one g
ru) g // PB rug, rugmel
fru) g (t g // PB
æ) g (ernA j // PB lægerne
@@ -1856,6 +1915,7 @@ _vinaigr) ette '&t@
l) g (s j
øl) g (e j // PB bølge, selvfølgelig
A) g (n j // PB tegn, regne
a) g (nos g // PB diagnose
sky) g (ni g // PB afskygning
i) g (no g // PB ignorere
æ) g (n+ g // PB udlægning, prægnant
@@ -1863,6 +1923,7 @@ _vinaigr) ette '&t@
ble) g (sot j // PB blegsot
ble) g (ansigt j // PB blegansigt
ble) g (fi j
e) g (enskab j // PB
L08e) g j // PB steg, spegepølse
g (å++ g // PB præstegård
val) g (år j // PB
@@ -1883,6 +1944,7 @@ _vinaigr) ette '&t@
spur) gte t@ // PB silent g - spurgte
n) gæ gE
Co) g w // PB sprog, tog, toge
østro) gen g'en // PB
vo) g (t g // PB bevogtning
surro) g (at g // PB
to) g (a g // PB exception toga
@@ -1893,7 +1955,9 @@ _vinaigr) ette '&t@
ro) g (es g // PB progesteron
o) g (raf g // autograf
o) g (n u // PB g => u - vogn, sogn
r) g (_ w
r) g (_ w // kirurg
r) gen (_ @n // PB kirurgen
r) gen (s_ @n // PB kirurgens
ær) g w // PB bjærge
r) g (er_ u // PB herberger
u) g (e :
@@ -1979,6 +2043,9 @@ _vinaigr) ette '&t@
_) gudskelov (_ gusg@lVu // PB
georgia dZV:dZj& // PB
gibraltar SibRalt'A // PB
_) gates (_ gEjts // PB name
_) gable gEjb@l // PB name
gendarm S&nd'arm // PB

.group ge

@@ -2013,10 +2080,16 @@ _korte) ge =Se
_a) ge (re g'e // PB agere
ge (nial ge // PB
ge (ni Se // PB
ge (nital ge // PB
ge (nitiv ge // PB
ge (nius // PB
ge (nind ge // PB genindspille
ger (ning gEr // PB
bud) ge (t S'E

// PB stressed second syllable in words with initial ge
ge ($w_alt %ge // PB gesjæft, gebet

.group h

h h
@@ -2033,6 +2106,7 @@ _korte) ge =Se
homer hom'er // PB Homer - Greek
hawaii h&w'a:ji // PB
heather hEDV // PB
houston hju:sdVn // PB

.group i
i i // PB i: => i - made a lot of rules redundant
@@ -2055,6 +2129,7 @@ _korte) ge =Se
t) igg eg // PB tigge
t) ig (e i // PB fattige, stige
l) ig i // PB virkelig
l) ig (ram ig // PB milligram
l) ig (a ig // PB liga
l) ig (i ig // PB religiøs
pl) ig (t ek // PB pligt
@@ -2092,6 +2167,8 @@ _princ) i (p 'i // PB stressed
gr) i (m e // PB
l) i (lla e // PB
kv) i (st e // PB
sv) i (mm e // PB svimmel
sv) i (ml e // PB svimle

// PB stress on previous syllable - around 400 words in da_list
// -ig words with the prefix be- are handled by group b - the be- rule.
@@ -2129,7 +2206,7 @@ intell) ige (n ig'e // PB intelligent
v) i (p e // PB vippe
s) i (d e // PB sidde
s) i (ds i // PB sidst
t) i (n e // PB stinke
t) i (nk e // PB stinke
_inst) i (nkt 'e // PB
f) i (ng e // PB finger
r) i (nK e // PB ring
@@ -2138,12 +2215,14 @@ intell) ige (n ig'e // PB intelligent
br) i (lle e // PB briller
vr) i (m e // PB vrimle
i (dt e // PB midt, lidt
sl) i (d i // PB slide, slidt
_sol) i (d 'i // PB solid
b) i (dt i // PB bidt
b) i (tter e // PB
sm) i (dt i // PB
sk) i (dt i // PB skidt
sk) i (mm e // PB skimmel
s) i (mp e // PB simpel
mask) i (n 'i // PB stressed - maskinskrive
par) i (s 'i // PB
h) i (d i // PB hidtil
@@ -2190,6 +2269,9 @@ intell) ige (n ig'e // PB intelligent
// PB words with final -ti in da_list - stressed i
&t) i ($p_alt 'i // politi

// PB words with final -isme in da_list (348) - stressed i
&) isme ($p_alt 'ism@ // kommunisme, egoisme

// PB words with final -inde in da_list - stressed i
&) inde ($p_alt 'en@ // malerinde

@@ -2230,6 +2312,8 @@ _konfl) i (kt 'i // PB stressed
l) i (m i // PB lim
gl) i (m e // PB glimt, glimrende
i (kK e // PB ikke, pik
d) i (kt i // PB diktatur
f) i (kt i // PB fiktiv
lin) i (k i // PB klinik
@t) i (k i // PB ferieromantik
sk) i (k i // PB skikkelse
@@ -2356,6 +2440,7 @@ _franc) i (sco 'i // PB

// PB put stress on the syllable before final 'ie' - words in da_list
&) ie ($p_alt =i3 // valkyrie
&) ie (liv$p_alt =i@ // familieliv
&s) ie ($p_alt =j3 // gymnasiereform
&) ie (l$p_alt i'E // materiel

@@ -2428,7 +2513,7 @@ _terap) i 'i
v) i (sk e // PB viskelæder
v) i (sne e // PB
l) i (e j
r) i (gt e // PB rigtigt
r) i (gti e // PB rigtigt
r) i (ca e // PB Fredericia
l) ig (g+ e // PB ligge - only one g
s) i (e j
@@ -2536,6 +2621,8 @@ _sport) iv 'iw
joint dZVjnt // PB
_) james _^_EN
jay dZEj // PB name
jess dZEs // PB Jess
jessie dZEsi // PB Jessie

.group k

@@ -2621,10 +2708,11 @@ _sport) iv 'iw
money mVni // PB
makeup mEjk'Vb // PB
madagaskar m&d&g'&sk& // PB
marilyn m&rilen // PB

.group me
// PB General rule for words with -ment
&) ment m'end // PB element, segment
&) ment m'ent // PB element, segment
// PB exceptions for the -ment rule (French words)
arrange) ment mAN // PB arrangement
avance) ment mAN // PB avancement
@@ -2733,11 +2821,13 @@ _harmo) nika =nik& // PB stressed o
A) ndn n // PB endnu -> [enu] - only one n
// exceptions
A) nd (el nd // PB andel, ejendel
kvi) nd (e n // PB
e) nd (elig n // PB endelig
ve) ndig ndi // PB udvendig
å) nd (eli n // PB åndelig
ha) nd (el n // PB
y) ndig ndi // PB
nd (ida nd // PB kandidat
ste) nd nd // PB stendynge, stendige
ke) nd (el n // PB kendelse
pe) nd (i nd // PB appendiks
@@ -2747,6 +2837,7 @@ _harmo) nika =nik& // PB stressed o
nd (om nd // PB ejendom
nd (ød nd // PB stendød
fu) nd (er nd // PB fundere
u) nd (ne nd // PB bundne
bi) nd (e n // PB forbindelse
mi) nd (e n // PB mindelund
u) nde (l n // PB silent de - misundelig
@@ -2802,6 +2893,7 @@ subtrahe) nd nd

.group ng
ng (_ N // general rule - ting, ring
i) ng N // PB // PB springvand
A) ng (e N // general rule - mange, penge
ng (evær ng // PB maskingevær
i) ngeni (ø nSin // PB ingeniør
@@ -2836,6 +2928,7 @@ subtrahe) nd nd

// PB final - ose - stressed o
&) ose ($p_alt 'o:s@ // hypnose
&) ose (r$p_alt 'o:sV // hypnoser

// PB final -ode - stressed o
di) o (de 'o
@@ -2852,20 +2945,23 @@ elektr) o (de 'o
_) o' ou' // PB for Irish names - O'Grady
s) outh aus // PB South Pacific
r) o (bin V // PB
_h) olmes (_ oums // PB name
k) oor (d oV:? // PB koordinat
_biot) o (p 'o // PB stressed
_isot) o (p 'o // PB stressed
antibi) o (tik 'o // PB antibiotika
o (L06 V // PN op, opdrage, obstruere
f) o (b o // PB fobi
_antil) o (pe 'o // PB stressed
o (bliga o // PB obligation
o (pi o // PB opium
o (piu o // PB opium
_t) o (bak o' // PB tobak
vide) o o // PB videobånd
gl) o o // PB global
kn) o (L06 o // PB knob, knop
h) o (lding Ou // PB holdingselskab
br) occ (oli Vk // PB
br) o (n V // PB bronkie
helik) o (pt 'V // PB stressed - helikopter
p) o (pu o // PB populær
p) o (tt V // PB potte
@@ -2888,11 +2984,13 @@ _antil) o (pe 'o // PB stressed
sj) o (f o // PB sjofel
o (be o // PB oberst, koben
r) o (L06 o // PB problem
r) o (ck V // PB
pr) o (p V // PB blodprop
kr) o (p V // PB
gr) ogg Vg // PB groggy
gr) og Vg // PB grog
k) og (t Vg // PB
k) og (nit Vg // PB kognitiv
hvalr) o (s V // PB
_eur) o (pa 'o // PB stressed
_eskim) o 'o // PB stressed
@@ -2904,6 +3002,7 @@ _eskim) o 'o // PB stressed
Ca) o (s V // PB kaos Laos
r) o (ma o // PB romantik
org (+ V:w // PB sorg, morgen, Norge
org (ie Vg // PB
ge) org (ine og // PB
o (rga+ V // PB organ
r) or (g oR // PB rorgænger
@@ -2950,6 +3049,7 @@ _horis) o (n 'V // PB horisont
ov (ærn+ ov // autoværn
h) ov (+ Vu // hov, sove
ov (+ Vw // PB sjov, lov, skov
o (vej+ o // PB kommandovej
o (vi+ o // PB pseudovidenskabelig
tr) o (v o // PB troværdig
sk) ov (tur Vw // PB
@@ -2963,6 +3063,7 @@ _horis) o (n 'V // PB horisont
o (fC V // PB ofte
skiz) o (fren o // PB
n) ov (++ ov // PB nova, november
oven) ov Vw // PB ovenover
_C) o (k 'V // PB beginning with 1 consonant followed by o and k: sok, nok, kok
k) o (kos o // PB
p) o (ka o // PB pokal
@@ -2973,8 +3074,12 @@ _horis) o (n 'V // PB horisont
ch) o (ko o // PN chokolade
o (mr V // PB område
o (mf V // PB omformulere
o (lga V // PB Olga, Volga
_m) o (rt V // PB mortadel
o (k V // PB okker, lok
t) or (t V:? // PB tortur
em) o o // PB demokrati
v) o (lC V // PB volt, vold
prot) o o // PB protokol
kr) o (k o // PB krokus
v) o (ke o // PB provokere
@@ -3046,6 +3151,7 @@ _metad) o (n 'o PB stressed
tr) o (pi o // PB tropisk
tr) o (pe o // PB troperne
t) or (_ V // PB faktor
mot) or V // PB
t) or (sd V // PB torsdag
t) or (n or // PB
t) or (ny V // PB tornyster
@@ -3093,9 +3199,12 @@ _metad) o (n 'o PB stressed
L11) o (ma o // PB koma, narkoman
L11) o (mman o // PB kommando
p) o (m V // PB pomp
p) o (n V // PB ponton
pomp) on VN // PB pompon
Xl) o (m V // PB lom, lomme, blomst
pl) o (m o // PB exception from the rule above (Xl) o (m) - plombe
o (m_ V // PB alderdom VERY BROAD
o (mt V // PB tomt
_) o (mC V // PB omgang
s) o (m V // PB langsomt, ensom
o (mm V // PB ensomme VERY BROAD
@@ -3116,6 +3225,7 @@ _metad) o (n 'o PB stressed
kol) o (st o // PB kolostomi
kol) o (ssa o // PB kolossal
k) o (nC V // PB konfirmand, konfekt, konkurrence
k) o (ntor o // PB
c) o (ngo V // PB
k) o (ne o // PB kone
k) o (pi o // PB kopimaskine
@@ -3127,13 +3237,16 @@ _metad) o (n 'o PB stressed
r) o (ll V // PB rolle
o (se o: // PB rose, skose, pose
h) o (spice V // PB hospice
v) od (ka Vd // PB
C) o (st V // PB post, moster
p) o (sttrau o // PB posttraumatisk
komp) o (st 'V // PB stressed
r) o (st o // PB rost
pr) o (sta V // PB prostata
fr) o (st V // PB
f) oged o:@D // PB silent g
k) o (sC V // PB kosmisk
k) o (sko o // PB bronkoskop
kok) o (s o // PB kokosnød
k) o (st o // PB kost (broom) Problem with kost = food
k) o (ste V // PB verb - koste = brooms will be mispronounced
@@ -3142,6 +3255,7 @@ _metad) o (n 'o PB stressed
helsek) o (st V // PB
bek) o (st V // OB bekostning
frok) o (st V // PB
L08) o (t V spotte, skotte
omk) o (st V // PB omkostninger
pr) o (sti o // PB prostitueret
st) o (mi o // PB stomi
@@ -3178,6 +3292,7 @@ _filos) o (fisk 'o //PB
aprop) o (s 'o // PB
r) oastbeef Ousdbif // PB roastbeef
illin) ois V:j // PB
ink) og (nito 'Vk // PB

// PB final -ol words in da_list - stressed o
&) ol ($p_alt+ 'ol // parabol
@@ -3221,6 +3336,7 @@ _filos) o (fisk 'o //PB
tr) o (ld V // PB trold
kn) o (ld V // PB knold
sn) o (t V // PB snot
ne) o (n V // PB neonlys
h) otdog VtdVg // PB
_h) o (t_ V // PB
or (l O: // PB orlov
@@ -3291,6 +3407,7 @@ _maked) on 'on // PB makedoner
sv) or (e+ or // PB svoret
_) or V // PB orientere
orm orm // PB
_h) ormon Vrm'on // PB
n) or (m O // PB
st) or (m O: // PB
b) or (t Vr // PB bortforklare
@@ -3618,6 +3735,8 @@ _success) or =V
pseu sWw // PB pseudo
posthum pOsth'um // PB
_) pete (_ pi:t // PB name
penelope pen'Elopi // PB
pony pVni // PB

.group ph

@@ -3658,6 +3777,7 @@ _success) or =V
bu) rd (eK rd
A) r (er_N // silent r - skærer
A) re (_N V // silent r - skære
æ) re V // PB lærerigt
g) re (_ rV // PB yngre
sa) rd (el rd // PB sardel
ga) rd (e rd // PB garde
@@ -3750,6 +3870,7 @@ franci) sc (o sk // PB Francisco
sheik Sajk // PB
sicilien sis'ili@n // PB - Italian island
scene sen@ // PB
i) scene (s s'en@ // PB stressed 'e - iscenesætte
speak spi:k // PB eSpeak
siegfried _^_DE // PB
slovakiet slov&k'i@D // PB
@@ -3761,6 +3882,7 @@ franci) sc (o sk // PB Francisco
shor (t SV // PB shorts
_) stone sdoun // PB namde - Stone
_) sir (_ sW: // PB Sir Arthur
sher (wood SW // PB Sherwood Forrest
er_) sig (_til saj // PB avoid [si] - glæder sig [saj] til
et_) sig (_til saj // PB avoid [si] - glædet sig [saj] til
e_) sig (_til saj // PB avoid [si] - glæde sig [saj] til
@@ -3787,9 +3909,11 @@ erklære_) sig (_ saj // PB
hygge_) sig (_ saj // PB
skød_) sig (_ saj // PB
tog_) sig (_ saj // PB
kom_) sig (_ saj // PB
ør_) sig (_ saj // PB klør sig, gør sig
_) sig (_ud_ saj // PB rode sig ud i
_) sig (_af_ saj // PB tage sig af
_) sig (_ind_ saj // PB bilde sig ind
ak_) sig (_ saj // PB drak sig fuld
gik_) sig (_ saj // PB gik sig en tur
red_) sig (_ saj // PB red sig en tur
@@ -3819,6 +3943,7 @@ kompromi) s ' // PB stress added
smiley smajli // PB
straight sdrE:jt // PB
seattle si'&t@l // PB
_) sunset sVnsEt PB

.group t
t t
@@ -3872,6 +3997,8 @@ glemen) t (al t
tracy trEjsi // PB
tombstone tu:msdoun // PB
town tAwn // PB
touchdown tVtSdawn // PB touchdown

// PB final -tek - stressed e
_apo) tek t'ek
_biblio) tek t'ek
@@ -3938,7 +4065,7 @@ laryngi) ti (s =ti
meningi) ti (s =ti
pas) tis t'is
raki) ti (s =ti
lek) ti S
lek) ti (e S
ak) ti (e S // PB aktie
&) ti (on+ S // station, dispotion
bas) ti (on // PB
@@ -3973,6 +4100,7 @@ meningi) ti (s =ti
_) u (retfæ++P1 u // uretfærdig - prefix
_) u (ds+ u // udsætte
u (de u // PB uden, udenfor
uskyldig usg'yldi // PB

// PB nouns with final -um in da_list - stress on previous syllable
&) um ($p_alt =Om // PB jubilæum
@@ -4063,11 +4191,13 @@ meningi) ti (s =ti
l) u (n_ u // PB lun
l) u (ne u // PB lune
l) u (nte 0 // PB lunte
j) u (nt 0 // PB junta
l) u (ka u // Lukas
h) u (nd u // PB hund
r) u (s u
r) u (st O // PB udrustning
ue (_ u: // PB due, vindue, statue
aven) ue 'y // PB
alb) ue u: // PB albuerum
st) ue u: // PB stuearrest
d) ue (s u: // PB vinduesstørrelse
@@ -4094,6 +4224,7 @@ centrif) u (g 'u // PB stressed
_k) u (n_ 0 // PB kun
kl) u (ns 0 // PB
k) u (l O // PB kulmine
k) u (li u // PB kulisse
hovedk) u (ls u // PB
k) u (ld u // PB kulde
k) u (ldio O // PB kuldioxid
@@ -4112,6 +4243,7 @@ hovedk) u (ls u // PB
m) u (nt 0 // PB munter
sn) u (L06 0 // PB snup
s) u (L06 0 // PB suppe
s) u (pple u // PB suppleant
s) u (bs u // PB substitut
u (nk 0 // PB sunket
h) u (n u // PB hunkøn
@@ -4132,6 +4264,7 @@ hovedk) u (ls u // PB
p) u (lv 0 // PB pulver
_r) u (b_ O // PB rub
n) u (l 0 // PB nul
nn) u (lle u // PB annullere
_r) u (bbe O // PB rubbe, rubbet
k) u (ffert O
b) u (k O // PB buk
@@ -4162,6 +4295,8 @@ proven) u y
s) u (rrel Y // PB surreel
s) u (rrea y // PB surrrealistisk
t) u (berkul y // PB tuberkulose
res) ume ym'e // PB
res) umé ym'e // PB
g) ui (tar i // PB guitar
resso) u (rs 'u
comp) u (ter ju
@@ -4220,6 +4355,7 @@ proven) u y
wright _^_EN // PB
willie wili // PB
_) wild wAjld // PB
ware w&:r // PB software

.group x

@@ -4237,8 +4373,9 @@ proven) u y
r) yg (_en y // PB "ryg en cigar"
r) yg (ning y // PB silent g
r) yg (C '@k, // PB rygrad
pr) yg (l y // PB
tr) yg (le Y // PB trygle
str) yg yj // PB strygetøj
str) yg yj // PB strygetøj
r) y (s W // PB ryste
fr) y (s y // PB fryse
kr) y (st Y // PB kryster
@@ -4257,6 +4394,8 @@ proven) u y
_l) y (ste_ y // PB
&l) y (st y // PB åbenlyst
fl) y y // PB flystøtte
fl) y (tn W // PB flytning
afl) y (t y // PB aflytning
L08) y (t W // PB spyt, skyts
sk) y (ti y // PB Skytien, skytisk
sk) y (ter y // PB skyter
@@ -4283,6 +4422,7 @@ _molek) y (le 'y // PB stressed
k) yss Ws // PB kysse
k) y (se y: // PB kyse
y (nK W // PB changed from Y to W - synge, ynde
s) y (ndrom y // PB
s) y (ns y // PB
s) y (nl y // PB synlig
s) y (nkr y // PB synkron
@@ -4292,6 +4432,7 @@ _molek) y (le 'y // PB stressed
l) y (n y // PB lyn
kl) y (nk W // PB klynke
pl) y (n W // PB plyndre
s) y (tten W // PB
fl) y (t_ W // PB flyt
fl) y (tt W // PB flytte
afl) y (tt y // PB
@@ -4307,6 +4448,7 @@ _molek) y (le 'y // PB stressed
yankee j&nki // PB
yale jEjl/2 // PB
cl) yde ajd // PB
b) ypass ajpa:s // PB
d) y (lan i // PB name
obb) y i // PB hobby, lobby
brookl) y (n i // PB
@@ -4332,7 +4474,7 @@ brookl) y (n i // PB
æ E

// PB nouns ending with -ær in da_list - stressed last syllable
&) ær ($p_alt 'Er // elementær
&) ær ($p_alt ''Er // elementær

// æ (CK E
r) æ (dd a // PB forræder
@@ -4365,7 +4507,9 @@ brookl) y (n i // PB
tr) æ (t &# // PB træt
tr) æ (f &# // PB træffe
tr) æ (k &# // PB trække
tr) æ (b &# // PB træbord
fr) æ (k &# // PB
skr) æ &# // PB skrænt
gr) æ (n & // PB grænse
_migr) æ (ne '& // PB stressed
gr) æ (s &# // PB græs
@@ -4407,7 +4551,7 @@ majest) æ (t 'E // PB stressed æ
gl) øgg Wg // PB gløgg
g) øg (l Vj // PB gøgler
l) ø (s W
C) ø (j W# // PB søjle, bøjle
C) ø (j+ W# // PB søjle, bøjle, sprøjte
L09) ø (g V // PB m => L09 (m + n) - møg
_n) ø (d@ 'W: // PB nød- stressed - nødsituation
_n) ødt (_ Wd // PB nødt
@@ -4417,6 +4561,7 @@ majest) æ (t 'E // PB stressed æ
r) ø (mer W: // PB strømere
s) ø_ W:
L08) ø (g W // PB skøge
sp) øg (_ Vj // PB spøg = joke
s) ø (g W // PB søgte
sp) ør (g W:r // PB spørge
sp) ør (gs Wr // PB spørgsmål
@@ -4452,7 +4597,7 @@ majest) æ (t 'E // PB stressed æ
r) å (dg+ V // PB rådgive
ård O:? // PB gårdmand, bondegård - silent d
ården O@n // PB gården
h) årde V: // PB
h) årde V: // PB
p) å (ske O // PB påske
s) å O // PB så
s) å (vel V // PB
@@ -4460,6 +4605,7 @@ majest) æ (t 'E // PB stressed æ
s) å (_få V // PB
s) å (kald V // PB såkaldt
s) å (mænd V // PB
_var_s) å (_ V // PB jeg var så glad
jas) å (_ 'V // PB jaså
alts) å V // PN altså
hvorn) år 'O? // PB hvornår - stressed
@@ -4474,6 +4620,7 @@ uimodst) å (elig 'O // PB stressed
sl) å (s V // PB slås
sm) å (C@ V // PB småkage, småfolk
m) å (l++ O // meningsmåling
m) å (ltid+ V // PB
s) å (d V // PB sådan
s) å (t V // PB undersåt
skr) å (p V // PB skråplan

+ 2
- 1
dictsource/de_list View File

@@ -34,7 +34,7 @@ _| paIp
_: d'Op@lp,UNkt
_; Str'ICpUNkt
__ ,Unt3Str'IC
_- b'IndEstr,IC
_- b'Ind@str,IC
_! 'aUs_|r,u:f@ts,aIC@n
_? fr'Ag@ts,aIC@n
_' ,apo:str'Of
@@ -424,6 +424,7 @@ beat _^_EN
browser _^_EN
byte _^_EN
camcorder _^_EN
change _^_EN
chart _^_EN
chat _^_EN
coach _^_EN

+ 2
- 2
dictsource/de_rules View File

@@ -482,7 +482,7 @@
B) gn (A g@-n

i) gt (_ Ct
zei) gt (_ kt
ei) gt (_ kt
gtet (_ kt@t
gtest kt@st

@@ -1150,6 +1150,7 @@ formal) ie =I@
v v
v) v
v (_N f
_) v (A v

_) v (lad v
_) v (lies f
@@ -1159,7 +1160,6 @@ formal) ie =I@
_) vi (CC vI
_) vi vi:

_) v v
vater fA:t3
väter fE:t3
_) v (ät f

+ 35
- 34
dictsource/dict_phonemes View File

@@ -1,7 +1,7 @@
Phonemes which are used in the *_rules and *_list files


Dictionary af_dict 2010-08-03
Dictionary af_dict 2010-08-26

& &: 3: @ @- @L @U a
A: aI AI aU A~ E e: e@
@@ -53,7 +53,7 @@ p r s S t T v w
x z


Dictionary da_dict 2010-08-11
Dictionary da_dict 2010-08-26

& &# 0 3 @ @- a A
e E i o O u V W
@@ -65,7 +65,7 @@ l/2 l/3 m n N p r R
s S t T tS v w z


Dictionary hu_dict 2010-08-13
Dictionary hu_dict 2010-09-13

A a: E e: i i: o o:
u u: Y y y: Y:
@@ -76,7 +76,7 @@ n^ p r R R2 s S s2
t tS ts v z Z


Dictionary de_dict 2010-07-27
Dictionary de_dict 2010-08-25

3 3: @ @- a A A: aI
aU E E2 E: e: EI i I
@@ -89,18 +89,17 @@ n N p pF r s S t
tS ts v w x z Z


Dictionary el_dict 2008-12-16
Dictionary el_dict 2010-08-26

@ @- a aI e i o oI
u
a aI e i o oI u

* ; b c C d D f
g j k l l^ m n N
n^ p Q r R s s; t
T ts v x z z;
; b c C d D f g
j k l l^ m n N n^
p Q r R s s; t T
ts v x z z;


Dictionary en_dict 2010-08-11
Dictionary en_dict 2010-09-14

0 3 3: @ @- @2 @5 @L
a a# A: A@ aa aI aI@ aU
@@ -116,7 +115,7 @@ S t T t2 tS v w x
z Z


Dictionary eo_dict 2010-05-19
Dictionary eo_dict 2010-08-27

@- a aI aU e eI eU i
o oI u uI
@@ -150,7 +149,7 @@ l m n N p r s S
s2 t v w Z


Dictionary fr_dict 2010-08-06
Dictionary fr_dict 2010-09-04

@ @- a A~ e E E: E~
i I o O O~ u u: w
@@ -200,7 +199,7 @@ q r r. s S s. t T
t. th th. v w x z


Dictionary ta_dict 2010-08-12
Dictionary ta_dict 2010-09-14

a a: aI aU e E e: i
I i: o o: u U u2 u:
@@ -325,16 +324,17 @@ k l m n p R s S
t tS v w x


Dictionary nl_dict 2010-08-13
Dictionary nl_dict 2010-09-13

8 @ @- A a: A~ E e:
EI eU i I O O: o: u
VU Wy y Y: yU
8 @ @- a A a: A~ E
E2 e: EI eU i I o O
O: o: O~ u VU Wy y Y:
yU

* : ; b d D f g
h j k l m n N n^
p Q r s S t tS v
v# w x z Z
* : ; b d D dZ f
g h j k l m n N
n^ p Q r s S t tS
v v# w x z Z


Dictionary no_dict 2010-01-20
@@ -372,7 +372,7 @@ S s; S; t t; tS ts tS;
ts; v w x z Z Z;


Dictionary pt_dict 2010-07-03
Dictionary pt_dict 2010-09-04

& &/ &U~ &~ @ @- a A
aI aU e E eI EI eU EU
@@ -441,7 +441,7 @@ R2 s S t T tS ts v
w z Z


Dictionary sv_dict 2010-05-28
Dictionary sv_dict 2010-09-08

8 @ a A: E E- e: E:
I i: O o: U u- u: W
@@ -463,7 +463,7 @@ p Q R s S t T tS
v w x z


Dictionary sl_dict 2010-07-14
Dictionary sl_dict 2010-08-14

@ a a: e E e: i i:
o O o: u u: y
@@ -498,7 +498,7 @@ p Q r s s. t t[ tS;
v w x z Z z.


Dictionary zh_dict 2010-06-29
Dictionary zh_dict 2010-09-13

@ @r a A ai Au E ei
i i. i[ iA iE io iou N-
@@ -618,15 +618,16 @@ t; tS ts ts; v x z Z
z;


Dictionary nso_dict 2010-05-26
Dictionary nso_dict 2010-08-27

@ a e i m- n- N- o
u
@ a e E i m- n- N-
o u U

- : b d D dZ f g
h j J k l l# m n
N n^ p Q r R R3 s
S t T tS v w x z
- : ; b B d D dZ
f h j J k K l l#
m n N n^ p Q R3 s
S t tS v w x X x2
z


Dictionary ht_dict 2010-06-29

+ 55
- 43
dictsource/el_list View File

@@ -8,49 +8,49 @@


// numbers
_0 miD'en
_1 'ena
_2 D'io
_3 t@-@'ia
_3f t@-@'is
_4 t'esera
_4f t'eseris
_5 p'ente
_6 'eksi
_7 ept'a
_8 okt'o
_9 en'ea
_1X D'eka
_11 'enDeka
_12 D'oDeka
_2X 'ikosi
_3X t@-*i'anda
_4X sar'anda
_5X pen'inda
_6X eks'inda
_7X ebdom'inda
_8X ogd'onda
_9X enen'inda
_0C ekat'on_
_1C0 ekat'o
_1C ekat'on_
_2C D;ak'os;a_
_3C t@-*iak'os;a_
_4C tet@-*ak'os;a_
_5C pendak'os;a_
_6C eksak'os;a_
_7C eptak'os;a_
_8C oktak'os;a_
_9C en^ak'os;a_
_0M1 Cil^'aDes
_1M1 C'il^a // no '1' before thousand
_1M2 'ena|ekatom'irio
_0M2 ekatom'iria
_1M3 'ena|Disekatom'irio
_0M3 Disekatom'iria
_dpt k'oma
_. tel'ia
_0 miD'en
_1 'ena
_2 D'io
_3 tr'ia
_3f tr'is
_4 t'esera
_4f t'eseris
_5 p'ente
_6 'eksi
_7 ept'a
_8 okt'o
_9 en'ea
_1X D'eka
_11 'enDeka
_12 D'oDeka
_2X 'ikosi
_3X tri'anda
_4X sar'anda
_5X pen'inda
_6X eks'inda
_7X ebdom'inda
_8X ogd'onda
_9X enen'inda
_0C ekat'on_
_1C0 ekat'o
_1C ekat'on_
_2C D;ak'os;a_
_3C triak'os;a_
_4C tetrak'os;a_
_5C pendak'os;a_
_6C eksak'os;a_
_7C eptak'os;a_
_8C oktak'os;a_
_9C en^ak'os;a_
_0M1 Cil^'aDes
_1M1 C'il^a // no '1' before thousand
_1M2 'ena|ekatom'irio
_0M2 ekatom'iria
_1M3 'ena|Disekatom'irio
_0M3 Disekatom'iria
_dpt k'oma
_. tel'ia
_#ος %os // ordinal suffix

// articles
ο o $u // definate article
@@ -85,6 +85,8 @@ _. tel'ia


// verbs
θα $u // future

είμαι $u // to be
είσαι $u
είναι $u
@@ -165,6 +167,8 @@ _. tel'ia
προς $brk // towards
μέχρι $brk // until
κοντά $brk // beside
επί $u


// conjunctions

@@ -180,7 +184,15 @@ _. tel'ia
επειδή $pause // because
γιατί $pause // because, why
διότι $pause // because, for
για $pause
ότι $pause


// Pronunciation exceptions



(για να) jan'a

// Letters
// If a letter has a "word" pronunciation which is different from its

+ 13
- 11
dictsource/el_rules View File

@@ -86,6 +86,8 @@
ι i
C) ι (A ;
ρ) ι (A i
δ) ι (α_ i
ι (ε i

.group κ
κ k
@@ -157,17 +159,17 @@
ν_) π b

.group ρ
ρ R
ρρ R
A) ρ (A *
C) ρ @-*
αυ) ρ @-* // υ becomes consionant [v]
αύ) ρ @-*
ευ) ρ @-*
εύ) ρ @-*
ηυ) ρ @-*
ηύ) ρ @-*
ρ r
ρρ r
A) ρ (A r
C) ρ r
αυ) ρ r // υ becomes consionant [v]
αύ) ρ r
ευ) ρ r
εύ) ρ r
ηυ) ρ r
ηύ) ρ r


.group σ

+ 8
- 5
dictsource/en_list View File

@@ -223,6 +223,7 @@ _₠ jU@roU
≠ n0t'i:kw@LtU
№ nju:m@roU
। dVnda#
● bl,aks'3:k@L

ß S,A@p'Es
ə SwA:
@@ -326,8 +327,8 @@ _60o s'Iksti@
_70o s'Ev@nti@
_80o 'eIti@
_90o n'aInti@
_0Co h'Vndr@dT
_0M1o T'aUz@ndT
//_0Co h'Vndr@dT
//_0M1o T'aUz@ndT


// ABBREVIATIONS
@@ -2090,6 +2091,7 @@ supplier s@plaI3
suppose $2
suprise $2 // misspell
surest SU@@st
surplus s3:pl@s
surrogate sVr@geIt
?3 surrogate s3:@geIt
survey s3:veI $onlys
@@ -2440,6 +2442,7 @@ Dahomey $2
Damascus da#mask@s
Danish deInIS
Delhi dElI
Dhabi dA:bi
Djibouti dZIb'u:tI
Donegal d0nI2g'O:l
Durham dVr@m
@@ -2615,6 +2618,7 @@ Barack ba#rA:k
Barbara bA@b@r@
Betsy bEtsI
Bjorn bjO@n
Bjørn bj3:n
Boris b0rIs
Brien braI@n
Candace kandIs
@@ -2646,7 +2650,7 @@ Dmitri d@mi:tri
Dominic d0mI2nIk
Donaghy d0n'hi:
Doris d0rIs
Dorothy dO@r@Ti
Dorothy d0r@Ti
Dougall du:g@L
Duncan dVnk@n
Dvina d@vi:n@
@@ -2911,7 +2915,7 @@ through Tru: $u $strend2
toward tUwO@d $2
over oUv3 $u $strend2 $only
under Vnd3 $u $strend2 $only
within wIDIn $u2
within wIDIn $u2 $strend2 $brk
without wIDaUt $u2 $strend2
above @bVv $u2 $strend2
about a#baUt $u2 $strend2
@@ -3156,7 +3160,6 @@ since sIns $pause
thus DVs $pause
though ,DoU
whenever wEnEv3 $u2 $pause
within $u $pause
whoever hu:Ev3 $2
whatever w0tEv3 $2 $pause
?3 whatever wVtEv3 $2 $pause

+ 8
- 2
dictsource/en_rules View File

@@ -1173,7 +1173,7 @@
_) be (sC bI2
_) be (stia bE
_) be (tC bI2
_) be (v bE
_) be (vA bE
be (gA bI2
be (gr bI2
be (lat bI2
@@ -1489,6 +1489,7 @@
_) dj (Y dZ
_) d (nie d
_) d (wY d // allow _dw
_) d (h@@ d

d (d
_) d' (AP2 d
@@ -2608,6 +2609,8 @@
&) i (c_ =I
&) i (ca_ =I
&) i (cal =I
&) i (cism_ =I
&) i (cist_ =I
pr) i (ce aI
adv) i (ce aI
dev) i (ce aI
@@ -3283,6 +3286,7 @@
_) k (L01Y k
_) k (hY k
_) k (wY k
_) kj (e@ kj
_) kn (Y n
kn (if n
kn (iv n
@@ -4197,6 +4201,7 @@
l) ov (e Vv
_l) ove Vv
cl) ov (e oUv
_sl) ov (enA oUv
pl) ov oUv
pull) ov oUv
m) ov (A u:v
@@ -4346,6 +4351,7 @@
_) pre (C@ pr%I
_) prea (ch pri:
_) pre (am pri:
_) pre (cinc pri:
pre (cio prE
preda (to prEd@
prede (ces pri:dI
@@ -5465,7 +5471,7 @@
6_) 's (_ I2z
16_) 's (_ z
're (_S3 @
've (_S3 v
've (_S3 @v
'd (_S2 d
'll (_S3 @L


+ 12
- 10
dictsource/eo_list View File

@@ -30,14 +30,14 @@ _0M4 duili'ono
_dpt _komo_

// ordinal numbers
_#a a
_#aj aI
_#an an
_#ajn aIn
_#-a a
_#-aj aI
_#-an an
_#-ajn aIn
_#a %a
_#aj %aI
_#an %an
_#ajn %aIn
_#-a %a
_#-aj %aI
_#-an %an
_#-ajn %aIn

// accent names
_lig ligat'uRa
@@ -69,6 +69,8 @@ _? demandosigno
_! _k@-*isigno_
_- dividost@-*eko
__ subst@-*eko
_' apost@-*'ofo
_" tsito
~ tildo
° gradoI
% p@-*otsento $max3
@@ -80,8 +82,8 @@ __ subst@-*eko
| duktosigno
* asteRisko $max3
© kopiRaIto
_( R'ondak@-*'ampo
_) f'eRmaRondak@-*'ampo
_( parentezo
_) f'eRmaparent'ezo
_[ R'ektak@-*'ampo
_] f'eRmaRektak@-*'ampo
_{ k'uRbak@-*'ampo

+ 4
- 1
dictsource/fr_rules View File

@@ -27,7 +27,7 @@
// http://www.fluxnic.net/cicero
//
// Rules are now maintained by Michel Such <[email protected]>
// Last update: 2010-08-01 Michel Such <[email protected]>
// Last update: 2010-09-04 Michel Such <[email protected]>
//

// Letter classes:
@@ -136,6 +136,7 @@ _C) aud (_ od // Maud
bb) aye (X ei // abbaye
ay (C E // aymé
ay Ej // paye
ay (ak aj // kayak
ay (_ E // display
Xl) ayer (X EjWr // player, layer
h) am (_S2 am
@@ -206,6 +207,7 @@ _) be (L15A _^_en
toma) c (_
se) c (ond g // seconde secondaire
c k // recoin donc
zin) c (_ g // zinc

cient (_ sit2 // ils appr�ient, remercient.
effi) cient sjA~ // coefficient
@@ -578,6 +580,7 @@ gu) eu (ler Y // gueuler
_y) en (_ En
iew) er (X er2
_m) e (ga e
app) en (di E~ // appendice


// group e: English section

+ 12
- 0
dictsource/hu_list View File

@@ -1178,6 +1178,18 @@ diagnosztizálható $unstressend
működik $unstressend
hat $unstressend
mutatnak $unstressend
rés $unstressend
szélén $unstressend
lógott $unstressend
tűnő $unstressend
kötni $unstressend
lopni $unstressend
döntöttem $unstressend
szerzett $unstressend
érted $unstressend
járni $unstressend
döntöttek $unstressend
írt $unstressend

// word pairs


+ 14
- 1
dictsource/hu_rules View File

@@ -46,7 +46,8 @@
jo) bbr (a bR2
tö) bbr (e bR2
kise) bb (ség b

tö) bb (száz b
tö) bb (száz b

.group c
c ts
@@ -223,6 +224,9 @@ menetren) dsz (erű d|s
föl) d (szegély d
stran) d (szezon d
_hol) d (sarló d
mó) d (sor d
csalá) d (segít d


.group dz
fogó) dz (kod ts
@@ -456,6 +460,9 @@ harmince) gy (edik J:
t) í (zes i
sz) í (vel i:
_t) í (zük i
_sz) í (vattak i
_sz) í (vattákk i
_sz) í (vató i

.group j
j j
@@ -695,6 +702,8 @@ gyalogo) s (zászló S
szennye) s (zsá S
alvá) s (zavar S
magatartá) s (zavar S
erőforrá) s (zabál S
működé) s (zava S

.group ss
ssz ss2
@@ -1123,6 +1132,10 @@ művele) t (sáv t
zár) t (sorú t
skó) t (juhász t
szerete) t (szolgálat t
ú) t (jelzés t
vizsgála) t (sor t
dagana) t (sej t
tábláza) t (sor t

.group ts
ts (_S2 tS //general rule with word end of ts letters

+ 140
- 0
dictsource/nl_list View File

@@ -386,6 +386,7 @@ glimmer $alt
glinster $alt
glitter $alt
glunder $alt
goeder $alt
halter $alt
hamer $alt
hamster $alt
@@ -646,13 +647,149 @@ metrage me:tr'a:Z@
outillage utij'a:Z@
vrijage vre:j'a:Z@

// stress on final -et
facet $2
pincet $2
cachet kAS'E
crochet krOS'E
manchet mAnS'Et
planchet plAnS'Et
pochet pOS'Et
cadet $2
kadet $2
biljet $2
sajet $2
sujet syZ'Et
banket $2
boeket $2
briket $2
etiket $3
klinket klINk'Et
koket $2
kroket $2
loket $2
musket $2
pakket $2
parket $2
piket $2
raket $2
winket $2
amulet $3
ballet $2
cabriolet ka:briol'Et
corselet $3
couplet kupl'Et
doublet dubl'Et
epaulet e:po:l'Et
filet fil'e:
gilet Zil'Et
kotelet $3
omelet $3
palet $2
pamflet $2
pistolet pisto:l'Et
poulet pul'Et
reglet re:Ql'Et
skelet sk@l'Et
tablet $2
toilet tv#Al'Et
violet $3
bajonet $3
cabinet $3
carnet $2
castagnet kAstAn^'Et
kabinet $3
klarinet $3
kornet $2
marionet $4
sonnet $2
spinet $2
vignet vIn^'Et
karpet $2
lampet $2
pipet $2
toupet tup'Et
trompet $2
baret $2
cabaret ka:ba:r'Et
floret $2
lazaret $3
minaret $3
portret $2
sigaret $3
closet klo:z'Et
corset $2
falset $2
kwartet $2
kwintet $2
motet $2
nonet $2
octet $2
septet $2
sextet $2
brevet br@v'Et
corvet $2
servet $2
buffet byf'Et
budget b8dZ'Et
rozet $2
sorbet $2
duet dy'Et
jacquet Zak'Et
menuet me:ny'Et
silhouet silu'Et
tourniquet turnik'Et

amorette $3
amourette a:mu*'Et@
anisette a:niz'Et@
brunette $2
cassette $2
chambrette Sambr'Et@
coquette ko:k'Et@
couchette kuS'Et
courgette kurZ'Et
diskette $2
estafette $3
etiquette e:tik'Et@
kokette $2
maisonnette mEzOn'Et@
majorette $3
maquette ma:k'Et@
modinette $3
musette $2
pirouette pi*uv#'Et@
pochette pOS'Et
operette o:p@r'Et@
raclette $2
roulette rul'Et@
soubrette subr'Et@
suffragette syfra:Z'Et@
ultraviolette 8ltra:vio:l'Et@
vedette v@d'Et@
violette $3
wasserette $3


// pronunciation exceptions
aangrijpend $2
agenda $2
amnestie $3
bourgondier burx'o:ndi:@r
circuit sIrku'i
chalet Sa:lE
champagne SAmp'An^@
champignon SAmpij'On
chanson SA~s'O~
chapiter $2
charade $2 // ?? what is plural
chassis SAs'i
chat tSEt
check tSEk
chiffon Sif'On
contour ko:nt'ur
dynastie $3
eucharistie $4
ingewikkeld $3
ingrijpend $2
ingeval $3
@@ -668,6 +805,7 @@ ongerieflijk $3
ongrondwettig $3
proces $2
renaissance rEne:s'A~s@
sacristie $3
tegenaan $3
tegenin $3
tegenover $3
@@ -675,11 +813,13 @@ tegendraads $3
tegennatuur $4
tegenstrijdig $3
tegenwoordig $3
travestie $3
waarschijnlijk $2



// names
charlotte $2
Inge IN@
Ingeborg INe:bOrx
Ingmar INmAr

+ 63
- 25
dictsource/nl_rules View File

@@ -18,11 +18,15 @@
ages (_S1 s
age (_$w_alt a:Q@
aire (_ 'E:r
@) ant (_ 'Ant

@) a (de_ 'a:
@) a (ta_ 'a:


.group b
b b // auto-devoice at end-of-word
bb b
b) b
bs (_N ps

&) baar (_ =ba:r
@@ -44,18 +48,35 @@
c k
ch x
_) ch S
_) ch (arit x
_) ch (ador tS
_) ch (ao x
_) chang (e SA~Z
_) chaperon S,Ap@rO~n
_) charg (@ SArZ
_) ch (ari x
_) ch (arter tS
_) chau (ffe S%o:
_) chau (vin S,o:
_) ch (emi x
_) cheque SEk
_) cherry tSEri
_) chi (cane S%i
_) ch (ip tS
_) ch (olest x
_) ch (lo x
_) ch (ole x
_) cho (que SO
_) ch (or x
_) ch (r x
&) che (_ =S
ck k
cieel S'e:l
ciële S'e:l@
coach ko:tS


.group d
d d // auto-devoice at end-of-word
dd d
d) d
dt t
ds (_N ts

@@ -73,8 +94,10 @@
ee e:
eeuw eU
eu Y:
@) ee (l_ 'e:
@) ee (m_ 'e:

eau o: //words with French origin
@) ee (_ 'e:
@) ee (X_ 'e:
@) ee (r_ 'I:
@) ee (rt_ 'I:
@) ee (rd_ 'I:
@@ -83,31 +106,32 @@
it) eit (_ 'EIt
&) el (_ @l
&) eld (_ @ld
&) ele (_ @l@
&) ele (_ 'e:l@
&) em (_ @m
&) en (_S2q @n
&) en (_S2qd @n
&) ens (_S3q @ns
&) end (_ @nd
&) ende (_ @nd@
@) ent (_ 'Ent
&) er (_ @r
&) ere (_ @r@
&) er (en_$p_alt @r // where 'eren' is not a verb ending
eren (_ 'I:r@n
&) es (_ @s
eau o: //words with French origin
@) etten (_S3 @n
@) eur (_ 'Y:r

_) er (@P2 Er
@) e (raar_ @

&) e (nB@ @
&) e (nB@ E2
id) e (nt E
&) e (rC@ @
&) e (rC@ E2



.group f
f f
ff f
f) f


.group g
@@ -128,6 +152,7 @@
C) h (K

_) her (@P3 hEr
_) her (en hI:r


.group i
@@ -143,16 +168,18 @@
m) ie (_ 'i
p) ie (_ 'i

ie (f_ 'i
ie (r_ 'i
&) ica (_ =ika:
ie (X 'i
ie (rd_ 'i
@) ig (_S2d @x
@) ige (_ @Q@
@) ij (n_ 'EI
_) in (C@P2 'In
// _) in (gP2 'In
io (nage iO
@) isch (_ =is
@) ische (_ =is@
@) ist (_ 'Ist


.group j
@@ -161,7 +188,7 @@

.group k
k k
kk k
k) k

_) koning k'o:nIN // in compounds
_) koningin ko:nIQ'In
@@ -169,7 +196,7 @@

.group l
l l
ll l
l) l
&) lijk (_S4 l@k
&) lijke (_S5 l@k@
&) laan (_S4 la:n
@@ -178,14 +205,15 @@

.group m
m m
mm m
m) m

manage (ment ma:nIdZ
_) mee (@P3 m'e:


.group n
n n
nn n
n) n
ng N
nj n^

@@ -205,6 +233,7 @@
ou VU
ou (rage u

oo (X 'o:
telef) oo (n 'o:
_) op (@@P2 'Op
_) open (@P4 'o:p@n
@@ -238,7 +267,7 @@

.group p
p p
pp p
p) p
_) ph f
ph (K f

@@ -248,6 +277,7 @@
qu kv
@) qu (eer k
@) qu (eren_ k
@) que (_ k


.group r
@@ -266,7 +296,7 @@

.group s
s s
ss s
s) s
sch sx
sch (_ s
sch (e_ s
@@ -278,9 +308,13 @@

.group t
t t
tt t
tie (_ tsi
c) tie (_ si
t) t
tie (_ =tsi
c) tie (_ =si
k) tie (_ =si
p) tie (_ =si
s) tie (_ =ti
cra) tie (_ ts'i
tj t;
tsj tS
_) th t
@@ -289,6 +323,8 @@
t (hav t
_) toe (@P3 t'u

_) team t'i:m
team (_ ti:m

.group te
_) tegen (P5 t'e:Q@n
@@ -350,6 +386,8 @@

.group y
y i
y (CK I
y (x I


.group z

+ 4
- 3
dictsource/pt_list View File

@@ -309,8 +309,7 @@ aquele &k'ely $u+ $nounf // that
aquela $u+
daquele d&k'ely $u+ $nounf

?1 que ky $u
?2 que ke $u
que $u // pronunciation is in pt_rules

// possessive adjectives
meu $u+ $nounf
@@ -325,7 +324,7 @@ seu $u+ $nounf
sua $u+
seus $u+
suas $u+
?2 nosso $u+ n'OsU
?2 nosso $u+ // n'OsU
?2 nossa $u+ n'Os&
?2 nossos $u+ n'OsUs
?2 nossas $u+ n'Os&s
@@ -738,7 +737,9 @@ elixir eliSir
page p'eIdZ
?2 pior pi'Or
?2 piores pi'O*is
preço $alt2
python p'aIT&~N
queda $alt
?1 readme r'i:dmi:
?1 sapi s,ap'i
?1 scanner sk'En&r

+ 4
- 0
dictsource/pt_rules View File

@@ -169,6 +169,8 @@
e (co_ E
e (ctA_ E
e (ctAm_ E
e (çA_ E
e (çAm_ E

e (de_ E
e (dem_ E
@@ -656,6 +658,8 @@
qü kw
qu (Y k
qu (K ku
?2 _) que (_K ke
_) que (_ ky
?1 _) qua kwa // quatro, etc.
?1 _) que ke // quente, etc.
?1 _) quei (C k'eI // queira, queima, etc

+ 63
- 61
dictsource/sv_rules View File

@@ -338,8 +338,7 @@
garant g%aR'ant
gata gA:ta
glöm glWm
guide g'aId
guider g'aIdER
guid (e g'ajd
group _^_EN

.group h
@@ -463,82 +462,85 @@

.group o
o u:
o (CC O

//sort
o (C% U
o (CC O
pr) o (b %O
o (bb O
o (dd O
o (mm O
o (pp O
o (ss O
o (tt O
o (ff O
o (rC u:
o (rr O
o (ll O
o (m_ O
d) o (k O
o (rk O
o (rg O
o (ck O
f) o (n 'o:
pr) o (c %U
pr) o (cent %O
och 'Ok
s) o (ci %U
o (ck O
g) o (d u:
k) o (d o:
bl) o (d 'u:
pr) o (d %O
o (dd O
o (ff O
l) o (g 'o:
l) o (v 'o:
kr) o (g u:
l) o (gg 'O
b) o (x 'O
s) o (r 'O
k) o (pi 'O
f) o (rm 'O
_) o (j O
pr) oj Osx'
o (ns U
b) o (k u:
d) o (k O
k) o (k 'u:
l) o (k %U
g) o (r U
nn) o (ns O
kr) o (k u:
p) o (lis %O
o (ll O
k) o (lu %O
o (m_ O
o (mm O
d) o (n O
f) o (n 'o:
g) o (n O
l) o (n O
kr) o (n u:
ss) o (n O
C) o (rs O
k) o (rt O
b) o (rt O
o (ni 'o:
o (ns U
k) o (ns O
nn) o (ns O
operat OpERat
k) o (pi 'O
o (pp O
p) o (pu O
g) o (r U
s) o (r 'O
lk) o (r o:
o (rC u:
n) o (r_ O
t) o (r_ O
s) o (r_ O
t) o (r_ O
rs) o (rd u:
o (rde o:
b) o (st u:
b) o (k u:
kr) o (k u:
kr) o (g u:
kr) o (n u:
f) o (tb u:
pr) o (v u:
osparat u:spA:Rat
och 'Ok
k) o (ns O
pr) o (cent %O
p) o (lis %O
p) o (pu O
g) o (n O
sp) o (rt O
o (rg O
o (rk O
f) o (rm 'O
st) o (rm O
inf) o (rmati %O
o (rr O
C) o (rs O
b) o (rt O
k) o (rt O
pp) o (rt O
sp) o (rt O
upp) o (rt o:
l) o (n O
d) o (n O
pr) o (b %O
pr) o (d %O
k) o (lu %O
inf) o (rmati %O
k) o (d o:
lk) o (r o:
g) o (d u:
_) o (j O
o (ni 'o:
m) o (t 'u:
k) o (k 'u:
bl) o (d 'u:
k) o (rv O
osparat u:spA:Rat
o (ss O
b) o (st u:
m) o (t 'u:
f) o (tb u:
o (tt O
l) o (v 'o:
pr) o (v u:
n) o (vell %O
st) o (rm O
operat OpERat
b) o (x 'O
//endsort

.group p
p p

+ 18
- 4
dictsource/ta_list View File

@@ -246,6 +246,15 @@ tamil தமிழ் $text
பலத்தின் $alt
பைக்ல $alt
பாவ்லா $alt
பீச்சில் $alt
பீல் fi:l
பலத்தால் $alt
புக் $alt
பீர் $alt
போயிங் $alt
பலத்தாலான $alt
பெஞ்ச் $alt
பெஞ்சு $alt
(பி . ஏ) bije:


@@ -283,15 +292,15 @@ tamil தமிழ் $text
தீரமுள்ள $alt
தீரமற்ற $alt
தலாய் $alt
தேசிங்கு $alt
தேச $alt
தேசப் $alt
தானம் $alt
தீரமும் $alt
தீரத்தோடு $alt
தவத்தில் $alt
தவத்தின் $alt
தவத்தினால் $alt
திம் $alt
தேவதா $alt
தெனம் $alt


// initial ட
@@ -315,7 +324,6 @@ tamil தமிழ் $text
கில்லி $alt
காந்தி $alt
கிரி $alt
கோமதி $alt
கயா $alt
காயத்ரி $alt
கட $alt
@@ -340,6 +348,12 @@ tamil தமிழ் $text
காந்தம் $alt
கான $alt
கோத்திர $alt
கும்முன்னு $alt
கூகுல் $alt
கேட் $alt
கேட்டில் $alt
கின் $alt



// p as [f]

+ 182
- 28
dictsource/ta_rules View File

@@ -27,7 +27,7 @@
.L01 ஷ் ஸ் ட்

// ப is p when preceded by these
.L02 ட் ற் ல் ஷ் ஸ்
.L02 ட் ற் ஷ் ஸ்


// consonants
@@ -57,6 +57,7 @@

//sort
_) க (ங்கா gV
_) க (ங்காரு kV
_) க (ங்கை gV
_) க (டகட gV
_) க (டப்பாரை gV
@@ -76,6 +77,7 @@
_) க (ந்தர்வ gV
_) க (னத் gV
_) க (னம gV
_) க (ப்பெ gV
_) க (ப்பென்ர gV
_) க (மகம gV
_) க (ம்பீர gV
@@ -102,8 +104,12 @@
க (ாரன k
க (ாரர k
_) க (ிடுகிடு g
_) க (ின்னென்ற g
_) க (ிரிஜா g
_) க (ிரிதர g
_) க (ிருகஸ்தர g
_) க (ிருஹஸ்தர g
_) கி (ரேக்க g
_) க (ீதல k
_) க (ீத்த k
_) க (ுகன g
@@ -112,8 +118,10 @@
_) க (ுடியாத்த g
_) க (ுணங் g
_) க (ுணத் g
_) க (ுணநல g
_) க (ுணப்பட g
_) க (ுணம g
_) க (ுணவான g
_) க (ுணாதிசய g
_) க (ுண்டடி g
_) க (ுண்டன g
@@ -123,6 +131,7 @@
_) குண்டாந்த (டி gun.d.a:ntV
_) க (ுண்டாய g
_) க (ுண்டு g
_) க (ுண்டை g
_) க (ுதிக் g
_) க (ுதிச் g
_) க (ுதித் g
@@ -136,9 +145,11 @@
_) க (ும்பல g
_) க (ும்மிடிப்பூண் g
_) க (ும்மிருட்ட g
_) க (ும்மெ g
_) க (ுருக்கள g
_) க (ுருதேவ g
_) க (ுருநா g
_) க (ுருபூஜை g
_) க (ுருமார g
_) க (ுருரா g
_) க (ுருவா g
@@ -152,7 +163,12 @@
_) க (ூர்க்கா g
_) க (ெட்டி g
_) க (ெட்டிரு k
_) கெள gaU
_) கெள (ம்ப kel.V
_) க (ேட்டிலிருந்த g
_) க (ேட்டுக்கு g
_) க (ேலி g
_) கோக (ிலா go:k
_) க (ோகுல g
_) க (ோதாவரி g
_) க (ோதுமை g
@@ -170,6 +186,7 @@
_) க (ோபிநா g
_) க (ோபிய g
_) க (ோபுர g
_) க (ோமதி g
_) க (ோர_ g
_) க (ோர_மாட்ட k
_) க (ோர_முடிய k
@@ -187,6 +204,7 @@
_) க (ௌ g
_) கௌட (ில்ய kaUt.
_) க (ௌட்டில்ய k
_) க் (ரூப g
//endsort

//sort
@@ -199,6 +217,8 @@
_கல்) க (த்தா kV
கொல்) க (த்தா kV
மோ) க (ன HV
_வீண்) க (னவ kV
_வெல்) க (ம kV
தின) க (ர kV
மது) க (ர kV
திவா) க (ர kV
@@ -216,12 +236,15 @@
வீண்) க (ஷ்ட kV
ம) க (ா H
_தாலு) க (ா k
_நேர்) க (ாணல k
_வலை) க (ாப் k
தொல்) க (ாப்பி k
மூல) க (ாரண k
_சம) க (ால k
அந்திம) க (ால k
கோயில்) க (ாளை k
_கல்) க (ி k
வால்மீ) க (ி k
_ம) க (ிந்த H
மோ) க (ினி H
_ம) க (ிமை H
@@ -234,9 +257,12 @@
_) கி (ராதக k
_) கி (ராம g
_) கி (ரீட k
_) கி (ரீன்லாந்த g
ங்) க (ிரு g
கிரு (ஷ் kri
_) கி (ரைண்டர g
_) கி (ரௌண்ட g
இங்) கி (லீஷ் g
கி (லேச k
_) கி (ளாஸ g
_வட) க (ிழ k
@@ -252,6 +278,7 @@
க (ுல k
_அங்) க (ுல g
_) குல்க (ந்த gulkV
_ஓ) க (ே k
நீல) க (ேசி k
புலி) க (ேசி k
குண்டல) க (ேசி k
@@ -265,6 +292,7 @@
க (ொண்ட k
க (ொள் k
வீண்) க (ோப k
_ஷா) க் (_ k
துர்) க்க ggV#
மார்) க்க ggV#
மூர்) க்க ggV#
@@ -278,11 +306,15 @@
வைரா) க்க (ிய gg
_வி) க்க (ிரக gg
கு) க்கி (ராம gg
அணு) க்க (ுண்ட gg
ஜன) க்க (ும்பல gg
_எல) க்டிரானிக் (ஸ kt.ira:nik
அ) க (்டோபர k
வி) க்ட (ோரியா kt. // victoria
_எலெ) க்ட்ரிக (ல kt.rikV
வி) க (்ரம k
ஆ) க (்ரோஷ k
கோபா) க்க (ினி gg
//endsort


@@ -315,16 +347,25 @@
//sort
_) ச (க்கரவர்த்தி tSV
சங்க (ர s.VNkV
_) ச (ட்னி tSV
ச (ண்பக s.V
ச (ண்மு s.V
_) ச (துர் tSV
_) ச (த்ரு tSV
ச (ந்திர tSV
_) ச (ப்பாத்தி tSV
_) சரசு (வதி sVrVs
அருணா) ச (ல tSV
ச (ாந்தி s.
_தே) ச (ாந்திர s
_) ச (ான்ஸ tS
_) ச (ாமுண்ட tS
_) ச (ாய்ஸ tS
சமா) ச (ார tS
_) ச (ார்ஜை tS
_) ச (ார்ஜ்_ tS
_) ச (ாளுக்கிய tS
_) சிக (ாகோ tSik
_) ச (ிட்டாக tS
_) ச (ிட்டாட்ட tS
_) ச (ிட்டி tS
@@ -333,7 +374,10 @@
_) ச (ிதம்பர tS
_) ச (ித்தப்ப tS
_) ச (ித்தப்பிரமை s
_) ச (ித்திர tS
வி) ச (ித்திர tS
_) ச (ித்திரவதை tS
_) ச (ித்ரவதை tS
_) ச (ித்ரா tS
சு) சித (்ரா tSit
_) சி (நே s
@@ -341,11 +385,15 @@
_) ச (ின் tS
சி (ரம s
_) சிரு (ஷ்டி sri
_) ச (ீன tS
_) ச (ீன_ tS
_) ச (ீனத்து tS
_) ச (ீனப் tS
_) ச (ீனா tS
_) ச (ீனாவ tS
_) ச (ீனிவா s
சீ (னிவாச sri:
_) ச (ீன்_ s
_ஈ) சு s
_) ச (ுடிதார tS
_) சு (லோக s
கே) சு (வ s
மே) சு (வ s
@@ -353,6 +401,7 @@
_சனீ) சு (வர s
இராவணே) சு (வர s
ராவணே) சு (வர s
_) சுவர்க்க svVrggV#
_) சு (வாச s
சு (வாதீன s
சு (வாமி s
@@ -361,9 +410,14 @@
_) ச (ெட்டியார tS
ச (ெண்பக s.
_) ச (ென்னை tS
_) ச (ெல்லக்குட்டி tS
_) ச (ெல்லத்துக்கு tS
_) ச (ெல்லத்தை tS
_) ச (ெல்லம tS
_) ச (ெஸ் tS
_) ச (ேரி tS
_) ச (ைனாவ tS
_) ச (ௌதரி tS
//endsort


@@ -386,28 +440,42 @@
ட்ட (B t.t.
ஷ்) ட t.V
ஷ்) ட (B t.
_) டாக்ட (ர d.a:kt.V
_) ட (ோக்கியோ t.
//sort
ிங்) ட (ன் t.V // -ington
_) ட (ாக்க t. // talkies
_) டிராக்ட (ர t.ira:gt.V
_) ட (ைம்_ t.
டெலிப (ோன t.elif
_) ட (ம்ப்ளர t.V
_) ட (யரில t.V
_) ட (யர் t.V
_) ட (வர t.V
_) ட (வல t.V
_) ட (வுன t.V
_) ட (ாக்க t. // talkies
_) டாக்ட (ர d.a:kt.V
_) டாக (்ஸி t.a:k
_) ட (ிஃபன t.
_) ட (ிக்க t.
_) டி (யூசன t.
_) டி (யூஷன t.
_) டிராக்ட (ர t.ira:gt.V
_) ட (ிராம t.
_) ட (வுன t.V
_) டென்டுல்க (ர t.ent.UlkV
_) டி (ராவல t.
_) டி (ராவெல t.
_) டிரேயின (ை t.re:jn
_) ட (ியூஷன t.
_) ட (ிவிய t.
_) ட (வல t.V
_) ட (வர t.V
_) டென்டுல்க (ர t.ent.UlkV
_) டெம்ப (ர t.empV
டெலிப (ோன t.elif
_) ட (ெலிவிஷன t.
_) ட (ேப t.
_) டாக (்ஸி t.a:k
_) ட (ேஸ்ட t.
_) ட (ைம்_ t.
_) ட (ோக்கியோ t.
_ல) ட்ட d.d.V#
_) ட (யர் t.V
_) ட (யரில t.V
_) ட் (ராவல t.
_) ட் (ராவெல t.
_பெ) ட் (ரோ t.
_ஹி) ட் (லர t.
//endsort


.group ண
@@ -439,6 +507,7 @@
_) த (க்க்ஷிண dV
_) த (க்ஷிணா dV
_) த (சகண்ட dV
_) த (சரத dV
_) த (சரதர dV
_) த (சரா dV
_) த (சை dV
@@ -451,6 +520,7 @@
_) த (டிJ_மாட dV
_) த (டிக்க dV
_) த (டித்த dV
_) த (டிமாட dV
_) த (டியன dV
_) த (டியர dV
_) த (ட்சன dV
@@ -466,6 +536,8 @@
_) த (ண்டிப்ப dV
_) த (ண்டிப்பா dV
_) த (ண்டியுங்கள dV
_) த (ண்டோரா dV
_) தத்த (ியா dVdd
_) த (னகோடி dV
_) த (னசேகரன dV
_) த (னன்ஜெயன dV
@@ -476,6 +548,7 @@
_) த (னுஷ dV
_) த (ன்மந்திரி dV
_) த (ன்ராஜ dV
_) தபதப dVbVdVbV#
_) த (மயந்தி dV
_) த (ம்பதி dV
_) த (ம்பிடி dV
@@ -490,6 +563,7 @@
_) த (ருமி dV
_) த (ர்க dV
_) த (ர்பார dV
_) த (ர்பூச dV
_) த (ர்பை dV
_) த (ர்ம dV
_) த (லித் dV
@@ -507,6 +581,7 @@
_) த (ானத் d
_) த (ானிய d
_) த (ானுவ d
_) த (ாமோதர d
_) த (ாம்_தூம d
_) த (ாயாதி d
_) த (ாரணி d
@@ -516,6 +591,7 @@
_) த (ாவணி d
_) த (ாவா d
_) த (ிகில d
_) த (ிகுதிகு d
_) த (ிக்கில d
_) த (ிக்கு d
_) த (ிக்கு_முக்க t
@@ -526,6 +602,7 @@
_) திக்பி (ரமை digb
_) த (ிக்விஜய d
_) த (ிசை d
_) திடசங்கல்ப did.VsVNgVlpV#
_) த (ிடப d
_) த (ிடம d
_) த (ிடீ d
@@ -541,16 +618,20 @@
_) த (ினம d
_) த (ினுச d
_) த (ினேஷ d
_) த (ிம்ம d
_) தி (யான dj
_) த (ிரவ d
_) த (ிரவிய d
_) தி (ராவிட d
_) த (ிரௌபதி d
_) த (ில்லி d
_) த (ில்லு_ d
_) த (ில்லு_முல்லு t
_) த (ிவச d
_) த (ிவாகர d
_) த (ிவான d
_) த (ிவ்ய d
_) த (ீட்சித d
_) த (ீட்சை d
_) த (ீப d
_) த (ீப்ப t
@@ -569,6 +650,7 @@
_) த (ுச்சாதனன d
_) த (ுட்ட d
_) த (ுபாய d
_) த (ுரதிருஷ்ட d
_) த (ுரதிர்ஷ்ட d
_) த (ுராசை d
_) த (ுரியோதனன d
@@ -579,22 +661,26 @@
_) த (ுரோண d
_) த (ுர் d
_) து (வந்த_ d
_) து (வார d
_) துவாப (ர dva:pV
_) துவ (ார dv
_) த (ுஷ் d
_) த (ூசி d
_) த (ூப d
_) த (ூம d
_) த (ூர d
_) த (ூரிகை t
_) த (ூர்_ t
_) த (ூர்ந் t
_) த (ூர்வ t
_) த (ூஷணை d
_) த (ூஷித்த d
_) த (ெய்வ d
_) த (ேக d
_) த (ேக்க t
_) த (ேசத்தார d
_) த (ேசத்தில d
_) த (ேசாந்திர d
_) த (ேச d
_) த (ேவகான d
_) த (ேவகி d
_) த (ேவக் d
_) த (ேவதை d
_) த (ேவன d
_) த (ேவராட்டி d
@@ -611,6 +697,7 @@
_) த (ேவேந் d
_) த (ைரிய d
_) த (ொனி d
_) த (ொபதொப d
_) த (ொபுக் d
_) த (ொம் d
_) த (ோசை d
@@ -637,6 +724,7 @@
_வினி) த (ா t
_புஷ்பல) த (ா t
பிரேமல) த (ா t
_மும்) த (ாஜ t
_சும) த (ி t
_சாந்) த (ி t
_சுகந்) த (ி t
@@ -662,6 +750,8 @@ _பார்வ) த (ி t
யு) த்த ddV#
பு) த்த (ன ddV
பு) த்த (ர ddV
_விரு) த்தாச (ல dda:tSV
அ) த்த (ாசி dd
பு) த்த (ி dd
அயோ) த்த (ி dd
சில) த்த (ினங் dd
@@ -674,8 +764,12 @@ _பார்வ) த (ி t
உ) த்த (ியோக dd
பு) த்த (ிர tt
சமு) த்த (ிர dd
_உப) த்த (ிர dd
_சுப) த்த (ிர dd
_ரு) த்த (ிர dd
_ரௌ) த்த (ிர dd
_தேச) த்து (ரோகி td
_வி) த்து (வான d
_முக) த்து (வார dd
அ) த்த (ெய்வ dd
குல) த்த (ெய்வ dd
@@ -715,8 +809,7 @@ _பார்வ) த (ி t
ப் (ப p
ப்) ப pV
ப்) ப (B p
L02) ப pV
L02) ப (B p
L02) ப pV#
குஷ்) ப (ு b

ம) ப pV
@@ -736,30 +829,36 @@ _பார்வ) த (ி t
//sort

_) ப (கவதி bV
_) ப (கவன bV
_) ப (கவான bV
_) ப (காசுர bV
_) ப (கிரங்க bV
_) ப (கிஷ்க bV
_) ப (கீர bV
_) ப (க்கெட் bV
_) ப (க்கென்ற bV
_) பக் (த bVk
_) ப (ங்கம bV
_) ப (ங்களா bV
_) ப (ங்கார bV
_) ப (சவகல்யாண bV
_) ப (ஜ bV
_) ப (ட்சண bV
_) ப (ட்சிக்க bV
_) ப (ட்சிப்ப bV
_) ப (ட்ஜெட் bV
_) ப (ட்டன bV
_) ப (ட்டன_ pV
_) ப (தில bV
_) பத்த (ிரகாளி bVdd
_) ப (த்திரப் bV
_) ப (த்திரமா bV
_) ப (ந்தங்கள bV
_) ப (ந்தத் bV
_) ப (ந்தப் bV
_) ப (ந்தம bV
_) ப (ந்துக்கள bV
_) பந்த (ுலு bVnt
_) ப (ந்துவ bV
_) ப (ந்தோபஸ்த bV
_) ப (னியன bV
@@ -798,6 +897,7 @@ _பார்வ) த (ி t
_) ப (லிபீட bV
_) ப (லிய bV
_) ப (லூன bV
_) பல்ட (ி bVlt.
_) ப (வாணி bV
_) ப (வானி bV
_) பவுண்ட (ன faUn.t.V
@@ -834,8 +934,7 @@ _பார்வ) த (ி t
_) ப (ாரம b
_) ப (ாரம்பரிய p
_) ப (ார்கவி b
_) ப (ார்மசி f
_) ப (ார்மஸி f
_) ப (ார்ம f
_) ப (ாலக b
_) ப (ாலக்காட p
_) ப (ாலச b
@@ -869,6 +968,7 @@ _முகத்தின்_) ப (ாவ b
_) ப (ாவனை b
_) ப (ாவிக்கிற b
_) ப (ாவித்த b
_) ப (ாவிப்பத b
_) ப (ாவிப்பதா b
_) ப (ாவிப்பதி b
_) ப (ாவிப்பது b
@@ -879,16 +979,21 @@ _முகத்தின்_) ப (ாவ b
_) ப (ிக்கு b
_) ப (ிக்ஷு b
_) ப (ிக்ஷூ b
_) ப (ிசினஸ b
_) ப (ின்லாந்த f
_) ப (ிம்ப b
_) ப (ிரகதீ b
_) ப (ிரகஸ்பதி b
_) ப (ிரம்ம b
_) ப (ிரம்மை b
_) பி (ரான்ஸ f
_) ப (ிரித்தானி b
_) ப (ிரியாணி b
_) ப (ில்டிங் b
_) ப (ிஸினஸ b
_) ப (ிஸ்கோத் b
_) ப (ீகார b
_) ப (ீச்சு b
_) ப (ீஜிங b
_) ப (ீடி b
_) ப (ீடிகை p
@@ -896,7 +1001,10 @@ _முகத்தின்_) ப (ாவ b
_) ப (ீம b
_) ப (ீரங்கி b
_) ப (ீராமணர b
_) ப (ீஹார b
_) ப (ுக்கென்ற b
_) ப (ுக்தி b
_) ப (ுக்ல b
_) ப (ுஜ b
_) ப (ுட்டி b
_) ப (ுதன b
@@ -916,15 +1024,22 @@ _முகத்தின்_) ப (ாவ b
_) ப (ூதகணங்க b
_) ப (ூதங் b
_) ப (ூதத் b
_) ப (ூதபாண்டிய b
_) ப (ூதம b
_) ப (ூதவுடம்ப b
_) ப (ூதாகார b
_) ப (ூதேவி b
_) பூப (தி bu:pV
_) ப (ூபாள b
_) ப (ூமாதேவி b
_) ப (ூமி b
_) ப (ூலோக b
_) ப (ெங்களூர b
_) ப (ெஞ்சா b
_) ப (ெஞ்சி b
_) ப (ெட்ரூம b
_) ப (ெர்னார்ட b
_) ப (ெர்முடா b
_) ப (ெர்லிங b
_) ப (ெல் b
_) ப (ெஸ்ட் b
@@ -947,10 +1062,13 @@ _முகத்தின்_) ப (ாவ b
_) ப (ோபால b
_) ப (ௌதிக b
_) ப (ௌத்த b
_) ப் (ராவ b
//endsort

//sort
இயல்) ப (+ bV#
சங்கல்) ப pV#
_விகல்) ப pV#
அநுதா) ப (+ bV#
பரிதா) ப (+ bV#
அனுதா) ப (+ bV#
நன்) ப (கல pV
@@ -967,6 +1085,7 @@ _முகத்தின்_) ப (ாவ b
@) ப (ட்ச+ pV
ப (ண pV
_சிவ) ப (த pV
_கல்) ப (தரு pV
கஜ) பதி pVti
கண) பதி pVti
பசு) பத (ி pVt
@@ -983,12 +1102,15 @@ _முகத்தின்_) ப (ாவ b
அம்பிகா) பதி pVti
வளையா) பதி pVti
வேங்கட) பதி pVti
_புகு) ப (திகை pV
மின்) ப (திப்ப+ pV
காண்) பத (ில bVd
_முன்) ப (திவ pV
பதை) ப (தை pV
_க) ப (த் bV
வீர) ப (த்தினி pV
கல்) ப (னா pV
_கம்) ப (னி pV
நிரு) ப (மா pV
அனு) ப (மா pV
_க) ப (ம்_ bV
@@ -1002,21 +1124,31 @@ _முகத்தின்_) ப (ாவ b
வட) ப (ழ pV
வீண்) ப (ழி pV
_தீ) ப (ா p
முதற்) ப (ாக b
உ) ப (ாசனை p
சமன்) ப (ாட p
முரன்) ப (ாட p
தண்ட) ப (ாணி p
ப (ாண்டி p
ப (ாதை p
ச) பாபதி ba:pVti
_டீ) ப (ாய் p
எதிர்) ப (ார p
_சிவ) ப (ாலன b
_கா) ப (ாலி b
தொடர்) ப (ால் b
முக) ப (ாவ b
அட) ப (ாவ p
வீண்) ப (ாவ p
அடி) ப (ாவி p
_நவ) ப (ாஷ p
வாதா) ப (ி p
கோ) ப (ி p
_பசி) ப (ிக் f
_முன்) ப (ின்_ p
_) ப (ிப்ரவரி f
ஆ) ப (ிரிக்க f
போஜனப்) பி (ரியர p
உடன்) ப (ிற p
ப (ிறகு+ p
தேய்) ப (ிறை p
@@ -1024,6 +1156,10 @@ _முகத்தின்_) ப (ாவ b
சிறு) ப (ிள்ளை p
ஆண்) ப (ிள்ளை p
பெண்) ப (ிள்ளை p
_திம்) ப (ு p
_அன்) ப (ுட b
_மார்) ப (ுட b
வில்லி) ப (ுத்தூர p
ம்) ப (ுரா b
இன்) ப (ுற b
_துன்) ப (ுற b
@@ -1036,7 +1172,12 @@ _முகத்தின்_) ப (ாவ b
இளம்) ப (ெண் p
ப (ெருமான p
ப (ெற p // ?? end-of-word + suffix ??
_கை) ப (ேசி p
_செல்) ப (ேசி p
அலை) ப (ேசி p
தொலை) ப (ேசி p
வீண்) ப (ேச்ச p
_வெல்) ப (ேர f
ப (ேரில்_ p
ப (ேர்_ p
வன்) ப (ொருள் p
@@ -1048,6 +1189,7 @@ _முகத்தின்_) ப (ாவ b
ப (ோகிற p
ப (ோகும்_ p
_வீண்) ப (ோக்க p
_மார்) ப (ோட b
_சத்தம்) ப (ோட p
ப (ோதிலும்+ p
ப (ோது+ p
@@ -1078,6 +1220,7 @@ _முகத்தின்_) ப (ாவ b
மன) ப்பி (ரமை bb
துர்) ப்ப (ோதனை bb
கம்) ப்யூட (ர pjU:t.V
அருள்) ப (ாலி b
//endsort

// If ப+ appearing in the middle of a word is followed by ட+
@@ -1112,6 +1255,7 @@ _முகத்தின்_) ப (ாவ b
_) பி (ரச்சனை p
_) பிரச (்னை prVtS
_) பி (ரஜ p
_) பிர (ண்ட்ஸ fre
பி (ரத p
_) பி (ரதம p
_) பி (ரதர்_ b
@@ -1146,7 +1290,9 @@ _முகத்தின்_) ப (ாவ b
_) பி (ரஸ்தா p
_) பி (ரஹலாத p
_) பி (ராகார p
_) பி (ராகிருத p
_) பி (ராக்கள b
_) பி (ராட்வே b
_) பி (ராண_ p
_) பி (ராணன p
_) பி (ராணி p
@@ -1186,6 +1332,8 @@ _முகத்தின்_) ப (ாவ b
_) பி (ரியாவை p
_) பிரு (கன்நளை bri
_) பிரு (ந்தா bri
_) பி (ரெஞ்சு f
_) பி (ரெண்ட்ஸ f
_) பி (ரே p
_) பி (ரோகிதர p
_) பி (ளாட்பார p
@@ -1198,7 +1346,7 @@ _முகத்தின்_) ப (ாவ b

// musical notes
சா) ப (ா p
ரி) ப (K pV
// ரி) ப (K pV
ரீ) ப (K pV
ரி) ப (ா p
ரீ) ப (ா p
@@ -1230,7 +1378,7 @@ _முகத்தின்_) ப (ாவ b
_க) ப (ால b
_கா) ப (ந்து bV
சு) ப்ப bbV#
மகா) ப (ாரத b

_) ப (ோனை f
_) ப (ோட்டோ f
@@ -1324,13 +1472,17 @@ _முகத்தின்_) ப (ாவ b
_) இ (யேச
_) இ (ரகசிய // silent
_) இ (ரசாயன
_) இ (ரசிக்க
_) இ (ரத்த
_) இ (ராக
_) இ (ராஜ
_) இ (ராணி
_) இ (ராணுவ
_) இ (ராத்த
_) இ (ராம
_) இ (ராயபுர
_) இ (ராவண
_) இ (ராஷ்டிர
_) இ (லகுவாக
_) இ (லட்சண
_) இ (லட்சிய // silent
@@ -1388,6 +1540,8 @@ _முகத்தின்_) ப (ாவ b
ெ e
_ம) ெள (ன aU // bad scanning
_ம) ெள (ஸ aU // bad scanning
_ச) ெள aU
_ப) ெள aU

ே e:


+ 2
- 2
dictsource/zh_list View File

@@ -314,7 +314,7 @@ $textmode
罪 zui4
衰 shuai1
暄 xuan1
個 ge4
個 ge5
頻 pin2
嗎 ma5
也 ye3
@@ -440,7 +440,7 @@ $textmode
注 zhu4
问 wen4
质 zhi4
个 ge4
个 ge5
猬 wei5
便 bian4
烁 shuo4

+ 1
- 1
docs/speak_lib.h View File

@@ -386,7 +386,7 @@ espeak_ERROR espeak_SetParameter(espeak_PARAMETER parameter, int value, int rela
relative=1 Sets a relative value of the parameter.

parameter:
espeakRATE: speaking speed in word per minute.
espeakRATE: speaking speed in word per minute. Values 80 to 450.

espeakVOLUME: volume in range 0-200 or more.
0=silence, 100=normal full volume, greater values may produce amplitude compression or distortion

+ 35
- 17
phsource/compile_report View File

@@ -12,7 +12,7 @@ consonants 9 115
en-wi 30 148
af 39 136
cy 29 132
de 36 137
de 37 138
eo 13 114
jbo 2 114
nci 3 123
@@ -23,7 +23,7 @@ consonants 9 115
ta 21 153
hu 24 121
lv 29 125
nl 24 125
nl 25 126
pl 22 120
sk 28 135
cs 6 135
@@ -53,16 +53,16 @@ consonants 9 115
id 15 125
sq 33 126
hy 23 117
da 24 120
da 27 120
rw 15 130
ml 13 151
ne 18 157
pa 14 151
prs 8 111
sl 7 135
sl 10 135
gd 6 107
bg 10 121
nso 8 107
nso 12 111
ht 11 140
az 10 127
ak 8 109
@@ -343,10 +343,11 @@ l/l_ [l/] base
[l/] fr
l/l_@ [l/3] base
[l/] fr
l/l@ [h–z] base
l/l@ [hæy] base
[l#] base
[l] fr
[l/2] fr
[K] nso
l/L1_aL [l/] base
[l/] de
l/L1_eL [l/] base
@@ -369,27 +370,30 @@ l/L2_oL [l/2] base
l/L2_uL [l/2] base
l/l_3 [l/] de
l/l_4 [ll] sq
l/la [h–z] base
l/la [hæy] base
[l#] base
[l] fr
[l/2] fr
[K] nso
l/l_a [l/3] base
[l/] fr
l/le [h–z] base
l/le [hæy] base
[l#] base
[l] fr
[l/2] fr
[K] nso
l/l_e [l/3] base
[l/] fr
l/L_eL_af [&] af
[&:] af
l/l_front [L] sq
l/l_front_ [l/4] sq
l/li [h–z] base
l/li [hæy] base
[l#] base
[l] fr
[l/2] fr
[l] zh
[K] nso
l/l_i [l/3] base
[l/] fr
[i] sq
@@ -397,17 +401,19 @@ ll/ll [L] bg
ll/_ll [L] bg
l/l_long [l] base
[l] fr
l/lo [h–z] base
l/lo [hæy] base
[l#] base
[l] fr
[l/2] fr
[K] nso
l/l_o [l/3] base
[l/] fr
l^/l_rfx [l.] base
l/lu [h–z] base
l/lu [hæy] base
[l#] base
[l] fr
[l/2] fr
[K] nso
l/l_u [l/3] base
[l/] fr
l/l_vi [l] vi
@@ -423,6 +429,7 @@ l/xl [l] base
[l] fr
[l] hu
[ll] sq
[K] nso
m/_m [m] base
m/m_ [m] base
m/m@ [m] base
@@ -526,7 +533,6 @@ r3/r_trill [R2] base
[R] pl
[r*] sr
[x] pt
[r] el
r3/r_trill2 [R] base
[r] cy
r3/r_trill2.wav [R] base
@@ -540,7 +546,6 @@ r3/r_trill.wav [R2] base
[R] pl
[r*] sr
[x] pt
[r] el
r3/r_uvl [r"] base
[r] de
r3/r_uvl.wav [r"] base
@@ -629,6 +634,7 @@ ufric/s [s] base
[z2] fr
[s] es
[z] sq
[s] da
ufric/s_ [s] base
[z] base
[s2] consonants
@@ -640,6 +646,7 @@ ufric/s_ [s] base
ufric/s! [s] base
[s] fr
[s] es
[s] da
ufric/s_continue [s2] consonants
[s2] lv
ufric/sh [S] base
@@ -668,6 +675,7 @@ ufric/sx_sv [sx] sv
ufric/th [T] base
ufric/th_ [T] base
ufric/tl# [tl#] is
ufric/tlh [K] nso
ufric/x [x] base
[kh] vi
ufric/x2 [x2] af
@@ -725,6 +733,7 @@ ustop/null [?] base
ustop/p [p] base
[p2] fr
[p] zhy
[p] da
ustop/p_ [p] base
[ph] consonants
[p] fr
@@ -742,10 +751,12 @@ ustop/pl [p] base
[p] lv
[p] sk
[p] sq
[p] da
ustop/pr [p] base
[p-] consonants
[ph] consonants
[p] base2
[p] da
ustop/p_unasp [p] base
[p-] consonants
[p] base2
@@ -754,6 +765,7 @@ ustop/p_unasp [p] base
[p] sk
[p] zh
[p] sq
[p] da
ustop/p_unasp_ [p-] consonants
[p] base2
[p] fr
@@ -766,12 +778,12 @@ ustop/t [t] base
[dh.] hi
[th.] hi
[t] zhy
[t] da
ustop/t_ [t] base
[t] en-us
[t] fr
[t] lv
[t] sk
[t] el
[th] zh
ustop/t_dnt [t] base
[t[] base
@@ -788,6 +800,7 @@ ustop/t_pzd [c] base
[t;] pl
ustop/tr [t] base
[t] en-us
[t] da
ustop/ts [ts] consonants
[dz] consonants
[ts] hu
@@ -809,7 +822,6 @@ ustop/t_short [t] fr
[t.] hi
[t] lv
[t] sk
[t] el
ustop/t_short_ [t] fr
ustop/tsh_pzd [tS;] zh
ustop/tsh_pzd_unasp [tS;] zh
@@ -829,7 +841,8 @@ ustop/ts_rfx_unasp [ts.] zh
ustop/ts_sr [tS;] sr
[dZ;] sr
ustop/ts_unasp [ts] zh
ustop/t_unasp2 [t] zh
ustop/t_unasp2 [t] el
[t] zh
vdiph/0i [OI] pt
[OI] grc
[OI] vi
@@ -1109,6 +1122,7 @@ vnasal/o_n2 [o~] af
[O~] fr
vnasal/oo_n2 [O~] en
[O~] hi
[O~] nl
[o] zh
vnasal/oo_n3 [O~] pl
vnasal/u_n [U~] hi
@@ -1269,6 +1283,7 @@ vowel/a [a] base
[a] it
[a] zh
[a] id
[a] sl
[a] bg
vowel/a# [a] base2
[a/] base2
@@ -1286,6 +1301,7 @@ vowel/a_2 [a] base2
[A] pt
[a] pt-pt
[a] ro
[a] el
[a] da
[a] rw
vowel/a#_2 [A] nl
@@ -1326,7 +1342,7 @@ vowel/a#_3 [a#] en
[a/] sq
[3] da
[a] ml
vowel/a_4 [a/] el
vowel/a_4 [a] el
[a] vi
vowel/a#_4 [a:] nl
[a] tr
@@ -1607,6 +1623,7 @@ vowel/ii_3 [I] cy
[I] no
[I] tr
[I] pa
[i] sl
vowel/ii#_3 [I2] en-us
vowel/ii_4 [I2] en
[I] en-us
@@ -1789,6 +1806,7 @@ vowel/u_2 [u1] fi
[u] ro
[u] is
[u] tr
[u] sl
[u] bg
vowel/u#_2 [u-] sv
vowel/u#_3 [U] ta

+ 53
- 0
phsource/ph_danish View File

@@ -154,3 +154,56 @@ phoneme R
endphoneme



// don't weaken consonants at end of word or before a stop

phoneme s
vls alv frc sibilant
voicingswitch z
lengthmod 3
Vowelin f1=0 f2=1700 -300 300 f3=-100 80
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20

IF nextPh(p) OR nextPh(t) OR nextPh(k) THEN
WAV(ufric/s!)
ENDIF
WAV(ufric/s)
endphoneme


phoneme p
vls blb stop
voicingswitch b
lengthmod 2
Vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11
Vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22

IF nextPh(isPause2) THEN
WAV(ustop/p_unasp)
ELIF nextPh(r) THEN
WAV(ustop/pr, 70)
ELIF nextPh(R) OR nextPh(R2) THEN
WAV(ustop/pr)
ELIF nextPh(@-) THEN
WAV(ustop/p_unasp)
ELIF nextPh(l) THEN
WAV(ustop/pl)
ENDIF
WAV(ustop/p)
endphoneme



phoneme t
vls alv stop
voicingswitch d
lengthmod 2
Vowelin f1=0 f2=1700 -300 300 f3=-100 80
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20

IF nextPh(r) OR nextPh(R) OR nextPh(R2) THEN
WAV(ustop/tr)
ENDIF
WAV(ustop/t, 90)
endphoneme


+ 6
- 0
phsource/ph_dutch View File

@@ -96,6 +96,12 @@ phoneme A~
import_phoneme fr/A~
endphoneme

phoneme O~
vowel starttype #o endtype #o
length 190
FMT(vnasal/oo_n2)
endphoneme


// Diphthongs
//===========

+ 5
- 3
phsource/ph_german View File

@@ -361,7 +361,9 @@ endphoneme



// TESTING
phoneme oU // for English words
import_phoneme en-us/oU
endphoneme



@@ -388,7 +390,7 @@ A~ O n
E E
e: e:
e@ E: r
eI e:
eI e j
i I
I I
I2 I
@@ -401,7 +403,7 @@ o: o:
O@ O : r
o@ O : r
OI OY
oU o:
oU oU
O~ O n
U U
u: u:

+ 17
- 13
phsource/ph_greek View File

@@ -4,12 +4,21 @@
//====================================================


phoneme a/
vowel starttype #@ endtype #@
phoneme a
vowel starttype #a endtype #a
length 180
FMT(vowel/a_4)

IF thisPh(isWordEnd) AND thisPh(isNotStressed) AND nextPh(a) THEN
ChangePhoneme(NULL)
ENDIF

IF thisPh(isDiminished) THEN
FMT(vowel/a_4)
ENDIF
FMT(vowel/a_2)
endphoneme


phoneme e
vowel starttype #e endtype #e
length 180
@@ -40,9 +49,9 @@ phoneme t // revert to alveolar /t/
Vowelin f1=1 f2=1600 -300 300 f3=-100 80 amp=11
Vowelout f1=0 f2=1600 -300 250 f3=-100 80 rms=20
IF nextPh(isPause2) THEN
WAV(ustop/t_)
WAV(ustop/t_unasp2)
ENDIF
WAV(ustop/t_short, 80)
WAV(ustop/t_unasp2)
endphoneme


@@ -70,12 +79,7 @@ phoneme k
endphoneme


phoneme r // this is [R] from Slovak/Czech
liquid
trill
lengthmod 6
ipa r
Vowelin f1=0 f2=1700 -300 300 f3=-300 80
Vowelout f1=2 f2=1700 -300 300 f3=-300 80 brk
FMT(r3/r_trill) addWav(r3/r_trill.wav, 50)
phoneme r
import_phoneme base/R2
endphoneme


+ 3
- 0
phsource/ph_pt_brazil View File

@@ -132,6 +132,9 @@ endphoneme
phoneme U
vowel starttype #u endtype #u
length 140
IF thisPh(isWordEnd) AND nextPh(isVowel) THEN
ChangePhoneme(w)
ENDIF
FMT(vowel/uu_bck)
endphoneme


+ 2
- 2
phsource/phonemes View File

@@ -1127,9 +1127,9 @@ phoneme z
ENDIF

IF nextPh(isPause2) THEN
FMT(voc/z_) addWav(ufric/s_, 85)
FMT(voc/z_) addWav(ufric/s_, 70)
ENDIF
FMT(voc/z) addWav(ufric/s_)
FMT(voc/z) addWav(ufric/s_, 85)
endphoneme



+ 3
- 3
src/compiledata.cpp View File

@@ -1605,7 +1605,7 @@ int LoadSpect(const char *path, int control)
displ = ftell(f_phdata);

seq_out.n_frames=0;
seq_out.flags=0;
seq_out.sqflags=0;
seq_out.length_total=0;

total = 0;
@@ -1752,7 +1752,7 @@ for(ix=0; ix<8; ix++)
if(klatt_flag)
{
seqk_out.n_frames = seq_out.n_frames;
seqk_out.flags = seq_out.flags;
seqk_out.sqflags = seq_out.sqflags;
seqk_out.length_total = seq_out.length_total;

ix = (char *)(&seqk_out.frame[seqk_out.n_frames]) - (char *)(&seqk_out);
@@ -3613,7 +3613,7 @@ static const TUNE default_tune = {
PITCHfall, 64, 8,
PITCHfall, 70, 18, 24, 12,
PITCHfall, 70, 18, 24, 12, 0,
{0,0,0,0,0,0,0,0,0,0}
{0,0,0,0,0,0,0,0}, 0
};

#define N_TUNE_NAMES 100

+ 3
- 2
src/dictionary.cpp View File

@@ -2621,6 +2621,9 @@ int TranslateRules(Translator *tr, char *p_start, char *phonemes, int ph_size, c
if(match1.points > 0)
{
if(word_flags & FLAG_UNPRON_TEST)
return(match1.end_type | 1);

if((match1.phonemes[0] == phonSWITCH) && ((word_flags & FLAG_DONT_SWITCH_TRANSLATOR)==0))
{
// an instruction to switch language, return immediately so we can re-translate
@@ -2628,8 +2631,6 @@ int TranslateRules(Translator *tr, char *p_start, char *phonemes, int ph_size, c
return(0);
}

if(word_flags & FLAG_UNPRON_TEST)
return(match1.end_type | 1);
match1.end_type &= ~SUFX_UNPRON;

if((match1.end_type != 0) && (end_phonemes != NULL))

+ 2
- 0
src/espeakedit.cpp View File

@@ -247,6 +247,8 @@ END_EVENT_TABLE()

MyFrame::~MyFrame(void)
{//====================
myframe->Show(false);
myframe->Iconize(false); // os=Windows, get the non-iconsized size
myframe->GetPosition(&frame_x, &frame_y);
myframe->GetSize(&frame_w, &frame_h);
}

+ 5
- 0
src/mbrowrap.cpp View File

@@ -15,6 +15,9 @@
* GNU General Public License for more details.
*/

#include "speech.h"
#ifdef INCLUDE_MBROLA

#include <stdarg.h>
#include <stdio.h>
#include <unistd.h>
@@ -603,3 +606,5 @@ void resetError_MBR(void)
{
mbr_errorbuf[0] = 0;
}

#endif // INCLUDE_MBROLA

+ 11
- 0
src/numbers.cpp View File

@@ -1343,6 +1343,7 @@ static int LookupNum3(Translator *tr, int value, char *ph_out, int suppress_null
int hundreds;
int tensunits;
int x;
int ix;
int exact;
int ordinal;
char string[12]; // for looking up entries in **_list
@@ -1500,6 +1501,16 @@ static int LookupNum3(Translator *tr, int value, char *ph_out, int suppress_null
ph_hundred_and[0] = 0; // don't put 'and' after 'hundred' if there's 'and' between tens and units
}
}
else
{
if(ph_ordinal2[0] != 0)
{
ix = strlen(buf1);
if((ix > 0) && (buf1[ix-1] == phonPAUSE_SHORT))
buf1[ix-1] = 0; // remove pause before addding ordinal suffix
strcpy(buf2, ph_ordinal2);
}
}

sprintf(ph_out,"%s%s%s",buf1,ph_hundred_and,buf2);


+ 4
- 4
src/readclause.cpp View File

@@ -889,13 +889,13 @@ static int AnnouncePunctuation(Translator *tr, int c1, int *c2_ptr, char *output
else
if(punct_count < 4)
{
sprintf(buf,"\001+15S");
sprintf(buf,"\001+10S");
while(punct_count-- > 0)
{
sprintf(buf2," %s",punctname);
strcat(buf, buf2);
}
sprintf(buf2," \001-15S");
sprintf(buf2," \001-10S");
strcat(buf, buf2);
}
else
@@ -1482,8 +1482,8 @@ static void SetProsodyParameter(int param_type, wchar_t *attr1, PARAM_STACK *sp)
{"x-slow",60},
{"slow",80},
{"medium",100},
{"fast",120},
{"x-fast",150},
{"fast",125},
{"x-fast",160},
{NULL, -1}};

static const MNEM_TAB mnem_pitch[] = {

+ 1
- 1
src/setlengths.cpp View File

@@ -154,7 +154,7 @@ void SetSpeed(int control)
if(wpm > 1000)
{
// TESTING
test = wpm / 1000;
// test = wpm / 1000;
wpm = wpm % 1000;
}
#endif

+ 10
- 2
src/speak_lib.h View File

@@ -28,7 +28,7 @@
#include <stdio.h>
#include <stddef.h>

#define ESPEAK_API_REVISION 5
#define ESPEAK_API_REVISION 6
/*
Revision 2
Added parameter "options" to eSpeakInitialize()
@@ -41,11 +41,19 @@ Revision 4

Revision 5
Added espeakCHARS_16BIT

Revision 6
Added macros: espeakRATE_MINIMUM, espeakRATE_MAXIMUM, espeakRATE_NORMAL
*/
/********************/
/* Initialization */
/********************/

// values for 'value' in espeak_SetParameter(espeakRATE, value, 0), nominally in words-per-minute
#define espeakRATE_MINIMUM 80
#define espeakRATE_MAXIMUM 450
#define espeakRATE_NORMAL 175


typedef enum {
espeakEVENT_LIST_TERMINATED = 0, // Retrieval mode: terminates the event list.
@@ -386,7 +394,7 @@ espeak_ERROR espeak_SetParameter(espeak_PARAMETER parameter, int value, int rela
relative=1 Sets a relative value of the parameter.

parameter:
espeakRATE: speaking speed in word per minute.
espeakRATE: speaking speed in word per minute. Values 80 to 450.

espeakVOLUME: volume in range 0-200 or more.
0=silence, 100=normal full volume, greater values may produce amplitude compression or distortion

+ 1
- 0
src/speech.h View File

@@ -22,6 +22,7 @@

// conditional compilation options
#define INCLUDE_KLATT
#define INCLUDE_MBROLA

#if defined(BYTE_ORDER) && BYTE_ORDER == BIG_ENDIAN
#define ARCH_BIG

+ 37
- 1
src/synth_mbrola.cpp View File

@@ -17,6 +17,8 @@
* <http://www.gnu.org/licenses/>. *
***************************************************************************/



#include "StdAfx.h"

#include <stdio.h>
@@ -33,6 +35,10 @@
#include "translate.h"
#include "voice.h"

int option_mbrola_phonemes;

#ifdef INCLUDE_MBROLA

extern int Read4Bytes(FILE *f);
extern void SetPitch2(voice_t *voice, int pitch1, int pitch2, int *pitch_base, int *pitch_range);
extern unsigned char *outbuf;
@@ -103,7 +109,6 @@ void unload_MBR()

static MBROLA_TAB *mbrola_tab = NULL;
static int mbrola_control = 0;
int option_mbrola_phonemes;


espeak_ERROR LoadMbrolaTable(const char *mbrola_voice, const char *phtrans, int srate)
@@ -133,6 +138,11 @@ espeak_ERROR LoadMbrolaTable(const char *mbrola_voice, const char *phtrans, int
// mbrola voice file not found, look in /usr/share
sprintf(path,"/usr/share/mbrola/%s",mbrola_voice);
}
if(GetFileLength(path) <= 0)
{
// mbrola voice file not found, look in /usr/share
sprintf(path,"/usr/share/mbrola/voices/%s",mbrola_voice);
}
#endif
#ifdef PLATFORM_WINDOWS
if(load_MBR() == FALSE) // load mbrola.dll
@@ -639,3 +649,29 @@ void MbrolaReset(void)

reset_MBR();
}

#else // INCLUDE_MBROLA

// mbrola interface is not compiled, provide dummy functions.

espeak_ERROR LoadMbrolaTable(const char *mbrola_voice, const char *phtrans, int srate)
{
return(EE_INTERNAL_ERROR);
}

int MbrolaGenerate(PHONEME_LIST *phoneme_list, int *n_ph, int resume)
{
return(0);
}

int MbrolaFill(int length, int resume)
{
return(0);
}

void MbrolaReset(void)
{
}


#endif // INCLUDE_MBROLA

+ 2
- 2
src/synthdata.cpp View File

@@ -35,8 +35,8 @@
#include "translate.h"
#include "wave.h"

const char *version_string = "1.44.02 13.Aug.10";
const int version_phdata = 0x014400;
const char *version_string = "1.44.04 14.Sep.10";
const int version_phdata = 0x014404;

int option_device_number = -1;
FILE *f_logespeak = NULL;

+ 1
- 1
src/synthesize.cpp View File

@@ -1469,7 +1469,7 @@ int Generate(PHONEME_LIST *phoneme_list, int *n_ph, int resume)
DoSpect2(ph, 0, &fmtp, p, 0);
if(p->synthflags & SFLAG_LENGTHEN)
{
DoPause(20,0);
DoPause(25,1);
DoSpect2(ph, 0, &fmtp, p, 0);
}
}

+ 8
- 30
src/synthesize.h View File

@@ -89,7 +89,7 @@ extern int embedded_default[N_EMBEDDED_VALUES];



typedef struct { // 44 bytes
typedef struct { // 64 bytes
short frflags;
short ffreq[7];
unsigned char length;
@@ -102,8 +102,10 @@ typedef struct { // 44 bytes
unsigned char klattp2[5]; // continuation of klattp[], Avp, Fric, FricBP, Turb
unsigned char klatt_ap[7]; // Klatt parallel amplitude
unsigned char klatt_bp[7]; // Klatt parallel bandwidth /2
unsigned char spare; // pad to multiple of 4 bytes
} frame_t; // with extra Klatt parameters for parallel resonators


typedef struct { // 44 bytes
short frflags;
short ffreq[7];
@@ -114,32 +116,7 @@ typedef struct { // 44 bytes
unsigned char fright[3]; // width/4 f0-2
unsigned char bw[4]; // Klatt bandwidth BNZ /2, f1,f2,f3
unsigned char klattp[5]; // AV, FNZ, Tilt, Aspr, Skew
} frame_t2; // TESTING


#ifdef deleted
typedef struct {
short frflags;
unsigned char length;
unsigned char rms;
short ffreq[9];
unsigned char fheight[9];
unsigned char fwidth[6]; // width/4
unsigned char fright[6]; // width/4
unsigned char fwidth6, fright6;
unsigned char klattp[N_KLATTP];
} frame_t;

typedef struct { // 43 bytes
short frflags;
unsigned char length;
unsigned char rms;
short ffreq[9];
unsigned char fheight[9];
unsigned char fwidth[6]; // width/4
unsigned char fright[6]; // width/4
} frame_t2; // the original, without Klatt additions, used for file "phondata"
#endif
} frame_t2; // without the extra Klatt parameters



@@ -193,14 +170,14 @@ typedef struct {
typedef struct {
short length_total; // not used
unsigned char n_frames;
unsigned char flags;
unsigned char sqflags;
frame_t2 frame[N_SEQ_FRAMES]; // max. frames in a spectrum sequence
} SPECT_SEQ; // sequence of espeak formant frames

typedef struct {
short length_total; // not used
unsigned char n_frames;
unsigned char flags;
unsigned char sqflags;
frame_t frame[N_SEQ_FRAMES]; // max. frames in a spectrum sequence
} SPECT_SEQK; // sequence of klatt formants frames

@@ -433,7 +410,8 @@ typedef struct {
unsigned char split_tail_end;
unsigned char split_tune;
unsigned char spare[10];
unsigned char spare[8];
int spare2; // the struct length should be a multiple of 4 bytes
} TUNE;

extern int n_tunes;

+ 3
- 2
src/tr_languages.cpp View File

@@ -883,7 +883,7 @@ SetLengthMods(tr,3); // all equal

SetupTranslator(tr,stress_lengths_mk,stress_amps_mk);
tr->charset_a0 = charsets[5]; // ISO-8859-5
tr->letter_groups[0] = vowels_cyrillic;
tr->letter_groups[0] = tr->letter_groups[7] = vowels_cyrillic;

tr->langopts.stress_rule = STRESSPOSN_3R; // antipenultimate
tr->langopts.numbers = NUM_DECIMAL_COMMA | NUM_AND_UNITS | NUM_OMIT_1_HUNDRED | NUM_OMIT_1_THOUSAND | NUM_DFRACTION_2;
@@ -1037,6 +1037,7 @@ SetLengthMods(tr,3); // all equal
tr->langopts.stress_flags = 0x20;
tr->langopts.param[LOPT_REGRESSIVE_VOICING] = 0x13;
tr->langopts.numbers = NUM_DECIMAL_COMMA | NUM_ALLOW_SPACE | NUM_SWAP_TENS | NUM_OMIT_1_HUNDRED | NUM_DFRACTION_2 | NUM_ORDINAL_DOT | NUM_ROMAN;
tr->langopts.numbers2 = 0x100; // plural forms of millions etc
tr->langopts.thousands_sep = ' '; // don't allow dot as thousands separator
SetLetterVowel(tr,'r');
break;
@@ -1192,7 +1193,7 @@ SetLengthMods(tr,3); // all equal
tr->langopts.stress_rule = STRESSPOSN_1L;
tr->langopts.word_gap = 0x21; // length of a final vowel is less dependent on the next consonant, don't merge consonant with next word
// tr->langopts.vowel_pause = 4;
tr->letter_groups[0] = vowels_vi;
tr->letter_groups[0] = tr->letter_groups[7] = vowels_vi;
tr->langopts.tone_language = 1; // Tone language, use CalcPitches_Tone() rather than CalcPitches()
tr->langopts.unstressed_wd1 = 2;
tr->langopts.numbers = NUM_DECIMAL_COMMA | NUM_HUNDRED_AND | NUM_DFRACTION_4;

+ 6
- 1
src/translate.cpp View File

@@ -1705,7 +1705,7 @@ static int TranslateWord2(Translator *tr, char *word, WORD_TAB *wtab, int pre_pa
return(flags);
}

if(flags & FLAG_COMBINE)
if((flags & FLAG_COMBINE) && !(wtab[1].flags & FLAG_PHONEMES))
{
char *p2;
int ok = 1;
@@ -1807,6 +1807,7 @@ static int TranslateWord2(Translator *tr, char *word, WORD_TAB *wtab, int pre_pa
// ?? Option to set the word-stress according to language1 rules eg. lang=fr)
if(ChangeEquivalentPhonemes(tr, switch_phonemes, (char *)p))
{
// Phonemes have been converted from the foreign language to the native language
switch_phonemes = -1;
}

@@ -1814,6 +1815,10 @@ static int TranslateWord2(Translator *tr, char *word, WORD_TAB *wtab, int pre_pa
{
strcpy(dictionary_name, old_dictionary_name);
SelectPhonemeTable(voice->phoneme_tab_ix);

// leave switch_phonemes set, but use the original phoneme table number.
// This will suppress LOPT_REGRESSIVE_VOICING
switch_phonemes = voice->phoneme_tab_ix; // original phoneme table
}
}


+ 6
- 3
src/voices.cpp View File

@@ -921,7 +921,10 @@ voice_t *LoadVoice(const char *vname, int control)

phtrans[0] = 0;
sscanf(p,"%s %s %d",name,phtrans,&srate);
LoadMbrolaTable(name,phtrans,srate);
if(LoadMbrolaTable(name,phtrans,srate) != EE_OK)
{
fprintf(stderr,"mbrola voice not found\n");
}
voice->samplerate = srate;
}
break;
@@ -934,7 +937,7 @@ voice_t *LoadVoice(const char *vname, int control)

case V_FAST:
Read8Numbers(p,speed.fast_settings);
SetSpeed(2);
SetSpeed(3);
break;

default:
@@ -958,7 +961,7 @@ voice_t *LoadVoice(const char *vname, int control)
new_translator = SelectTranslator(translator_name);
}

SetSpeed(1); // for speed_percent
SetSpeed(3); // for speed_percent

for(ix=0; ix<N_PEAKS; ix++)
{

+ 1
- 1
src/wavegen.cpp View File

@@ -133,7 +133,7 @@ int wcmdq_head=0;
int wcmdq_tail=0;

// pitch,speed,
int embedded_default[N_EMBEDDED_VALUES] = {0,50,175,100,50, 0,0, 0,175,0,0,0,0,0,0};
int embedded_default[N_EMBEDDED_VALUES] = {0, 50,175,100,50, 0, 0, 0,175,0,0,0,0,0,0};
static int embedded_max[N_EMBEDDED_VALUES] = {0,0x7fff,600,300,99,99,99, 0,600,0,0,0,0,4,0};

#define N_CALLBACK_IX N_WAV_BUF-2 // adjust this delay to match display with the currently spoken word

Loading…
Cancel
Save