espeakedit, add menu item Help->Documentation. lang-hu: fix ordinal numbers. git-svn-id: https://espeak.svn.sourceforge.net/svnroot/espeak/trunk@223 d46cf337-b52f-0410-862d-fd96e6ae7743master
når nVr $pause // while | når nVr $pause // while | ||||
som $u+ $pause // who (relative) | som $u+ $pause // who (relative) | ||||
der dA $u+ $pause | der dA $u+ $pause | ||||
hvor v'Vr // where | |||||
hvorfor vVf'Vr // why | |||||
// prepositions | // prepositions | ||||
på pO $u+ | på pO $u+ | ||||
af a? $u+ // of | af a? $u+ // of | ||||
at at $u+ // to | at at $u+ // to | ||||
hos $u+ // at | hos $u+ // at | ||||
som $u sVm // which / that | |||||
// pronouns | // pronouns | ||||
// possessive pronouns | // possessive pronouns | ||||
Min min $u | Min min $u | ||||
Mit mit $u | Mit mit $u | ||||
Mine min@ $u | |||||
din di?n | |||||
dit di?t $u | |||||
dine $u | |||||
Mine m'in@ | |||||
din d'in | |||||
dit d'it $u | |||||
dine d'ine | |||||
deres $u | deres $u | ||||
hans $u | hans $u | ||||
hendes $u | hendes $u | ||||
dens $u | dens $u | ||||
dets $u | dets $u | ||||
sin si?n | |||||
sit si?t $u | |||||
sin s'in | |||||
sit s'it $u | |||||
sine $u | sine $u | ||||
vor $u | vor $u | ||||
vort $u | vort $u | ||||
egen a:j@n | egen a:j@n | ||||
eget a:j@D | eget a:j@D | ||||
egne a:in@ | egne a:in@ | ||||
igen igen | |||||
enter entV | enter entV | ||||
også Vs@ | |||||
sig sAi // oneself | |||||
sagde sa@ // said | |||||
igen igen | |||||
Ny ny // new | Ny ny // new | ||||
også Vs@ // also | |||||
havde h'aD@ // had | |||||
sagde sa@ // said | |||||
sig sAi // oneself | |||||
| |||||
// This file is UTF8 encoded | // This file is UTF8 encoded | ||||
C) a (C a | C) a (C a | ||||
a (tion a | a (tion a | ||||
a (CK a | a (CK a | ||||
a (g a_ | |||||
a (nK a | a (nK a | ||||
a (r+ A: | a (r+ A: | ||||
r) a A: | r) a A: | ||||
ai (K aj | ai (K aj | ||||
au (K au | au (K au | ||||
ch) au (f o | |||||
nive) au o | |||||
aw (K aw | aw (K aw | ||||
ay (K aj | ay (K aj | ||||
aa O: | aa O: | ||||
b b | b b | ||||
bb b | bb b | ||||
_) be (@P2 be | _) be (@P2 be | ||||
_) be (d bE | _) be (d bE | ||||
b (il 'b | |||||
.group c | .group c | ||||
c (e s | c (e s | ||||
c (i s | c (i s | ||||
c (k | |||||
ch S | ch S | ||||
mi) ch (a k S | |||||
ch (r k | |||||
e) c (h k | e) c (h k | ||||
c (ha S | c (ha S | ||||
cc ks | cc ks | ||||
.group d | .group d | ||||
d d | d d | ||||
dd D | |||||
A) d (d D | |||||
A) d (_ D | A) d (_ D | ||||
A) d D | A) d D | ||||
A) d (A D | A) d (A D | ||||
A) dd D | |||||
A) d (i d | A) d (i d | ||||
A) d (ig D | A) d (ig D | ||||
A) d (isk D | A) d (isk D | ||||
A) d (es D | A) d (es D | ||||
A) d (et D | A) d (et D | ||||
&) de (_ D@ | |||||
i) d d | |||||
a) d (g D | |||||
a) d (k D | |||||
A) de (_ D@ | |||||
d) d D | |||||
i) d (e d | i) d (e d | ||||
l) d (+ | |||||
æ) d d | |||||
u) d (er d | |||||
bu) d (get | |||||
ej) d (e d | |||||
le) d (t | |||||
li) d (e D | |||||
li) d (s D | |||||
me) d (b D | |||||
me) d (l D | |||||
mi) d (l D | |||||
ne) d (C D | |||||
o) d (a d | |||||
o) d (i d | |||||
re) d (a d | |||||
re) d (i d | |||||
ri) d (e D | |||||
si) d (e D | |||||
ti) d (e D | |||||
ti) d (s D | |||||
vi) d (e D | |||||
al) d (o d | |||||
an) d (re d | |||||
el) d (i d | |||||
ol) d (a d | |||||
æl) d (e d | |||||
æl) d (i d | |||||
æl) d (re d | |||||
æn) d (e | |||||
æn) d (re d | |||||
æn) d (ri d | |||||
ær) d (es d | |||||
mo) d (C D | |||||
mo) d (ul 'd | |||||
mo) d (al 'd | |||||
bla) d (r D | |||||
kor) d d | |||||
smu) d (s | |||||
pu) d (s | |||||
ro) d (s | |||||
ry) d (ni D | |||||
æ) d D | |||||
An) d (rA d | An) d (rA d | ||||
An) d (re d | |||||
dar) d d | |||||
in) d (C | in) d (C | ||||
in) d (i d | |||||
in) d (u d | |||||
in) d (uC d | |||||
in) d (ue d | in) d (ue d | ||||
Co) d (C D | |||||
Co) d (A D | |||||
go) d (s | |||||
go) d (t_ | |||||
or) d (ne d | |||||
or) d (ning d | |||||
or) d (re d | |||||
or) d (ret | |||||
Aor) d (ret d | |||||
kre) d (s | |||||
tro) d (s | |||||
u) d (A D | |||||
u) d (C D | |||||
ø) d (C D | ø) d (C D | ||||
ø) d (t | ø) d (t | ||||
å) d (an d | å) d (an d | ||||
d (CA D | |||||
d (t ? | |||||
d (CA d | |||||
d (t = | |||||
be) d (r D | |||||
be) d (st : | be) d (st : | ||||
bol) d d | |||||
a) d (s | a) d (s | ||||
i) d (s | i) d (s | ||||
r) d (K | r) d (K | ||||
ar) d (K d | |||||
or) d (re d | |||||
in) d | in) d | ||||
ir) d (_ d | ir) d (_ d | ||||
or) d (en | or) d (en | ||||
aar) d (K | |||||
klo) d (s | |||||
nor) d | nor) d | ||||
pro) d (u d | |||||
pu) d (s | pu) d (s | ||||
ur) d (e d | ur) d (e d | ||||
ver) d (en d | ver) d (en d | ||||
sli) d(so D | |||||
sli) d(s | |||||
.group e | .group e | ||||
e (rK & | e (rK & | ||||
b) e (ds E | b) e (ds E | ||||
d) e (_ @ | d) e (_ @ | ||||
ed) e (- @D | |||||
ed) e (- @ | |||||
g) e (C e | g) e (C e | ||||
g) e (js aj | g) e (js aj | ||||
r) e V% | |||||
em) e (nt a | |||||
plem) e (nter e | |||||
elem) e (nt e | |||||
em) e (ntal e | |||||
glem) e (nt a | |||||
glem) e (ntal e | |||||
ni) e | |||||
ni) e (n e | |||||
niv) e (au | |||||
ani) e (l e | |||||
lini) e e | |||||
r) e (_ V% | |||||
_r) e e V% | |||||
@st) e (n e: | @st) e (n e: | ||||
budg) e (t 'E | |||||
carst) e (n @ | carst) e (n @ | ||||
karst) e (n @ | karst) e (n @ | ||||
Kr) e (ag e | Kr) e (ag e | ||||
@h) e (n 'e | |||||
p) e (ge a | |||||
p) e (gnin a | |||||
r) e (l e | r) e (l e | ||||
r) e (kt aj | |||||
r) e (CK e | r) e (CK e | ||||
r) e (L01 Aj | |||||
eg (et aj | |||||
m) eg aj | m) eg aj | ||||
n) e (K e | n) e (K e | ||||
ea i: | |||||
ee e: | ee e: | ||||
eg (e e@ | |||||
eg (e 'e: | |||||
en (gage an^ | |||||
en (tre an^ | |||||
p) en (sion an^ | |||||
r) en (ce an^ | |||||
r) eg (n A:j | r) eg (n A:j | ||||
r) e (d e | r) e (d e | ||||
r) e (v e | r) e (v e | ||||
tr) e e | |||||
tr) e (A e | |||||
ei A:j | ei A:j | ||||
ej (+ ai | ej (+ ai | ||||
v) ej (r 'e ai | |||||
ffic) e | ffic) e | ||||
ffic) e (r e | ffic) e (r e | ||||
&) e (_ @: | |||||
&r) e (_ e | |||||
&r) e (_ V | |||||
&) ede (_ @D@ | &) ede (_ @D@ | ||||
&r) ede (_ 3D@ | &r) ede (_ 3D@ | ||||
&r) en (_ 3n | &r) en (_ 3n | ||||
&r) en (ing 'en | |||||
for) en (ing 'en | |||||
&r) en (s_ 3n | &r) en (s_ 3n | ||||
&r) et (_ 3D | &r) et (_ 3D | ||||
&) er (_ 3 | |||||
&) en (_ @-n | |||||
&) er (_ V | |||||
&) en (_ '@-n | |||||
&) ene (_ @-n@ | &) ene (_ @-n@ | ||||
&) ende (_ @-nn@ | &) ende (_ @-nn@ | ||||
&) eren (_ 3r3n | &) eren (_ 3r3n | ||||
&) eren (s_ 3r3n | &) eren (s_ 3r3n | ||||
&) es (_ @s | &) es (_ @s | ||||
&) et (_ @D | &) et (_ @D | ||||
icha) e (l | |||||
ika) e (l | |||||
ir) e (n 'e | ir) e (n 'e | ||||
yr) e (n 'e | yr) e (n 'e | ||||
.group f | .group f | ||||
f f | f f | ||||
ff f | ff f | ||||
_) for (@P3 f%V | |||||
_) for (um f%or | |||||
_) for (&@P3 f%V | |||||
_) for (e f%V | |||||
_) for (um f%or | |||||
a) f (A u | a) f (A u | ||||
a) f (C u | a) f (C u | ||||
a) f (it f | |||||
a) f (on f | |||||
a) f (rik f | a) f (rik f | ||||
a) f (sted | |||||
a) f (ten f | a) f (ten f | ||||
a) f (tes_ f | a) f (tes_ f | ||||
Ca) f (t f | Ca) f (t f | ||||
ga) f (fel f | |||||
gra) f ( f | |||||
gra) f (A f | |||||
gra) f (C f | |||||
ra) f (ik f | ra) f (ik f | ||||
ra) f (fe f | |||||
kra) f (t f | kra) f (t f | ||||
sa) f (ar f | |||||
ska) f (f f | |||||
sta) f (e f | |||||
.group g | .group g | ||||
g g | g g | ||||
gg g | |||||
g (ent g | |||||
g (ment g | |||||
a) g (A w | a) g (A w | ||||
a) g (C ?w | a) g (C ?w | ||||
a) g (e | a) g (e | ||||
la) g (e | |||||
a) g (en g | |||||
g) g g | g) g g | ||||
e) g (e | e) g (e | ||||
n) g n^ | |||||
i) g (t g | i) g (t g | ||||
i) g j | |||||
i) g (t_ | |||||
gti) g | |||||
i) g | |||||
i) g (A | i) g (A | ||||
i) g (ere g | |||||
redi) g (er g | |||||
i) g (i g | |||||
n) g n^ | |||||
n) gr n^gr | |||||
r) g (_ w | r) g (_ w | ||||
r) g (e w | r) g (e w | ||||
Ca) g (en j | |||||
ra) g (_ w | |||||
ra) g (e w | |||||
ør) g (s | ør) g (s | ||||
l) g (_ j | l) g (_ j | ||||
li) g | |||||
li) g (g g | |||||
u) g g | u) g g | ||||
u) g (e | u) g (e | ||||
u) g (l ? | u) g (l ? | ||||
y) g (A g | y) g (A g | ||||
ø) g (e | ø) g (e | ||||
ø) g (n | ø) g (n | ||||
æ) g (e j | |||||
&e) g j | &e) g j | ||||
an) g (å g | |||||
ba) g (e | ba) g (e | ||||
da) g (e | da) g (e | ||||
ba) g (C u | |||||
ba) g (t g | |||||
ba) g (ta u | |||||
da) g (C u | |||||
ga) g (e S | |||||
la) g (e | |||||
li) g (t | |||||
pli) g (t g | |||||
sa) g (s ' | |||||
si) g (t g | |||||
&ti) g | |||||
bud) g (et S | |||||
rea) g (er g | rea) g (er g | ||||
aga) g (e S | aga) g (e S | ||||
aga) g (te g | aga) g (te g | ||||
arran) g (e S | arran) g (e S | ||||
eta) g (e S | eta) g (e S | ||||
gara) g (e S | |||||
onta) g (e S | |||||
reta) g (e | |||||
foreta) g (e | |||||
ru) g (_ | |||||
a) g (A j | a) g (A j | ||||
l) g (_ j | l) g (_ j | ||||
l) g (e j | l) g (e j | ||||
l) g (s j | l) g (s j | ||||
Ca) g (t k | Ca) g (t k | ||||
o) g u | o) g u | ||||
bo) g (C u | |||||
æda) g (og g' | æda) g (og g' | ||||
no) g (e | no) g (e | ||||
no) g (le | no) g (le | ||||
nø) g j | |||||
re) g (e g | |||||
re) g (i g | |||||
o) g (r g | o) g (r g | ||||
o) g (n g | o) g (n g | ||||
o) g (s u | o) g (s u | ||||
o) g (st k | |||||
bo) g (st k | |||||
ø) g (_ j | ø) g (_ j | ||||
ø) g (t g | ø) g (t g | ||||
sal) g j | |||||
val) g j | |||||
lå) g (e u | lå) g (e u | ||||
navi) g (er g | |||||
vå) g (e u | vå) g (e u | ||||
vå) g (n u | |||||
vå) g (ne u | vå) g (ne u | ||||
go) g = | go) g = | ||||
lo) g = | lo) g = | ||||
lo) g (a g | |||||
lo) g (i =g | |||||
_lo) g (i- S | |||||
lo) g (o =g | |||||
_lo) g (_ g | |||||
_lo) g (g g | |||||
ør) g w | ør) g w | ||||
a) g (K ? | a) g (K ? | ||||
_) ge (@P2 ge | _) ge (@P2 ge | ||||
_) ge (nere Se | _) ge (nere Se | ||||
_) ge (nert Se | _) ge (nert Se | ||||
_) ge (nerel ge | _) ge (nerel ge | ||||
_) ge (nera ge | |||||
ge (nera ge | |||||
ge (nerer ge | |||||
ta) g (e | ta) g (e | ||||
h h | h h | ||||
h (j | h (j | ||||
h (v | |||||
hv v | |||||
A) h (K | A) h (K | ||||
t) h (en h | t) h (en h | ||||
i (nK i | i (nK i | ||||
i (nn e | i (nn e | ||||
i (mK e | i (mK e | ||||
k) i (C_ 'i | |||||
k) i (CC_ 'i | |||||
l) i (e j | l) i (e j | ||||
n) i (e i | n) i (e i | ||||
r) i (g i | |||||
t) i (e j | t) i (e j | ||||
s) i (e j | s) i (e j | ||||
t) i (on // i ommitted because of sj | t) i (on // i ommitted because of sj | ||||
s) i (on j | s) i (on j | ||||
j j | j j | ||||
j (aw dZ | j (aw dZ | ||||
j (ack dZ | j (ack dZ | ||||
j (ob dZ | |||||
j (ohn dZ | j (ohn dZ | ||||
o) j (e S | o) j (e S | ||||
a) j (o S | a) j (o S | ||||
s) k g | s) k g | ||||
&) k g // after stressed vowel | |||||
&) k k // after stressed vowel | |||||
&) kk g | &) kk g | ||||
.group l | .group l | ||||
l l | l l | ||||
ll l | ll l | ||||
ld (K l | ld (K l | ||||
&) ld (e_ l | &) ld (e_ l | ||||
&) ld (ekk l | &) ld (ekk l | ||||
o) ld l | |||||
bo) ld ld | |||||
fo) ld l | |||||
he) ld l | |||||
he) ld (ig ld | |||||
no) ld l | |||||
æ) ld (r ld | |||||
.group m | .group m | ||||
m m? | m m? | ||||
mm m | mm m | ||||
m (A 'm | |||||
m (A m | |||||
.group n | .group n | ||||
n n | n n | ||||
nn n | nn n | ||||
nd (e n | nd (e n | ||||
nd (K n | nd (K n | ||||
nd (ow nd | nd (ow nd | ||||
nd (r nd | |||||
u) nd ( n | |||||
n (k N | n (k N | ||||
n (g | |||||
pag) n (e nj | |||||
gleme) n (t n^ | |||||
.group ng | .group ng | ||||
ng (_ n^ | |||||
a) ng (A ng | |||||
a) ng (C n^ | |||||
ng (a ng | ng (a ng | ||||
ng (i ng | ng (i ng | ||||
arra) ng n^S | arra) ng n^S | ||||
fu) ng n^'g | |||||
.group o | .group o | ||||
o o: | o o: | ||||
kr) o (C o | kr) o (C o | ||||
cr) o (C 'o | cr) o (C 'o | ||||
h) o (ld 'V | |||||
h) o (ved o | |||||
o (CK o | o (CK o | ||||
o (r O- | |||||
o (p 'V | |||||
o (r o | |||||
o (rdn o | |||||
m) o (rC V | |||||
o (gK o | o (gK o | ||||
oo u | |||||
b) oo (k u | |||||
l) oo (k u | |||||
ou Vw | ou Vw | ||||
ov Vw | |||||
@) o (C V | |||||
ov Vv | |||||
@) o (C 'o | |||||
@@) o (C 'o | |||||
_C) o (l 'V | _C) o (l 'V | ||||
_C) o (p 'V | _C) o (p 'V | ||||
_CC) o (p 'V | _CC) o (p 'V | ||||
_CC) o (l 'V | _CC) o (l 'V | ||||
_f) o (r 'V | |||||
b) o (C 'o | |||||
sk) o (le 'o | |||||
_f) o (r V | |||||
_f) o (re 'V | |||||
l) o (kk V | l) o (kk V | ||||
p) o (li o | p) o (li o | ||||
st) o (K 'o | st) o (K 'o | ||||
.group p | .group p | ||||
p p | p p | ||||
pp p | pp p | ||||
&) p b | &) p b | ||||
&) pp b | &) pp b | ||||
bu) rd (eK rd | bu) rd (eK rd | ||||
no) rd (eKK r | no) rd (eKK r | ||||
no) rd (isk rd | no) rd (isk rd | ||||
o) rd (en rd | |||||
tu) rd (eK rd | tu) rd (eK rd | ||||
ve) rd (eKK rd | ve) rd (eKK rd | ||||
s (A s | s (A s | ||||
s (ie s | s (ie s | ||||
s (ion S | s (ion S | ||||
s (j s | s (j s | ||||
s (ch S | s (ch S | ||||
kompromi) s | |||||
.group t | .group t | ||||
t t | t t | ||||
A) t (_ t: | A) t (_ t: | ||||
th t | |||||
th th | |||||
&) t t | &) t t | ||||
&) tt t | &) tt t | ||||
&) th d | &) th d | ||||
t (ie t | t (ie t | ||||
t (ion+ sj' | t (ion+ sj' | ||||
emen) t | |||||
elemen) t t | |||||
emen) t (al t | |||||
glemen) t | |||||
glemen) t (al t | |||||
lemen) t (er t | |||||
poin) t | |||||
poin) t (e t | |||||
u (nK u | u (nK u | ||||
u (mK O | u (mK O | ||||
a) u (g u | a) u (g u | ||||
b) u (dget y | |||||
l) u (k O? | l) u (k O? | ||||
l) u (kas u | l) u (kas u | ||||
m) u (k O? | m) u (k O? | ||||
r) u u | r) u u | ||||
r) u (m O | r) u (m O | ||||
r) u (nd O? | r) u (nd O? | ||||
fris) u (r y | |||||
frit) u (r y | |||||
men) u y | |||||
g) u (st O | g) u (st O | ||||
r) u (s u | r) u (s u | ||||
a) v (n u | a) v (n u | ||||
&A) v v | &A) v v | ||||
&r) v v | &r) v v | ||||
l) v (C | |||||
l) v (A | |||||
al) v (A v | |||||
el) v (C | |||||
el) v (A | |||||
el) v (e v | |||||
il) v (A v | |||||
ur) v v | |||||
hal) v | |||||
.group w | .group w | ||||
æ E? | æ E? | ||||
æ (CK E: | æ (CK E: | ||||
l) æ E: | l) æ E: | ||||
r) æ &: | |||||
r) æ (CK e | |||||
r) æ E | |||||
r) æ (kk aj | |||||
r) æ (v e | |||||
r) æ (L01 Aj | r) æ (L01 Aj | ||||
r) æ (k Aj | |||||
t) æ (C E: | t) æ (C E: | ||||
v) æ E: | v) æ E: | ||||
pr) æ (ge E: | |||||
tr) æ E | |||||
tr) æ (k 'aj | |||||
tr) æ (kA E | |||||
.group ø | .group ø | ||||
ø W? | ø W? | ||||
ø (CK W: | ø (CK W: | ||||
b) ø (g W | b) ø (g W | ||||
d) ø (r W | |||||
f) ø (r W: | f) ø (r W: | ||||
g) ø (r @: | |||||
h) ø (j V | |||||
h) ø (r W: | h) ø (r W: | ||||
k) ø (r W: | k) ø (r W: | ||||
l) ø (s W: | l) ø (s W: | ||||
m) ø W: | m) ø W: | ||||
r) ø W: | r) ø W: | ||||
s) ø W: | s) ø W: | ||||
ø (r w | |||||
t) ø (r W | |||||
ø (r W | |||||
r) ø (CK W: | r) ø (CK W: | ||||
øg Vj | |||||
øj Vj | |||||
øg W | |||||
d) øg (n Vj | |||||
øj oj | |||||
.group å | .group å | ||||
å O:? | å O:? | ||||
$ dVlar | $ dVlar | ||||
_3X 'd@-*aIsIC | _3X 'd@-*aIsIC | ||||
_4X 'fi:*tsIC | _4X 'fi:*tsIC | ||||
_5X 'fynftsIC | _5X 'fynftsIC | ||||
_6X 'zEktsIC | |||||
_6X 'zECtsIC | |||||
_7X 'zi:btsIC | _7X 'zi:btsIC | ||||
_8X '_axttsIC | _8X '_axttsIC | ||||
_9X 'nOYntsIC | _9X 'nOYntsIC | ||||
lakaienhaft l%akaInhaft | lakaienhaft l%akaInhaft | ||||
lappalie $alt | lappalie $alt | ||||
lilie $alt | lilie $alt | ||||
linie $alt | |||||
logier lo:Z'i:* | logier lo:Z'i:* | ||||
luetisch lu:'e:tIS | luetisch lu:'e:tIS | ||||
problematisier p@-*o:ble:m'a:tIzi:* | problematisier p@-*o:ble:m'a:tIzi:* | ||||
reliquie $alt | reliquie $alt | ||||
risik $1 | |||||
rupie $alt | rupie $alt | ||||
sabbat zabat | sabbat zabat |
&) eren (_S4 @*@n | &) eren (_S4 @*@n | ||||
&) erer (_S4 @*3 | &) erer (_S4 @*3 | ||||
&) eres (_S4 @*@s | &) eres (_S4 @*@s | ||||
&) er (C_ @* | |||||
&) er (C_ @:* | |||||
er (d_ e:* | er (d_ e:* | ||||
&) er (n_ @* | |||||
&) er (n_ @:* | |||||
&) er (r_ E | &) er (r_ E | ||||
w) er (k_ E* | w) er (k_ E* | ||||
&) er (nd_ @* | &) er (nd_ @* | ||||
_) inter Int@* | _) inter Int@* | ||||
&) in (_ i2n | &) in (_ i2n | ||||
l) in (_ 'i:n | l) in (_ 'i:n | ||||
m) in (_ 'i:n | |||||
s) in (_ 'i:n | s) in (_ 'i:n | ||||
z) in (_ 'i:n | |||||
@) in (o_ 'i:n | |||||
@) ion (_ j'o:n | @) ion (_ j'o:n | ||||
@) io (n Io: | @) io (n Io: | ||||
io Io: | io Io: | ||||
&) ie (ll_ I'E | &) ie (ll_ I'E | ||||
&) ie (r_ 'i: | &) ie (r_ 'i: | ||||
ie (rs@ 'i: | |||||
u) ie (r_ _|'i: | u) ie (r_ _|'i: | ||||
&) ie (rlich 'i: | &) ie (rlich 'i: | ||||
bank) ie (r I'e: | bank) ie (r I'e: | ||||
fol) ie (_ =I@ | fol) ie (_ =I@ | ||||
formal) ie =I@ | formal) ie =I@ | ||||
stud) ie (_ =I@ | stud) ie (_ =I@ | ||||
in) ie (_ I@ | |||||
.group j | .group j | ||||
_) vi vi: | _) vi vi: | ||||
_) v v | _) v v | ||||
_) v (ater f | |||||
vater fA:t3 | |||||
väter fE:t3 | |||||
_) v (ät f | |||||
_) v (ie f | _) v (ie f | ||||
_) v (iet v | _) v (iet v | ||||
_) v (iz f | _) v (iz f | ||||
_) vehe ve:he: | _) vehe ve:he: | ||||
_) ver (@P3 f%E* | _) ver (@P3 f%E* | ||||
_) ver (bal v%E* | _) ver (bal v%E* | ||||
_) ver (sion vE* | |||||
_) ver (tik vE* | _) ver (tik vE* | ||||
@) versich fE*z,IC | @) versich fE*z,IC | ||||
@) vergess fE*g,Es | @) vergess fE*g,Es |
Phonemes which are used in the *_rules and *_list files | Phonemes which are used in the *_rules and *_list files | ||||
Dictionary af_dict | |||||
Dictionary zhy_dict | |||||
& &: 3: @ @- @L @U a | |||||
A: aI AI aU A~ E e: e@ | |||||
eI e~ I i iu O O: o@ | |||||
OI oI o~ u uI W y Y@ | |||||
Yy | |||||
a aa aai aan aau ai au e | |||||
ei eo eoi eu i iu o oe | |||||
oi ong ou u ui yu | |||||
- : ; ? 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 | |||||
b c d f g h j k | |||||
l m n N p r s t | |||||
tS v w z | |||||
Dictionary bn_dict | |||||
Dictionary fr_dict | |||||
& a a: a~ e E e~ i | |||||
I i: i:~ i~ l- o O o: | |||||
O~ o~ r- U u u: u:~ u~ | |||||
V | |||||
@ @- @2 a A~ e E E2 | |||||
E: E~ i i- i: o O o2 | |||||
O2 o3 O~ u u: W w^i wA | |||||
W~ y Y | |||||
* b B bh c C ch d | |||||
d. d.h dh g gh h j J | |||||
Jh k kh l m n N n. | |||||
n^ p ph Q r r. s S | |||||
s. t t. t.h th tS x z | |||||
: 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 | |||||
Dictionary ca_dict | |||||
Dictionary nl_dict | |||||
@ a a# aI e E E2 i | |||||
o O u U | |||||
8 @ @- A a: E e: EI | |||||
eU i I O O: o: u VU | |||||
Wy y Y: yU | |||||
* ** : ; b B d D | |||||
dZ; f g j J J^ k l | |||||
l^ m n N n^ p Q R | |||||
R2 s S; t T ts tS; v | |||||
v# w z Z Z; | |||||
* : ; b C d f g | |||||
h j k l m n N n^ | |||||
p Q r s S t tS v | |||||
v2 w x z | |||||
Dictionary cs_dict | |||||
Dictionary jbo_dict | |||||
@- a a: aU e e: eI eU | |||||
i i: l- o o: oU r- u | |||||
u: | |||||
@ @- a aI aU e eI i | |||||
l- o oI r- u | |||||
* ; b c d dZ dz f | |||||
g h j J k l l^ m | |||||
n N n^ p r R R^ R^/ | |||||
s S t tS ts v x z | |||||
* - b d dZ f g h | |||||
j k l m n N p R | |||||
s S t tS v w x z | |||||
Z | Z | ||||
Dictionary cy_dict | |||||
Dictionary hu_dict | |||||
@ @- @I @Y a A: aI aU | |||||
AY aY E e: eU I i: Iu | |||||
O o: OI OY U u: uY V | |||||
Y y: Yu | |||||
A a: E e: i i: o o: | |||||
u u: Y y y: Y: | |||||
: b C d D dZ f g | |||||
h j k l L m n N | |||||
p r s S t T v w | |||||
x z | |||||
: b c C d dZ f g | |||||
h j J k l l^ m n | |||||
N n^ p R R2 s S s2 | |||||
t tS ts v z Z | |||||
Dictionary kn_dict | |||||
Dictionary hy_dict | |||||
a a: aI aU e E e: i | |||||
I i: o o: r- u u: V | |||||
y | |||||
@ a aI e eI i i@ o | |||||
u W y | |||||
: b bh c ch d d. d.h | |||||
dh dZ f g gh h j J | |||||
Jh k kh l l. m n N | |||||
n. n^ p ph R R2 s S | |||||
s. S; t t. t.h th tS v | |||||
w z | |||||
** b c d dZ dz f g | |||||
h j k k# l m n p | |||||
p# r R r" s S t t# | |||||
tS ts ts# v X z Z | |||||
Dictionary de_dict | |||||
Dictionary zh_dict | |||||
3 @ @- a A A: aI aU | |||||
E E2 E: e: EI I i2 i: | |||||
O o: OY U u: W y y: | |||||
Y: | |||||
@ @r a A ai Au E ei | |||||
i i. i[ iA iE io iou N- | |||||
o o- ong ou u u@ ua uai | |||||
uei uo y y& y@ yE yi yu | |||||
* : ; b C C2 d D | |||||
dZ f g h j k l m | |||||
n N p pF r s S t | |||||
tS ts v x z Z | |||||
; C f h j k kh l | |||||
L m n N p ph r R | |||||
s s. S; t th ts ts. ts. | |||||
tS; tS; tsh v w x X z. | |||||
Dictionary ca_dict | |||||
@ a a# aI e E E2 i | |||||
o O u U | |||||
* ** : ; b B d D | |||||
dZ; f g j J J^ k l | |||||
l^ m n N n^ p Q R | |||||
R2 s S; t T ts tS; v | |||||
v# w z Z Z; | |||||
Dictionary af_dict | |||||
& &: 3: @ @- @L @U a | |||||
A: aI AI aU A~ E e: e@ | |||||
eI e~ I i iu O O: o@ | |||||
OI oI o~ u uI W y Y@ | |||||
Yy | |||||
- : ; ? b c d dZ | |||||
f g h j k l L m | |||||
n N p r s S t T | |||||
tS v w x x2 z Z | |||||
Dictionary 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 | |||||
Dictionary el_dict | Dictionary el_dict | ||||
x z Z | x z Z | ||||
Dictionary eo_dict | |||||
@- a aI aU e eI eU i | |||||
o oI u uI | |||||
* - b d dZ f g h | |||||
j k l m n p r R | |||||
s S t T tS ts v w | |||||
x z Z | |||||
Dictionary es_dict | |||||
a aI aU e E eI eU i | |||||
o O oI u | |||||
* ** : b B d D f | |||||
g j J J^ k l m n | |||||
N n^ p Q R R2 s t | |||||
T tS v v# w x z | |||||
Dictionary fi_dict | |||||
& &i &y a a2 ai au e | |||||
ei eu ey i I ie iu iy | |||||
o oi ou u ui uo Y y | |||||
Yi yi Yy yY | |||||
: b d f g h j k | |||||
l m n N p r s S | |||||
s2 t v w Z | |||||
Dictionary fr_dict | |||||
Dictionary cs_dict | |||||
@ @- @2 a A~ e E E~ | |||||
i I i- i: o O o2 O2 | |||||
O~ u u: W W2 w^i wA W~ | |||||
y Y | |||||
@- a a: aU e e: eI eU | |||||
i i: l- o o: oU r- u | |||||
u: | |||||
: b d dZ f g h j | |||||
k l m n N n2 n^ p | |||||
p2 r r2 s S t t2 t3 | |||||
tS v w z Z z2 z3 | |||||
* ; b c d dZ dz f | |||||
g h j J k l l^ m | |||||
n N n^ p r R R^ R^/ | |||||
s S t tS ts v x z | |||||
Z | |||||
Dictionary grc_dict | Dictionary grc_dict | ||||
T v x z | T v x z | ||||
Dictionary cy_dict | |||||
@ @- @I @Y a A: aI aU | |||||
AY aY E e: eU I i: Iu | |||||
O o: OI OY U u: uY V | |||||
Y y: Yu | |||||
: b C d D dZ f g | |||||
h j k l L m n N | |||||
p r s S t T v w | |||||
x z | |||||
Dictionary hbs_dict | Dictionary hbs_dict | ||||
& @ @2 a A a: aI aU | & @ @2 a A a: aI aU | ||||
t tS ts tS; v x z Z | t tS ts tS; v x z Z | ||||
Dictionary hi_dict | |||||
@ @- @2 @3 a a: aI aU | |||||
e E e: E: E~ i I i: | |||||
l- o O o: O: O~ o~ r- | |||||
U u: u~ V | |||||
- : b bh c ch d d. | |||||
d.h dh f g gh h H j | |||||
J Jh k kh l l. m n | |||||
N n. n^ p ph Q q r | |||||
r. s S s. t T t. t.h | |||||
th v w x z | |||||
Dictionary hu_dict | |||||
A a: E e: i i: o o: | |||||
u u: Y y y: Y: | |||||
: b c C d dZ f g | |||||
h j J k l l^ m n | |||||
N n^ p R R2 s S s2 | |||||
t tS ts v z Z | |||||
Dictionary hy_dict | |||||
@ a aI e eI i i@ o | |||||
u W y | |||||
** b c d dZ dz f g | |||||
h j k k# l m n p | |||||
p# r R r" s S t t# | |||||
tS ts ts# v X z Z | |||||
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 | |||||
Dictionary is_dict | |||||
& @- a aI aU e E eI | |||||
i I o O oU oU2 u W | |||||
y y# Yy | |||||
* ** : ; b c C d | |||||
D f g h j J k l | |||||
l# m m# n N n# N# n^ | |||||
n^# p Q r R r# R2 s | |||||
s2 t T tl# v x z | |||||
Dictionary it_dict | Dictionary it_dict | ||||
@- a a/ aI aU e E eI | @- a a/ aI aU e E eI | ||||
ts v w w2 z | ts v w w2 z | ||||
Dictionary jbo_dict | |||||
Dictionary sk_dict | |||||
@ @- a aI aU e eI i | |||||
l- o oI r- u | |||||
& @- a a: e e: i i: | |||||
l- l: o o: oU r- r: u | |||||
u: | |||||
* - b d dZ f g h | |||||
j k l m n N p R | |||||
s S t tS v w x z | |||||
* ; b d d; dZ dz f | |||||
g h j k l l^ m n | |||||
N n^ p r R R^ R^/ s | |||||
S t t; tS ts v x z | |||||
Z | Z | ||||
Dictionary ml_dict | |||||
a a: aI aU e E e: i | |||||
I i: o o: r- u u: V | |||||
y | |||||
: b bh c ch d d. d.h | |||||
dh dZ f g gh h j J | |||||
Jh k kh l l. m n N | |||||
n. n^ p ph R R2 s s. | |||||
S; t t. t.h th tS v w | |||||
z z. | |||||
Dictionary ne_dict | |||||
@ @/ @2 @3 a aI aU a~ | |||||
e E eI eU e~ E~ i I | |||||
i~ l- o O o: oI oU O~ | |||||
o~ r- u uI u~ V VI VU | |||||
V~ | |||||
- : b bh c ch d d. | |||||
d.h dh f g gh h H j | |||||
J Jh k kh l l. m n | |||||
N n. n^ p ph Q q r | |||||
r. s S s. t T t. t.h | |||||
th v w x z z. | |||||
Dictionary om_dict | |||||
a A a# a: E e E# I | |||||
I# i: O O# o: U U# u: | |||||
** : b B c` d D d` | |||||
dZ f g h j k k` l | |||||
m n n^ p p` R s S | |||||
s2 t t` tS v w z | |||||
Dictionary ku_dict | Dictionary ku_dict | ||||
8 a e E E# eI eU i | 8 a e E E# eI eU i | ||||
w x z Z | w x z Z | ||||
Dictionary la_dict | |||||
Dictionary sq_dict | |||||
@- a a: aI aU E e: EU | |||||
I i: O o: OI U u: y | |||||
y: | |||||
@ @/ a A a/ aI E e | |||||
eI i I I# O OI u V | |||||
y yE | |||||
* : ; <h> ? b d f | |||||
g h j k l m n N | |||||
p r R s t w z | |||||
** : ; b c d D dZ | |||||
dz dZ; f g h j k l | |||||
L ll m n n^ p r R | |||||
R2 s S t T tS ts v | |||||
w z Z | |||||
Dictionary lv_dict | |||||
Dictionary sw_dict | |||||
a a: ai au e e: ei i | |||||
i: ie iu o o: u u: ui | |||||
uo | |||||
@- a a/ e i m- n- N- | |||||
o u | |||||
: b c d dZ f g h | |||||
j J k l l^ m n N | |||||
n^ p r R R2 s S t | |||||
tS ts v z Z | |||||
* : b d D f g h | |||||
j J k l m n N n^ | |||||
p Q R s S t T tS | |||||
v w x z | |||||
Dictionary mk_dict | |||||
Dictionary fi_dict | |||||
& @ @- @2 a A a: E | |||||
e e: i I i: l- o o: | |||||
oU r- u u: | |||||
& &i &y a a2 ai au e | |||||
ei eu ey i I ie iu iy | |||||
o oi ou u ui uo Y y | |||||
Yi yi Yy yY | |||||
* b d dZ dz dZ; f g | |||||
h j k k^ l l^ m n | |||||
N n^ p r R s S t | |||||
tS ts tS; v x z Z | |||||
: b d f g h j k | |||||
l m n N p r s S | |||||
s2 t v w Z | |||||
Dictionary rw_dict | |||||
Dictionary pl_dict | |||||
a e i o u | |||||
a E E# E~ i O O~ u | |||||
y | |||||
* : b B c d dZ f | |||||
g h j J k l m n | |||||
N n^ p q R s S S; | |||||
t tS v w x z | |||||
: ; b c C d d; dZ | |||||
dz dz; f g h j k l | |||||
m n N n^ p r R s | |||||
S s; S; t t; tS ts ts; | |||||
tS; v w x z Z Z; | |||||
Dictionary eu_dict | |||||
Dictionary no_dict | |||||
a aI aU e eI eU i o | |||||
oI u Y | |||||
@ @2 a A a: A: AI aI | |||||
aU E E: e: I i: O o: | |||||
OI U u- u-: u-I u: W y | |||||
y: Y: Yy | |||||
* ** : ; b B c d | |||||
D f g h j J k l | |||||
l^ m n n^ p Q r R | |||||
s S t tS ts tz v w | |||||
x z | |||||
: ; b d f g h j | |||||
k l m n N p r R | |||||
s S s; t v w x z | |||||
Dictionary nl_dict | |||||
Dictionary vi_dict | |||||
8 @ @- A a: E e: EI | |||||
eU i I O O: o: u VU | |||||
Wy y Y: yU | |||||
@ @: @:I @:U @I @U a a: | |||||
a:I a:U aI aU E e eU EU | |||||
i i@ iU O o OI oI u | |||||
u@ uI y y@ yI | |||||
* : ; b C d f g | |||||
h j k l m n N n^ | |||||
p Q r s S t tS v | |||||
v2 w x z | |||||
b c d D f g h j | |||||
J k kh l m n N n^ | |||||
p Q r s s. t t[ ts; | |||||
tS; v w x z Z z. | |||||
Dictionary no_dict | |||||
Dictionary ro_dict | |||||
@ @2 a A a: A: AI aI | |||||
aU E E: e: I i: O o: | |||||
OI U u- u-: u-I u: W y | |||||
y: Y: Yy | |||||
@ @- @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 d f g h j | |||||
k l m n N p r R | |||||
s S s; t v w x z | |||||
* *; - b b; c C d | |||||
d; dZ f f; g h j k | |||||
l l; m m; n N n; p | |||||
p; r s S S; t t; tS | |||||
ts ts; v v; w w2 x z | |||||
Z z; Z; | |||||
Dictionary pl_dict | |||||
Dictionary lv_dict | |||||
a E E# E~ i O O~ u | |||||
y | |||||
a a: ai au e e: ei i | |||||
i: ie iu o o: u u: ui | |||||
uo | |||||
: ; b c C d d; dZ | |||||
dz dz; f g h j k l | |||||
m n N n^ p r R s | |||||
S s; S; t t; tS ts ts; | |||||
tS; v w x z Z Z; | |||||
: b c d dZ f g h | |||||
j J k l l^ m n N | |||||
n^ p r R R2 s S t | |||||
tS ts v z Z | |||||
Dictionary pt_dict | Dictionary pt_dict | ||||
w x z Z | w x z Z | ||||
Dictionary ro_dict | |||||
Dictionary tr_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 | |||||
a e E i I o O u | |||||
U u# W y Y | |||||
* *; - b b; c C d | |||||
d; dZ f f; g h j k | |||||
l l; m m; n N n; p | |||||
p; r s S S; t t; tS | |||||
ts ts; v v; w w2 x z | |||||
Z z; Z; | |||||
* : b c d dZ f g | |||||
h j J k l m n p | |||||
Q r R s S t tS v | |||||
w z Z | |||||
Dictionary ru_dict | Dictionary ru_dict | ||||
z; Z; | z; Z; | ||||
Dictionary eo_dict | |||||
@- a aI aU e eI eU i | |||||
o oI u uI | |||||
* - b d dZ f g h | |||||
j k l m n p r R | |||||
s S t T tS ts v w | |||||
x z Z | |||||
Dictionary mk_dict | |||||
& @ @- @2 a A a: E | |||||
e e: i I i: l- o o: | |||||
oU r- u u: | |||||
* b d dZ dz dZ; f g | |||||
h j k k^ l l^ m n | |||||
N n^ p r R s S t | |||||
tS ts tS; v x z Z | |||||
Dictionary es_dict | |||||
a aI aU e E eI eU i | |||||
o O oI u | |||||
* ** : b B d D f | |||||
g j J J^ k l m n | |||||
N n^ p Q R R2 s t | |||||
T tS v v# w x z | |||||
Dictionary is_dict | |||||
& @- a aI aU e E eI | |||||
i I o O oU oU2 u W | |||||
y y# Yy | |||||
* ** : ; b c C d | |||||
D f g h j J k l | |||||
l# m m# n N n# N# n^ | |||||
n^# p Q r R r# R2 s | |||||
s2 t T tl# v x z | |||||
Dictionary da_dict | Dictionary da_dict | ||||
& 0 3 @ @- a A e | & 0 3 @ @- a A e | ||||
S t tS v w | S t tS v w | ||||
Dictionary sk_dict | |||||
& @- a a: e e: i i: | |||||
l- l: o o: oU r- r: u | |||||
u: | |||||
* ; b d d; dZ dz f | |||||
g h j k l l^ m n | |||||
N n^ p r R R^ R^/ s | |||||
S t t; tS ts v x z | |||||
Z | |||||
Dictionary sq_dict | |||||
Dictionary de_dict | |||||
@ @/ a A a/ aI E e | |||||
eI i I I# O OI u V | |||||
y yE | |||||
3 @ @- a A A: aI aU | |||||
E E2 E: e: EI I i2 i: | |||||
O o: OY U u: W y y: | |||||
Y: | |||||
** : ; b c d D dZ | |||||
dz dZ; f g h j k l | |||||
L ll m n n^ p r R | |||||
R2 s S t T tS ts v | |||||
w z Z | |||||
* : ; b C C2 d D | |||||
dZ f g h j k l m | |||||
n N p pF r s S t | |||||
tS ts v x z Z | |||||
Dictionary sv_dict | Dictionary sv_dict | ||||
S s. S; sx t v w z | S s. S; sx t v w z | ||||
Dictionary sw_dict | |||||
Dictionary la_dict | |||||
@- a a/ e i m- n- N- | |||||
o u | |||||
@- a a: aI aU E e: EU | |||||
I i: O o: OI U u: y | |||||
y: | |||||
* : b d D f g h | |||||
j J k l m n N n^ | |||||
p Q R s S t T tS | |||||
v w x z | |||||
* : ; <h> ? b d f | |||||
g h j k l m n N | |||||
p r R s t w z | |||||
Dictionary hi_dict | |||||
@ @- @2 @3 a a: aI aU | |||||
e E e: E: E~ i I i: | |||||
l- o O o: O: O~ o~ r- | |||||
U u: u~ V | |||||
- : b bh c ch d d. | |||||
d.h dh f g gh h H j | |||||
J Jh k kh l l. m n | |||||
N n. n^ p ph Q q r | |||||
r. s S s. t T t. t.h | |||||
th v w x z | |||||
Dictionary ta_dict | Dictionary ta_dict | ||||
a a: aU e E e: E: i | |||||
a a: aI aU e E e: i | |||||
I i: o o: U u u: V | I i: o o: U u u: V | ||||
: b c C d d. dZ f | |||||
g h j k l l. m n | |||||
N n. n^ p r R s S | |||||
s. t t. tS v w z z. | |||||
: ; b c C d d. dZ | |||||
f g h j k l l. m | |||||
n N n. n^ p r R s | |||||
S s. t t. th tS v w | |||||
z z. | |||||
Dictionary tr_dict | |||||
Dictionary bn_dict | |||||
a e E i I o O u | |||||
U u# W y Y | |||||
& a a: a~ e E e~ i | |||||
I i: i:~ i~ l- o O o: | |||||
O~ o~ r- U u u: u:~ u~ | |||||
V | |||||
* : b c d dZ f g | |||||
h j J k l m n p | |||||
Q r R s S t tS v | |||||
w z Z | |||||
* b B bh c C ch d | |||||
d. d.h dh g gh h j J | |||||
Jh k kh l m n N n. | |||||
n^ p ph Q r r. s S | |||||
s. t t. t.h th tS x z | |||||
Dictionary vi_dict | |||||
Dictionary eu_dict | |||||
@ @: @:I @:U @I @U a a: | |||||
a:I a:U aI aU E e eU EU | |||||
i i@ iU O o OI oI u | |||||
u@ uI y y@ yI | |||||
a aI aU e eI eU i o | |||||
oI u Y | |||||
b c d D f g h j | |||||
J k kh l m n N n^ | |||||
p Q r s s. t t[ ts; | |||||
tS; v w x z Z z. | |||||
* ** : ; b B c d | |||||
D f g h j J k l | |||||
l^ m n n^ p Q r R | |||||
s S t tS ts tz v w | |||||
x z | |||||
Dictionary zh_dict | |||||
Dictionary kn_dict | |||||
@ @r a A ai Au E ei | |||||
i i. i[ iA iE io iou N- | |||||
o o- ong ou u u@ ua uai | |||||
uei uo y y& y@ yE yi yu | |||||
a a: aI aU e E e: i | |||||
I i: o o: r- u u: V | |||||
y | |||||
; C f h j k kh l | |||||
L m n N p ph r R | |||||
s s. S; t th ts ts. ts. | |||||
tS; tS; tsh v w x X z. | |||||
: b bh c ch d d. d.h | |||||
dh dZ f g gh h j J | |||||
Jh k kh l l. m n N | |||||
n. n^ p ph R R2 s S | |||||
s. S; t t. t.h th tS v | |||||
w z | |||||
Dictionary zhy_dict | |||||
Dictionary ml_dict | |||||
a aa aai aan aau ai au e | |||||
ei eo eoi eu i iu o oe | |||||
oi ong ou u ui yu | |||||
a a: aI aU e E e: i | |||||
I i: o o: r- u u: V | |||||
y | |||||
b c d f g h j k | |||||
l m n N p r s t | |||||
tS v w z | |||||
: b bh c ch d d. d.h | |||||
dh dZ f g gh h j J | |||||
Jh k kh l l. m n N | |||||
n. n^ p ph R R2 s s. | |||||
S; t t. t.h th tS v w | |||||
z z. | |||||
Dictionary mn_dict | |||||
a e i o O o: U u | |||||
: ; c f g j k L | |||||
m n p p# R s S t | |||||
t# tS ts ts# w x | |||||
Dictionary ne_dict | |||||
@ @/ @2 @3 a aI aU a~ | |||||
e E eI eU e~ E~ i I | |||||
i~ l- o O o: oI oU O~ | |||||
o~ r- u uI u~ V VI VU | |||||
V~ | |||||
- : b bh c ch d d. | |||||
d.h dh f g gh h H j | |||||
J Jh k kh l l. m n | |||||
N n. n^ p ph Q q r | |||||
r. s S s. t T t. t.h | |||||
th v w x z z. | |||||
Dictionary pap_dict | Dictionary pap_dict | ||||
j k l m n N n^ p | j k l m n N n^ p | ||||
R s S t tS v w x | R s S t tS v w x | ||||
z Z | z Z | ||||
Dictionary rw_dict | |||||
a e i o u | |||||
* : b B c d dZ f | |||||
g h j J k l m n | |||||
N n^ p q R s S S; | |||||
t tS v w x z |
√ skw,e@r'u:t | √ skw,e@r'u:t | ||||
∞ Inf'InI2tI2 | ∞ Inf'InI2tI2 | ||||
≠ n0t'i:kw@LtU | ≠ n0t'i:kw@LtU | ||||
№ nju:m@roU | |||||
ß S,A@p'Es | ß S,A@p'Es | ||||
ə SwA: | ə SwA: | ||||
// numeric | // numeric | ||||
//_0 zero $text // TEST | |||||
_0 z'i@roU | _0 z'i@roU | ||||
_1 w'0n | _1 w'0n | ||||
?6 _1 w'Vn | ?6 _1 w'Vn | ||||
anymore $3 | anymore $3 | ||||
anything EnI2TIN | anything EnI2TIN | ||||
apache a2patSI | apache a2patSI | ||||
apostle a2p0s@L | |||||
apron eIpr@n | apron eIpr@n | ||||
appal a2pO:l | appal a2pO:l | ||||
apparatus ap@r'eIt@s | apparatus ap@r'eIt@s | ||||
bombard $2 | bombard $2 | ||||
bonbon b0nb0n | bonbon b0nb0n | ||||
bonhomie b0n@mi: | bonhomie b0n@mi: | ||||
bonjour bO:nZ'U@ | |||||
boogie b'u:gI | boogie b'u:gI | ||||
bosom bUz@m | bosom bUz@m | ||||
bosun boUs@n | bosun boUs@n | ||||
doable du:@b@L | doable du:@b@L | ||||
doctrine d0ktrI2n | doctrine d0ktrI2n | ||||
doctrinal d0ktr'aIn@L | doctrinal d0ktr'aIn@L | ||||
doer du:3 | |||||
dogged d0gI2d | dogged d0gI2d | ||||
domino $1 | domino $1 | ||||
donor doUn3 | donor doUn3 | ||||
kiwi ki:wi: | kiwi ki:wi: | ||||
knavish neIvIS | knavish neIvIS | ||||
koala koU'A:l@ | koala koU'A:l@ | ||||
koan koUA:n | |||||
kopje k0pI | kopje k0pI | ||||
kosher koUS3 | kosher koUS3 | ||||
lingerie l0nZ@rI | lingerie l0nZ@rI | ||||
linen lInI2n | linen lInI2n | ||||
liqueur lI2kjU@ | liqueur lI2kjU@ | ||||
liter li:t3 | |||||
literature lItrI2tS3 | literature lItrI2tS3 | ||||
live laIv $onlys | live laIv $onlys | ||||
live lIv $verb | live lIv $verb | ||||
livecd l'aIvsi:d'i: | |||||
livestock l'aIvst,0k | livestock l'aIvst,0k | ||||
lively laIvlI | lively laIvlI | ||||
llama lA:m@ | llama lA:m@ | ||||
offers 0f3z | offers 0f3z | ||||
ogre oUg3 | ogre oUg3 | ||||
okay oUk'eI | okay oUk'eI | ||||
oled oUlEd // abbrev | |||||
omeg oUm'eIg@ | omeg oUm'eIg@ | ||||
omelet 0ml@t | omelet 0ml@t | ||||
omelette 0ml@t | omelette 0ml@t | ||||
pigsty pIgstaI | pigsty pIgstaI | ||||
pilot paIl@t | pilot paIl@t | ||||
pineapple p'aInap@L | pineapple p'aInap@L | ||||
pinged pINd | |||||
pint paInt | pint paInt | ||||
pioneer paI@n'i@3 | pioneer paI@n'i@3 | ||||
pious paI@s | pious paI@s | ||||
vicar vIk3 | vicar vIk3 | ||||
vigilante vIdZI2l'antI2 | vigilante vIdZI2l'antI2 | ||||
villi vIlaI | villi vIlaI | ||||
vineyard vInj3d | |||||
vinyl vaInI2l | vinyl vaInI2l | ||||
violin $2 | violin $2 | ||||
virus vaI@r@s | virus vaI@r@s | ||||
Nebraska $2 | Nebraska $2 | ||||
Nepal nEp'O:l | Nepal nEp'O:l | ||||
?3 Nevada nI2vad@ | ?3 Nevada nI2vad@ | ||||
Newfoundland nju:f@ndla2nd | |||||
Noumea nu:m'eI@ | Noumea nu:m'eI@ | ||||
Oahu oU'A:hu: | Oahu oU'A:hu: | ||||
Ohio oUh'aIoU | Ohio oUh'aIoU | ||||
Rihanna rI'A:n@ | Rihanna rI'A:n@ | ||||
Roderick r0drIk | Roderick r0drIk | ||||
Rosario roUz'A@rIoU | Rosario roUz'A@rIoU | ||||
Russell rVs@L | |||||
Sabina sa2bi:n@ | Sabina sa2bi:n@ | ||||
Sabine sa2bi:n | Sabine sa2bi:n | ||||
Samantha s@manT@ | Samantha s@manT@ | ||||
Andromeda andr'0mId@ | Andromeda andr'0mId@ | ||||
Buchanan bju:k'an@n | Buchanan bju:k'an@n | ||||
Campbell kamb@l | Campbell kamb@l | ||||
Carnegie kA@nEgI | |||||
Cthulhu k@-Tu:Lu: | Cthulhu k@-Tu:Lu: | ||||
Chrysler kraIzl3 | Chrysler kraIzl3 | ||||
Disney dIznI | Disney dIznI | ||||
Dolce d0ltSeI | Dolce d0ltSeI | ||||
Dvorak d@-vo@Zak | |||||
Hades heIdi:z | Hades heIdi:z | ||||
Patel pa2tEl | Patel pa2tEl | ||||
Primavera pri:m@v'e@r@ | Primavera pri:m@v'e@r@ | ||||
?3 pasta pA:st@ | ?3 pasta pA:st@ | ||||
?3 patent pat@nt | ?3 patent pat@nt | ||||
?3 privacy praIv@sI | ?3 privacy praIv@sI | ||||
?3 respite rEspI2t | |||||
?3 semi sEmaI | ?3 semi sEmaI | ||||
?3 status stat@s | ?3 status stat@s | ||||
?3 template tEmpl@t | ?3 template tEmpl@t |
amoeb a2mi:b | amoeb a2mi:b | ||||
f) amil amIl | f) amil amIl | ||||
f) am (ous eIm | f) am (ous eIm | ||||
&g) am (ous =a2m | |||||
&) am (ent @m | &) am (ent @m | ||||
&) ame (nta @m'E | &) ame (nta @m'E | ||||
_) ame (nt a2mE | _) ame (nt a2mE | ||||
de (pol d%i: | de (pol d%i: | ||||
de (pop d%i: | de (pop d%i: | ||||
depo (siti dEp@ | depo (siti dEp@ | ||||
de (preca dE | |||||
de (pt dE | de (pt dE | ||||
de (put dE | de (put dE | ||||
_) de (rai dI2 | _) de (rai dI2 | ||||
_s) i (der aI | _s) i (der aI | ||||
i (der_+ aI | i (der_+ aI | ||||
@) i (do_ 'i: | @) i (do_ 'i: | ||||
ifier (_ IfaI@ | |||||
ifier (_ IfaI3 | |||||
man) ife (s IfE | man) ife (s IfE | ||||
&) ify (_ =I2faI | &) ify (_ =I2faI | ||||
if (icAnC 'If | if (icAnC 'If | ||||
ng (e ndZ | ng (e ndZ | ||||
ng (y Ng | ng (y Ng | ||||
mA) ng (y ndZ | mA) ng (y ndZ | ||||
u) ng (y ndZ | |||||
nged ndZd | nged ndZd | ||||
o) nged Nd | o) nged Nd | ||||
spo) nged ndZd | spo) nged ndZd | ||||
.group su | .group su | ||||
_ca) su Zu: | _ca) su Zu: | ||||
_) sus (A su:z | _) sus (A su:z | ||||
su (al Zu: | |||||
_) su (b sV | _) su (b sV | ||||
su (bdue s%V | su (bdue s%V | ||||
su (bmerg s@ | su (bmerg s@ | ||||
_) x z | _) x z | ||||
xio (n kS@ | xio (n kS@ | ||||
xious =kS@s | xious =kS@s | ||||
xu (a kSu: | |||||
.group y | .group y | ||||
y j | y j |
// 2006-11-18 Gilles Casse <[email protected]> | // 2006-11-18 Gilles Casse <[email protected]> | ||||
// | // | ||||
// Updated 2009-07-3128 Michel Such <[email protected]> | |||||
// Updated 2009-09-28 Michel Such <[email protected]> | |||||
// | // | ||||
// * Numbers, a few abbreviations and exceptions. | // * Numbers, a few abbreviations and exceptions. | ||||
// | // | ||||
// accent names | // accent names | ||||
_lig ligat'yr | _lig ligat'yr | ||||
_acu aksA~tEg'y | |||||
_ac2 dublaksA~tEg'y | |||||
_acu aksA~tE2g'y | |||||
_ac2 dublaksA~tE2g'y | |||||
_brv br'Ev | _brv br'Ev | ||||
_ced sed'ij | _ced sed'ij | ||||
_cir aksA~sirkO~fl'Eks | _cir aksA~sirkO~fl'Eks | ||||
_?A l'Etr | _?A l'Etr | ||||
_?? sE~b'Oll | _?? sE~b'Oll | ||||
_#9 tabylasiO~ | _#9 tabylasiO~ | ||||
_#32 Espas | |||||
_#32 E2spas | |||||
_" gijmE | |||||
_" gijmE2 | |||||
_# djEz | _# djEz | ||||
_' apostr'Of | _' apostr'Of | ||||
_( 'uvr@-parA~t'Ez | _( 'uvr@-parA~t'Ez | ||||
_) f'Erm parA~t'Ez | _) f'Erm parA~t'Ez | ||||
_, virgyl | _, virgyl | ||||
_- tirE | |||||
_- tirE2 | |||||
_. _|pw%E~ | _. _|pw%E~ | ||||
_/ bar||oblik | |||||
_/ bar||o2blik | |||||
_: d'Y||pw'E~ | _: d'Y||pw'E~ | ||||
_; pwE~||virg'yl | _; pwE~||virg'yl | ||||
_< E~feri-Wr | _< E~feri-Wr | ||||
_= egal | _= egal | ||||
_> syperi-Wr | _> syperi-Wr | ||||
_? pwE~||dE~terogasj'O~ | |||||
_? pwE~||dE~tE2rogasj'O~ | |||||
_! pwE~||dEksklamasj'O~ | _! pwE~||dEksklamasj'O~ | ||||
_[ uvr@-_kroSE | |||||
_[ uvr@-_kroSE2 | |||||
_\ b'aksl'aS | _\ b'aksl'aS | ||||
_] f'Erm_kroS'E | |||||
_] f'Erm_kroS'E2 | |||||
_^ sirkOnflEks | _^ sirkOnflEks | ||||
__ sulin^e | __ sulin^e | ||||
_` aks'A~_gr'av | _` aks'A~_gr'av | ||||
_| bar_vErtik'al | _| bar_vErtik'al | ||||
_} f'Erm_akOl'ad | _} f'Erm_akOl'ad | ||||
² pw^is'A~s||d'Y | ² pw^is'A~s||d'Y | ||||
_« uvre||gijm'E | |||||
_» fErme||gijm'E | |||||
_« uvre||gijm'E2 | |||||
_» fErme||gijm'E2 | |||||
_’ apostr'Of | _’ apostr'Of | ||||
_‘ apostr'Of | _‘ apostr'Of | ||||
_µ mikr'o | _µ mikr'o | ||||
// symbols that are normally spoken when reading text | // symbols that are normally spoken when reading text | ||||
@ _!arobaz | @ _!arobaz | ||||
% pursA~ $max3 | % pursA~ $max3 | ||||
& _|e $u | |||||
_& _e_komErsi'al | |||||
& e $u $brk | |||||
_& _e_komErsi-'al | |||||
* asterisk: $max3 | * asterisk: $max3 | ||||
+ plys $max3 | + plys $max3 | ||||
~ tilde | ~ tilde | ||||
abc $abbrev | abc $abbrev | ||||
ac $abbrev | ac $abbrev | ||||
acrobat acrobate $text | |||||
adn adeEn | adn adeEn | ||||
adsl adeEsEl | adsl adeEsEl | ||||
alt _::alt | alt _::alt | ||||
cia $abbrev | cia $abbrev | ||||
cio $abbrev | cio $abbrev | ||||
cm centimètre $text | cm centimètre $text | ||||
collins kolins | |||||
cpu $abbrev | cpu $abbrev | ||||
ctrl _::kO~tro2l | ctrl _::kO~tro2l | ||||
dept depart@-mA~ | |||||
dept depart@mA~ | |||||
divx diviks | divx diviks | ||||
ebay _^_en | ebay _^_en | ||||
(e bay) ebay $text | (e bay) ebay $text | ||||
edf @deEf | edf @deEf | ||||
etc Etsetera | |||||
etc E2tsetera | |||||
ghz ZigaErts | ghz ZigaErts | ||||
(g hz) ZigaErts | |||||
hmm h@m | hmm h@m | ||||
(http ://) aSt,et,ep'e_ | (http ://) aSt,et,ep'e_ | ||||
hz _|Erts | hz _|Erts | ||||
ibm ibeEm | ibm ibeEm | ||||
ide $abbrev | ide $abbrev | ||||
ip ipe | ip ipe | ||||
irc i:_|Er:se | |||||
jaws _^_en | |||||
irc i:_!Er_!se | |||||
jaws dZo3:z | |||||
kbit kilobit | kbit kilobit | ||||
kde $abbrev | kde $abbrev | ||||
kg kilogram | |||||
kg kilogramme $text | |||||
khz kiloErts | khz kiloErts | ||||
km kilomètre $text | km kilomètre $text | ||||
(km player) ka,EmplEj'Wr | |||||
(kmplayer) ka,EmplEj'Wr | |||||
(km player) ka,EmplE2j'Wr | |||||
(kmplayer) ka,EmplE2j'Wr | |||||
kw kilowatt $text | kw kilowatt $text | ||||
m. m@siY | m. m@siY | ||||
mbit megabit | mbit megabit | ||||
mme madame $text | mme madame $text | ||||
mn minyt | mn minyt | ||||
mns minytz2 | mns minytz2 | ||||
(mp 3) _|Empetrwa | |||||
(mp 3) _!EmpetrwA | |||||
mr m@siY | mr m@siY | ||||
nsi $abbrev | nsi $abbrev | ||||
nsis $abbrev | nsis $abbrev | ||||
nti $abbrev | nti $abbrev | ||||
nvda $abbrev | nvda $abbrev | ||||
ocr oseEr | ocr oseEr | ||||
oem $abbrev | |||||
oem _!,o_!,@_!'Em | |||||
ogm oZeEm | ogm oZeEm | ||||
ong oEnZe | ong oEnZe | ||||
pci $abbrev | pci $abbrev | ||||
pcmcia $abbrev | |||||
pda $abbrev | pda $abbrev | ||||
philips filips | philips filips | ||||
p.s pOstskriptOm | p.s pOstskriptOm | ||||
qq quelque $text | qq quelque $text | ||||
qqs quelques $text | qqs quelques $text | ||||
ratp $abbrev | ratp $abbrev | ||||
riscos rIskoEs | |||||
riaa $abbrev | |||||
riscos RiskoEs | |||||
sap $abbrev | sap $abbrev | ||||
scsi $abbrev | scsi $abbrev | ||||
s.t.p silt@:pl'E | |||||
s.v.p silvu:pl'E | |||||
sos $abbrev | |||||
s.t.p silt@:pl'E2 | |||||
s.v.p silvu:pl'E2 | |||||
st s'E~t2 | st s'E~t2 | ||||
ste s'E~t | ste s'E~t | ||||
stp silt@:pl'E | |||||
svp silvu:pl'E | |||||
stp silt@:pl'E2 | |||||
svp silvu:pl'E2 | |||||
tva $abbrev | tva $abbrev | ||||
uk $abbrev | uk $abbrev | ||||
ups ypeEs | ups ypeEs | ||||
utc $abbrev | utc $abbrev | ||||
utf $abbrev | utf $abbrev | ||||
u.s y:Es | u.s y:Es | ||||
virgin virZin | |||||
vip v,i||,aj||p'i | vip v,i||,aj||p'i | ||||
(web visum) webvisum $text | (web visum) webvisum $text | ||||
windows windo3z | |||||
wma $abbrev | wma $abbrev | ||||
xfce iksEfse@ | xfce iksEfse@ | ||||
xy $abbrev | xy $abbrev | ||||
pr professeur $text *dot $capital | pr professeur $text *dot $capital | ||||
// articles | // articles | ||||
le $nounf $u+ | le $nounf $u+ | ||||
le $verb $verbextend $u | le $verb $verbextend $u | ||||
// conjonctions | // conjonctions | ||||
mais $u+ | mais $u+ | ||||
ou _|u $u | |||||
ou u $u $brk | |||||
eh $u $brk | eh $u $brk | ||||
et _|e $u | |||||
en $u | |||||
et e $u $brk | |||||
ni $u | ni $u | ||||
car $u | car $u | ||||
car $noun | car $noun | ||||
cependant | |||||
néanmoins $u+ | néanmoins $u+ | ||||
toutefois $u+ | toutefois $u+ | ||||
afin afE~ $u+ $brk | |||||
avant $u+ | avant $u+ | ||||
après $u+ | après $u+ | ||||
(temps en temps) tA~zA~tA~ | (temps en temps) tA~zA~tA~ | ||||
certes $u+ | certes $u+ | ||||
dont dO~t2 $u | dont dO~t2 $u | ||||
lorsque lO2rsk@ $u+ | |||||
puisque pw^isk@ $u+ | |||||
presque $u+ | |||||
lorsque lOrsk=@ $u+ | |||||
puisque pw^isk=@ $u+ | |||||
presque prEsk=@ $u+ | |||||
que $u+ | que $u+ | ||||
(parce que) parsk@ $u+ | (parce que) parsk@ $u+ | ||||
(parce qu'il) parskil $u+ | (parce qu'il) parskil $u+ | ||||
tu $u+ $verbf | tu $u+ $verbf | ||||
il $u+ $verbf | il $u+ $verbf | ||||
elle $u+ $verbf | elle $u+ $verbf | ||||
y $u $verbf | |||||
y $u+ $verbf | |||||
nous $u+ $verbf | nous $u+ $verbf | ||||
vous $u+ $verbf | vous $u+ $verbf | ||||
elles $u+ $verbf | elles $u+ $verbf | ||||
chaque $u+ | chaque $u+ | ||||
plusieurs $u+ | plusieurs $u+ | ||||
durant $u+ | durant $u+ | ||||
avec $u+ | |||||
avec $u+ $brk | |||||
sans $u+ | sans $u+ | ||||
trop trop2 $u+ | trop trop2 $u+ | ||||
assez $u+ | assez $u+ | ||||
beaucoup bokup2 $u+ | beaucoup bokup2 $u+ | ||||
peu $u+ | peu $u+ | ||||
très $u+ | |||||
près $u+ | |||||
très trEz2 $u+ | |||||
près prEz2 $u+ | |||||
loin $u+ | loin $u+ | ||||
// negative | // negative | ||||
// auxillary verbs (be, have, can, etc) | // auxillary verbs (be, have, can, etc) | ||||
suis $u+ $verb | suis $u+ $verb | ||||
es Ez2 $u+ | |||||
est Et2 $u+ | |||||
es E2z2 $u+ | |||||
est E2t2 $u+ | |||||
sommes $u+ $verb | sommes $u+ $verb | ||||
êtes $u+ $verb | êtes $u+ $verb | ||||
sont $u+ $verb | sont $u+ $verb | ||||
soit $u+ | soit $u+ | ||||
ai $u+ $verb | ai $u+ $verb | ||||
(ai je) EZ=@- $u+ | |||||
(ai je) E2Z $u+ | |||||
as as | as as | ||||
as az2 $u+ $verb | as az2 $u+ $verb | ||||
(as tu) aty | (as tu) aty | ||||
quel $u+ | quel $u+ | ||||
quelle $u+ | quelle $u+ | ||||
quelles $u+ | quelles $u+ | ||||
quelque $u+ | |||||
quelques $u+ | |||||
quelque kElk=@ $u+ | |||||
quelques kElk=@z2 $u+ | |||||
tel $u+ | tel $u+ | ||||
telle $u+ | telle $u+ | ||||
telles $u+ | telles $u+ | ||||
toute t'ut $u+ | toute t'ut $u+ | ||||
toutes t'utz2 $u+ | toutes t'utz2 $u+ | ||||
tous $u+ | tous $u+ | ||||
rien ri-'E~n2 $u+ | |||||
rien Ri-'E~n2 $u+ | |||||
// Letters which can be words | // Letters which can be words | ||||
//=========================== | //=========================== | ||||
hareng _!arA~ | hareng _!arA~ | ||||
pastis pastis | pastis pastis | ||||
poing pwE~ | poing pwE~ | ||||
ressent r@s'A~t2 | |||||
riz ri | |||||
ressent R@s'A~t2 | |||||
riz Ri | |||||
sphincter sfE~ktEr | sphincter sfE~ktEr | ||||
sous $u+ | sous $u+ | ||||
sur $u+ | sur $u+ | ||||
(1 ers) pr@mjez2 | (1 ers) pr@mjez2 | ||||
(1 ère) pr@mjEr | (1 ère) pr@mjEr | ||||
(1 ères) pr@mjErz2 | (1 ères) pr@mjErz2 | ||||
(1 èrement) pr@mjEr@-mA~ | |||||
(1 èrement) pr@mjErmA~ | |||||
monsieur m@sjY | monsieur m@sjY | ||||
messieurs mesjYz2 | messieurs mesjYz2 | ||||
montréal mO~real | montréal mO~real | ||||
(n'est ce pas) n'Es@-||p'az2 | |||||
(n'est ce pas) n'Es||p'az2 | |||||
(qu'est ce que) kEsk@ $u | (qu'est ce que) kEsk@ $u | ||||
absent absA~ | absent absA~ | ||||
adam adA~ | adam adA~ | ||||
airbus airbuss $text | airbus airbuss $text | ||||
alan alan | alan alan | ||||
albinos albinoss $text | albinos albinoss $text | ||||
alleluia alelui'a | |||||
anis anis | |||||
arte arte | arte arte | ||||
auvent ovA~ | auvent ovA~ | ||||
beta beta | beta beta | ||||
bien bi-E~n2 $u+ | bien bi-E~n2 $u+ | ||||
bis bis | bis bis | ||||
bissus bisys | bissus bisys | ||||
blues _^_en | |||||
broglie breuil $text | |||||
buffer bWfWr | buffer bWfWr | ||||
bus bys | bus bys | ||||
bus by $verb | bus by $verb | ||||
choeur kWr | choeur kWr | ||||
cocus koky | cocus koky | ||||
couscous kuskus | couscous kuskus | ||||
delete _^_en | |||||
dernier dErnjer2 | dernier dErnjer2 | ||||
éloquent ElokA~t2 | |||||
éloquent elokA~t2 | |||||
enfer A~fEr | enfer A~fEr | ||||
faut fot2 $u+ | faut fot2 $u+ | ||||
fier fjer $verb | fier fjer $verb | ||||
francis franciss $text | |||||
fred frEd | fred frEd | ||||
free fri: | free fri: | ||||
fuel fjul | fuel fjul | ||||
gangster gA~gstEr | |||||
gars ga | gars ga | ||||
gin dZin | gin dZin | ||||
granit granitt $text | |||||
gulf gWlf | gulf gWlf | ||||
gus gys | |||||
gym Zim | gym Zim | ||||
hélas elas $u+ | hélas elas $u+ | ||||
iris iris | |||||
karaoke karaoke | |||||
laser lazEr | laser lazEr | ||||
listbox listbO2ks | |||||
malus malys | malus malys | ||||
mai mE2 | |||||
mailto mEjltu_ | mailto mEjltu_ | ||||
mapper _^_en | mapper _^_en | ||||
mars mars | mars mars | ||||
mrs _^_en | mrs _^_en | ||||
ours urs | ours urs | ||||
pataquès patakEs | pataquès patakEs | ||||
peter pi:tWr | |||||
phallus falys | phallus falys | ||||
polder pOldEr | polder pOldEr | ||||
premier pr@mjer2 | premier pr@mjer2 | ||||
program _^_en | program _^_en | ||||
(program files) program||fajlz | (program files) program||fajlz | ||||
query kueri | |||||
queries kueri | |||||
quit _^_en | quit _^_en | ||||
recorder ricordeur $text | recorder ricordeur $text | ||||
requiem rekw^ijEm | |||||
revolver RevOlvEr | |||||
scan skan | |||||
scanner skaner2 $verb | scanner skaner2 $verb | ||||
scanner skanWr $noun | scanner skanWr $noun | ||||
scanners skanWr | scanners skanWr | ||||
shampoing SA~pwE~ | shampoing SA~pwE~ | ||||
sir _^_EN | sir _^_EN | ||||
souris suri | souris suri | ||||
stocker stoker2 | |||||
sus sys | sus sys | ||||
sus sy $verb | sus sy $verb | ||||
to _^_en | to _^_en | ||||
mazout mazut | mazout mazut | ||||
michael mikaEl | michael mikaEl | ||||
out aut | out aut | ||||
rut ryt | |||||
rut Ryt | |||||
scorbut scorbutt $text | scorbut scorbutt $text | ||||
scout skut | scout skut | ||||
stout staut | stout staut | ||||
// et (t is said) | // et (t is said) | ||||
exocet EgzOsEt | |||||
exocet E2gzOsEt | |||||
fret fr'Et | fret fr'Et | ||||
budget bydZE | |||||
budget bydZE2 | |||||
hamlet hamlEt | hamlet hamlEt | ||||
knesset knEsEt | |||||
lazaret lazarE | |||||
knesset knesEt | |||||
lazaret lazarE2 | |||||
margaret margarEt | margaret margarEt | ||||
net nEt | net nEt | ||||
offset OfsEt | offset OfsEt | ||||
set sEt | set sEt | ||||
soviet sOviEt | |||||
soviet soviEt | |||||
stewart sti:wart | stewart sti:wart | ||||
// urt (t is said) | // urt (t is said) | ||||
kurt kurt | kurt kurt | ||||
yaourt iaurt | |||||
yoghourt iogurt | |||||
yogourt iogurt | |||||
yaourt _!i-aurt | |||||
yoghourt _!i-ogurt | |||||
yogourt _!i-ogurt | |||||
// ort (t said) | // ort (t said) | ||||
short SOrt | short SOrt | ||||
smart smart | smart smart | ||||
// irt | // irt | ||||
(sweat shirt) swEtSW2rt | |||||
(sweat shirts) swEtSW2rt | |||||
(tee shirt) t,i:S'W2rt | |||||
(tee shirts) t,i:S'W2rt | |||||
(t shirt) t,i:S'W2rt | |||||
(t shirts) t,i:S'W2rt | |||||
(sweat shirt) swEtSWrt | |||||
(sweat shirts) swEtSWrt | |||||
(tee shirt) t,i:S'Wrt | |||||
(tee shirts) t,i:S'Wrt | |||||
(t shirt) t,i:S'Wrt | |||||
(t shirts) t,i:S'Wrt | |||||
// words from other languages | // words from other languages | ||||
(cyber link) _^_en | (cyber link) _^_en | ||||
debian debjan | debian debjan | ||||
edit _^_en | edit _^_en | ||||
emacs Emaks | |||||
emacspeak Emakspi:k | |||||
emacs E2maks | |||||
emacspeak E2makspi:k | |||||
end _^_en | end _^_en | ||||
epson EpsOn | |||||
epson E2psOn | |||||
espeak @spi:k | espeak @spi:k | ||||
ethernet etErnEt | ethernet etErnEt | ||||
exit egzit | exit egzit | ||||
hot _^_en | hot _^_en | ||||
in in $u+ | in in $u+ | ||||
inside _^_en | inside _^_en | ||||
(internet explorer) E~tErn'Et||EksplOr'Wr | |||||
(internet explorer) E~tErn'Et||E2ksplOr'Wr | |||||
klaxon klaksOn | klaxon klaksOn | ||||
let _^_en | let _^_en | ||||
lite _^_en | lite _^_en | ||||
paint _^_en | paint _^_en | ||||
paper _^_en | paper _^_en | ||||
people _^_en | people _^_en | ||||
redhat rEdat | |||||
redhat REdat | |||||
same _^_en | same _^_en | ||||
sametime _^_en | sametime _^_en | ||||
schubert SubEr | schubert SubEr | ||||
bahamas baamas | bahamas baamas | ||||
bangladesh bA~gladES | bangladesh bA~gladES | ||||
bélarus belarys | bélarus belarys | ||||
belize beliz | |||||
bissau bisa'o | |||||
(burkina faso) byrkina||faso | (burkina faso) byrkina||faso | ||||
burundi burundi | burundi burundi | ||||
croatie kroasi | croatie kroasi | ||||
esperanto EsperA~to | |||||
esperanto E2sperA~to | |||||
groenland groEnlA~d | groenland groEnlA~d | ||||
guatemala gwAtemala | guatemala gwAtemala | ||||
honduras _!O~dyras | honduras _!O~dyras | ||||
liechtenstein liStEnStajn | liechtenstein liStEnStajn | ||||
malawi malaui | malawi malaui | ||||
mayotte majO2t | mayotte majO2t | ||||
nevis nevis | |||||
niger niZEr | niger niZEr | ||||
oman oman | oman oman | ||||
palaos palaO2s | palaos palaO2s | ||||
samoa samoa | samoa samoa | ||||
swaziland swAzilA~d | |||||
leone leO2n | leone leO2n | ||||
koweït kowEjt | koweït kowEjt | ||||
taïwan tajwAn | taïwan tajwAn | ||||
texas tEks'as | |||||
texas tE2ks'as | |||||
tuvalu tuvalu | |||||
vanuatu vanuatu | |||||
venezuela venezyela | venezuela venezyela | ||||
(viêt nam) viEtnam | |||||
(viêt nam) vi-Etnam | |||||
wallis wAlis | wallis wAlis | ||||
futuna futuna | futuna futuna | ||||
zimbabwe zimbabwe | zimbabwe zimbabwe | ||||
// 2006-11-18 Gilles Casse <[email protected]> | // 2006-11-18 Gilles Casse <[email protected]> | ||||
// | // | ||||
// Updated: 2009-07-31 Michel Such <[email protected]> | |||||
// Updated: 2009-09-25 Michel Such <[email protected]> | |||||
// | // | ||||
// Letter classes: | // Letter classes: | ||||
.L03 d l m n s t v | .L03 d l m n s t v | ||||
.L04 c d f g l m n v | .L04 c d f g l m n v | ||||
.L05 g h k l m v w | .L05 g h k l m v w | ||||
.L06 l r s | |||||
.group a | .group a | ||||
aî E // maître | aî E // maître | ||||
aim (K W~ // faim | aim (K W~ // faim | ||||
ain (K E~ // pain | ain (K E~ // pain | ||||
CC) ain (_ E~n2 // prochain arret | |||||
Ct) ain (_ E~n2 // certain ami | |||||
ch) ain (_ E~n2 // prochain arret | |||||
ai (_ e // dirai ferai... | ai (_ e // dirai ferai... | ||||
_ess) ai (_ E // essai | |||||
_vr) ai (_ E // vrai | |||||
ais (_ Ez2 // dirais ferais... | |||||
ait (_ Et2 // dirait ferait... | |||||
aient (_ Et2 // diraient feraient... | |||||
_ess) ai (_ E2 // essai | |||||
_vr) ai (_ E2 // vrai | |||||
ai (b E // faible | |||||
ais (_ E2z2 // dirais ferais... | |||||
ait (_ E2t2 // dirait ferait... | |||||
aient (_ E2t2 // diraient feraient... | |||||
f) ai (sA @ // faisons faisan | f) ai (sA @ // faisons faisan | ||||
a (ill a | a (ill a | ||||
a (ils_ a | a (ils_ a | ||||
a (il_ a | a (il_ a | ||||
aie (me E // paiement | |||||
ai E // aile | |||||
aie (me E2 // paiement | |||||
ai E2 // aile | |||||
ai (L06 E // aile | |||||
ai (CAX E // aile | |||||
am (b A~ // jambon | am (b A~ // jambon | ||||
am (p A~ // camp | am (p A~ // camp | ||||
am (m a // programmation | am (m a // programmation | ||||
a (nnA a // manne | a (nnA a // manne | ||||
an (K A~ // ancien, élan | an (K A~ // ancien, élan | ||||
@@m) an (_ an // tennisman | @@m) an (_ an // tennisman | ||||
zm) an (_ an // jazzman | |||||
L02m) an (_ an | L02m) an (_ an | ||||
lism) an (_ A~ // talisman | lism) an (_ A~ // talisman | ||||
ulm) an (_ A~ // musulman | ulm) an (_ A~ // musulman | ||||
ïm) an (_ A~ // caïman | |||||
_C) aon (_ A~ // faon, paon, taon | _C) aon (_ A~ // faon, paon, taon | ||||
s) aoul (_ u // saoul | s) aoul (_ u // saoul | ||||
s) aou (le u // saoule | s) aou (le u // saoule | ||||
août ut // août | août ut // août | ||||
août (i aus // aoûtien | août (i aus // aoûtien | ||||
aut (_ ot2 | aut (_ ot2 | ||||
a (ô // saune | |||||
au o // autruche | au o // autruche | ||||
au (l_ O // Paul | au (l_ O // Paul | ||||
au (re O // dinosaure | au (re O // dinosaure | ||||
au (r_ O | |||||
_) audio (@P5 odio | _) audio (@P5 odio | ||||
_) auto (@P4 oto | _) auto (@P4 oto | ||||
_) autom (n otO | _) autom (n otO | ||||
_) au (treX o2 | _) au (treX o2 | ||||
bb) aye (X ei // abbaye | bb) aye (X ei // abbaye | ||||
p) a (ys E // pays paysage | |||||
ay (C E // aymé | ay (C E // aymé | ||||
ay Ej // paye | ay Ej // paye | ||||
ay (_ E // display | |||||
Xl) ayer (X EjWr // player, layer | |||||
ay (_ E2 // display | |||||
p) a (ys E2 // pays paysage | |||||
Xl) ayer (X E2jWr // player, layer | |||||
w) an (_ an | |||||
a a // bateau | a a // bateau | ||||
// group a: English section | // group a: English section | ||||
_) ch (arism k // charisme, charismatique | _) ch (arism k // charisme, charismatique | ||||
_) ch (irop k // chiroptère | _) ch (irop k // chiroptère | ||||
a) ch (_ k // almanach | a) ch (_ k // almanach | ||||
ar) c (ti // arctique | |||||
e) ch (_ k // varech | e) ch (_ k // varech | ||||
_A) ch (o_ k // écho | _A) ch (o_ k // écho | ||||
mani) ch (é k // manichéisme | mani) ch (é k // manichéisme | ||||
x) c (Y | x) c (Y | ||||
c (Y s // cède | c (Y s // cède | ||||
_) cyber (P5 sibEr | _) cyber (P5 sibEr | ||||
ban) c (_ // banc | |||||
blan) c (_ // blan | |||||
Can) c (_ // banc | |||||
Con) c (_ // tronc, jonc | Con) c (_ // tronc, jonc | ||||
_don) c (_ k // donc | _don) c (_ k // donc | ||||
cler) c (_ // leclerc | cler) c (_ // leclerc | ||||
// group c: English section | // group c: English section | ||||
n) ch (_ _^_en // french | n) ch (_ _^_en // french | ||||
ch (ment _^_en // attachment | |||||
cut (_ _^_en // cut, shortcut | cut (_ _^_en // cut, shortcut | ||||
// Define use of the final 'e' in french | // Define use of the final 'e' in french | ||||
e (_ | e (_ | ||||
elqu) e =@ | |||||
uisqu) e =@ | |||||
rsqu) e =@ | |||||
_C) e (_ @2 // je te | _C) e (_ @2 // je te | ||||
-c) e (_ @- | |||||
-j) e (_ @- | |||||
C) e (- @- | |||||
-c) e (_ | |||||
-j) e (_ | |||||
C) e (- | |||||
e (Ce_ E | e (Ce_ E | ||||
eau o // bateau cheveaux | eau o // bateau cheveaux | ||||
g) ea (s_ a // mangeas | g) ea (s_ a // mangeas | ||||
gh) e (tAX e // spagheti | gh) e (tAX e // spagheti | ||||
j) e (a // Jean Jeanne | j) e (a // Jean Jeanne | ||||
p) ect (_ E // suspect | |||||
p) ect (_ E2 // suspect | |||||
ect (_ Ekt // direct | ect (_ Ekt // direct | ||||
pi) ed (_ e // pied | pi) ed (_ e // pied | ||||
_cl) ef (_ e // clef | _cl) ef (_ e // clef | ||||
_cr) e (at e | |||||
_) ein (K En // peindre | _) ein (K En // peindre | ||||
ein (K E~ // peindre | ein (K E~ // peindre | ||||
CC) ein (_ E~n2 // plein emploi | |||||
pl) ein (_ E~n2 // plein emploi | |||||
e (il E // vieille | e (il E // vieille | ||||
ei E // neige | ei E // neige | ||||
eoi wA // asseoir | eoi wA // asseoir | ||||
_f) em (me a // femme | _f) em (me a // femme | ||||
i) e (mA // remerciement, d�ploiement | i) e (mA // remerciement, d�ploiement | ||||
A) e (rA // remerciera | A) e (rA // remerciera | ||||
gu) e (rA @ | |||||
qu) e (rA @ | |||||
v) e (lop @- | |||||
tch) e (rX W | tch) e (rX W | ||||
@) em (me a // patiemment | @) em (me a // patiemment | ||||
em (b A~ // décembre | em (b A~ // décembre | ||||
em (mACC A~ // emmancher | em (mACC A~ // emmancher | ||||
em (mACAC A~ // emmagasiner | em (mACAC A~ // emmagasiner | ||||
em (ma e // emmanuel | |||||
em (ma E2 // emmanuel | |||||
em (mai A~ // emmailloter | em (mai A~ // emmailloter | ||||
l) em (n a // solemnel | l) em (n a // solemnel | ||||
il) emn Em // dilemne | il) emn Em // dilemne | ||||
Xig) ent (_ t2 // figent, pigent | Xig) ent (_ t2 // figent, pigent | ||||
oblig) en (t_ A~ // obligent, d�sobligent | oblig) en (t_ A~ // obligent, d�sobligent | ||||
Voblig) ent (_ t2 // obligent (verbe) | Voblig) ent (_ t2 // obligent (verbe) | ||||
orrig) ent (_ t2 // corrigent | |||||
tang) en (t_ A~ // tangent | tang) en (t_ A~ // tangent | ||||
man) en (t_ A~ // permanent | man) en (t_ A~ // permanent | ||||
dg) et (_ Et // Bridget, gadget | dg) et (_ Et // Bridget, gadget | ||||
k) et (_ Et | k) et (_ Et | ||||
tick) et (_ E | |||||
tick) et (_ E2 | |||||
m) et (_ Et2 | m) et (_ Et2 | ||||
eu Y // eu | eu Y // eu | ||||
eu (h_ Y | eu (h_ Y | ||||
eu (x_ Y | eu (x_ Y | ||||
eu (i W | eu (i W | ||||
eu (rC W2 | |||||
_l) eu (r_ W2 | |||||
eu (tr Y | |||||
eu (rC W | |||||
_l) eu (r_ W | |||||
_) eut (_ yt2 | _) eut (_ yt2 | ||||
eut (_ Yt2 | eut (_ Yt2 | ||||
_) extra (uP5 Ekstra | |||||
_) extra (CP5 Ekstra | |||||
_) extra (uP5 E2kstra | |||||
_) extra (CP5 E2kstra | |||||
_) eû y // eût | _) eû y // eût | ||||
eû Y: // jeûne | eû Y: // jeûne | ||||
e (x E // exact | |||||
ey (_ E // dahomey | |||||
ey (C E // ceylan | |||||
ey (_ E2 // dahomey | |||||
ey (C E2 // ceylan | |||||
ey Ej // asseye | ey Ej // asseye | ||||
ez (_ ez2 // nez mangez chez | ez (_ ez2 // nez mangez chez | ||||
_r) e (ch @ // recherche | _r) e (ch @ // recherche | ||||
e (Cl @ | e (Cl @ | ||||
_l) e (xA E | |||||
_l) e (xA E2 | |||||
_m) e (xA E2 | |||||
_l) e (CA @ | _l) e (CA @ | ||||
_l) e (ChA @ | _l) e (ChA @ | ||||
_l) e (ClA @ // Leclerc | _l) e (ClA @ // Leclerc | ||||
e (Cr @ | e (Cr @ | ||||
_) e (C% e // effet, effectuer | _) e (C% e // effet, effectuer | ||||
e (C_ E | e (C_ E | ||||
e (t_ E | |||||
e (t_ E2 | |||||
e (rC E | e (rC E | ||||
es (_ z2 | es (_ z2 | ||||
%C) e (Ca @- | |||||
// %C) e (Ce // actuellement guillemets | |||||
%C) e (xA E | |||||
%C) e (mA // actuellement guillemets | |||||
ct) e (ment @ | |||||
nC) e (ment @- | |||||
rC) e (ment @ | |||||
AC) e (rie_ @- | |||||
AC) e (ries_ @- | |||||
AcC) e (rie_ @- | |||||
AcC) e (ries_ @- | |||||
%C) e (rie_ @- | |||||
%C) e (ries_ @- | |||||
AC) e (ment | |||||
u) e (ment @- | |||||
ul) e (CA | |||||
ull) e (CA | |||||
As) e (gA | |||||
As) e (pA | |||||
Av) e (gA // sauvegarde | |||||
Av) e (pA | |||||
%C) e (xA E2 | |||||
@gu) e (CA | |||||
@gu) er (A r | |||||
@qu) e (CA | |||||
@qu) er (A r | |||||
_qu) e (CA @ | |||||
@L06gu) e (CA @ | |||||
@L06qu) e (CA @ | |||||
@C) e (CA | |||||
@C) er (A r | |||||
@C) e (rion++ @ | |||||
@C) e (riez++ @ | |||||
@ch) e (CA | |||||
@ch) er (A r | |||||
L06ch) e (CA @ | |||||
@L06C) e (CA @ | |||||
@CL06) e (CA @ | |||||
@bC) e (CA @ | |||||
@ct) e (CA @ | |||||
%C) e (CA++ | |||||
%C) er (A++ r | |||||
@C) e (xA++ E2 | |||||
@c) e (v++ @ | |||||
@d) e (v++ @ | |||||
@C) e (CrA | |||||
@ch) e (CrA | |||||
@L06ch) e (CrA @ | |||||
@L06C) e (CrA @ | |||||
@CL06) e (CrA @ | |||||
%C) e (CrA++ | |||||
e (rr+++ E | |||||
e @ // menue | e @ // menue | ||||
_) e (CA e | _) e (CA e | ||||
_) e (xA E | |||||
_) e (xC++ E2 | |||||
Cr) eam i:m | Cr) eam i:m | ||||
Cr) eamer i:mWr | Cr) eamer i:mWr | ||||
Cl) eaner i:nWr | Cl) eaner i:nWr | ||||
eïn (_ 'Ein | eïn (_ 'Ein | ||||
_y) en (_ En | _y) en (_ En | ||||
iew) er (X er2 | iew) er (X er2 | ||||
_m) e (ga e | |||||
// group e: English section | // group e: English section | ||||
Z) ème i-Em | Z) ème i-Em | ||||
è E | è E | ||||
Ar) ès (_ Es | |||||
m) ès (_ Es | |||||
n) ès (_ Es | |||||
p) ès (_ Es | |||||
.group ë | .group ë | ||||
gt (_ // vingt doigts | gt (_ // vingt doigts | ||||
gt t // vingtaine doigté | gt t // vingtaine doigté | ||||
gui gi // anguille | |||||
gu (i g // anguille | |||||
ai) gui (l gw^i // aiguillage | ai) gui (l gw^i // aiguillage | ||||
in) gui (s gw^i // linguiste | in) gui (s gw^i // linguiste | ||||
g (C g | g (C g | ||||
_ran) g (_ // rang | _ran) g (_ // rang | ||||
_san) g (_ // sang | _san) g (_ // sang | ||||
tan) g (_ // sang | |||||
étan) g (_ // étang | |||||
_lon) g (_ // long | _lon) g (_ // long | ||||
bour) g (_ // Strasbourg | bour) g (_ // Strasbourg | ||||
ot) ien (t_ i-A~ // quotient | ot) ien (t_ i-A~ // quotient | ||||
i (e_ i | i (e_ i | ||||
_) ill ill // illégal | |||||
_) ill il // illégal | |||||
ill (_ il // Bill | |||||
_C) ill (y_ il // Billy | |||||
aigu) ill ij // aiguille | aigu) ill ij // aiguille | ||||
anqu) ill il // tranquille | anqu) ill il // tranquille | ||||
c) ill (i il | c) ill (i il | ||||
_) intra (neP5 E~tra | _) intra (neP5 E~tra | ||||
_) intra (uP5 E~tra | _) intra (uP5 E~tra | ||||
C) is (_ i | C) is (_ i | ||||
Kir) is (_ is | |||||
bor) is (_ is | bor) is (_ is | ||||
dor) is (_ is | dor) is (_ is | ||||
tor) is (_ is | tor) is (_ is | ||||
fl) irt W2rt | |||||
fl) irt Wrt | |||||
otl) i (neX aj | otl) i (neX aj | ||||
onl) i (ne_ aj | onl) i (ne_ aj | ||||
offl) i (ne_ aj | offl) i (ne_ aj | ||||
dr) i (ve aj | |||||
pr) int (_ int | |||||
// group i: English section | // group i: English section | ||||
ibuter (X _^_en | ibuter (X _^_en | ||||
iev _^_en | iev _^_en | ||||
ife (_ _^_en | ife (_ _^_en | ||||
igh _^_en | igh _^_en | ||||
iven (_ _^_en | |||||
ind (X _^_en // find, mind | ind (X _^_en // find, mind | ||||
_C) ind (erX _^_en // finder | _C) ind (erX _^_en // finder | ||||
AC) ind (erX _^_en // reminder | AC) ind (erX _^_en // reminder | ||||
ize (X _^_en // realize | ize (X _^_en // realize | ||||
dr) i (veX _^_en | |||||
_bAl) i (ze i | |||||
ram_f) i (le _^_en | ram_f) i (le _^_en | ||||
.group ï | .group ï | ||||
ïn (C E~ // coïncider | ïn (C E~ // coïncider | ||||
ïn (_ E~ | ïn (_ E~ | ||||
ïs is // maïs, archaïsme | |||||
ïs (K is // maïs, archaïsme | |||||
ï (q i // archaïque | ï (q i // archaïque | ||||
ï (c i // laïc | ï (c i // laïc | ||||
a) ï j // aïeul | |||||
a) ï (A j // aïeul | |||||
a) ï (C i // naïf | |||||
tha) ï (K j // thaï | |||||
_ha) ï (K i // haïr | |||||
ï i // ambiguïté | ï i // ambiguïté | ||||
.group j | .group j | ||||
j Z // adjoint joujoux | j Z // adjoint joujoux | ||||
_) j' (P2v Z | _) j' (P2v Z | ||||
_) j (azz dZ | |||||
_) jazz dZaz | |||||
_) j (obK dZ | _) j (obK dZ | ||||
_) j (ohK dZ | _) j (ohK dZ | ||||
_) jusqu' (P6 Zysk | _) jusqu' (P6 Zysk | ||||
// group m: English section | // group m: English section | ||||
_) mail (_ _^_en // mailer | _) mail (_ _^_en // mailer | ||||
mov (A _^_en // move, movy | |||||
mov (ieX _^_en // move, movy | |||||
.group n | .group n | ||||
C) o (d_ O2 | C) o (d_ O2 | ||||
oe (ll wA // moelleux | oe (ll wA // moelleux | ||||
oe (i W2 // oeil | |||||
oe (i W // oeil | |||||
_) oe (C Y // oesophage | _) oe (C Y // oesophage | ||||
_ph) oe (C e // phoetus | _ph) oe (C e // phoetus | ||||
oeu W // soeur coeur | oeu W // soeur coeur | ||||
_) one _^_en | _) one _^_en | ||||
oun (C _^_en // bounce, found | oun (C _^_en // bounce, found | ||||
_) over _^_en // over | _) over _^_en // over | ||||
ow (K _^_en // cow, town, down | |||||
ow (e _^_en // flower, power | ow (e _^_en // flower, power | ||||
ow (X _^_en | |||||
oy (X _^_en // boy, toy | oy (X _^_en // boy, toy | ||||
m) ps (_ // temps champs | m) ps (_ // temps champs | ||||
r) ps (_ // corps | r) ps (_ // corps | ||||
cham) p (_ // contrechamp | |||||
cham) p (_ // champ | |||||
cam) p (_ // camp | cam) p (_ // camp | ||||
se) pt (_ t // sept | se) pt (_ t // sept | ||||
se) pt (iè t // septième | se) pt (iè t // septième | ||||
scul) p (t // sculpture | |||||
_) puisqu' (P7 pw^isk | _) puisqu' (P7 pw^isk | ||||
// group p: English section | // group p: English section | ||||
pad (_ _^_en | pad (_ _^_en | ||||
plug _^_en // plug | plug _^_en // plug | ||||
print (_ _^_en // print | |||||
printer (_ _^_en // printer | printer (_ _^_en // printer | ||||
.group r | .group r | ||||
_) r (A R | |||||
_su) rr rr // surréaliste | _su) rr rr // surréaliste | ||||
cou) rr rr // courrai | cou) rr rr // courrai | ||||
cou) rr (i r // courrier | |||||
mou) rr rr // mourrai | mou) rr rr // mourrai | ||||
cou) rr (i r // courrier | |||||
r r // rien | r r // rien | ||||
rr r | rr r | ||||
_) radio (@P5 radio | |||||
_) radio (@P5 Radio | |||||
// group r: English section | // group r: English section | ||||
_) real _^_en | _) real _^_en | ||||
scien (t si-A~ // conscient scientifique | scien (t si-A~ // conscient scientifique | ||||
sql (_S3 EskyEl | sql (_S3 EskyEl | ||||
_u) s (_ s | _u) s (_ s | ||||
Cu) s (_ | Cu) s (_ | ||||
Abu) s (_ s | Abu) s (_ s | ||||
_) t' (P2v t | _) t' (P2v t | ||||
Vn) t (_ t2 | Vn) t (_ t2 | ||||
A) t (- t2 | A) t (- t2 | ||||
VCi) t (_ t2 | |||||
t (_ | t (_ | ||||
peti) t (_ t2 | peti) t (_ t2 | ||||
_) th t // thon | _) th t // thon | ||||
u y // cruel nuage brut | u y // cruel nuage brut | ||||
ui w^i // nuit, fuite | ui w^i // nuit, fuite | ||||
uin (K yE~ // juin | uin (K yE~ // juin | ||||
_s) u (rfX W | |||||
_s) u (rfeX W | |||||
uy (A w^ij | uy (A w^ij | ||||
C) ucci utSi // capuccino | C) ucci utSi // capuccino | ||||
C) u (bX W // hub, club | C) u (bX W // hub, club | ||||
C) u (gX W // bug, mug | C) u (gX W // bug, mug | ||||
_n) u (rse W2 // nurse | |||||
_n) u (rse W // nurse | |||||
r) u (nX W // run, autorun | r) u (nX W // run, autorun | ||||
um (_ Om // album | um (_ Om // album | ||||
f) um (_ W~ // parfum | f) um (_ W~ // parfum | ||||
g) u (A // fatigue | g) u (A // fatigue | ||||
g) u (ï y // ambiguïté | g) u (ï y // ambiguïté | ||||
g) u (ë y // ambiguë | g) u (ë y // ambiguë | ||||
uz (z W | |||||
// group u: English section | // group u: English section | ||||
_b) usi _^_en // business, businessman | _b) usi _^_en // business, businessman | ||||
.group v | .group v | ||||
v v | v v | ||||
vers (_ vErz2 | vers (_ vErz2 | ||||
Xri) ver (X vWr | |||||
_) view (X vju | _) view (X vju | ||||
_) view (A vjuv | _) view (A vjuv | ||||
.group w | .group w | ||||
w w | w w | ||||
w (agon v // wagon | w (agon v // wagon | ||||
_r) w (an u // Rwanda | |||||
wa (ve_ wE:j // wave | |||||
wa (re_ wE: // hardware software | |||||
// group w: English section | // group w: English section | ||||
e) w (K _^_en | e) w (K _^_en | ||||
wa (Ce_ _^_en // hardware software wave | |||||
_) wan _^_en | _) wan _^_en | ||||
wr _^_en // write | wr _^_en // write | ||||
way _^_en // way, away | way _^_en // way, away | ||||
zz dz | zz dz | ||||
t) z s // tzigane | t) z s // tzigane | ||||
C) zer (_ zEr | C) zer (_ zEr | ||||
C) zer (_ zWr | |||||
.group | .group | ||||
// Conditional rules: | // Conditional rules: | ||||
// ?1 speak "i" as Roman number | // ?1 speak "i" as Roman number | ||||
?1 elso: | |||||
// Numbers | // Numbers | ||||
_0 nullA | _0 nullA | ||||
_8X n^oltsvAn | _8X n^oltsvAn | ||||
_9X kilEntsvEn | _9X kilEntsvEn | ||||
_0C sa:z | _0C sa:z | ||||
_1C sa:z | |||||
_0M1 EzER2 | _0M1 EzER2 | ||||
_1M1 EzER2 | _1M1 EzER2 | ||||
_1M2 millio: | _1M2 millio: | ||||
_2M2 ke:tmillio: | _2M2 ke:tmillio: | ||||
_0M3 millia:R2d | _0M3 millia:R2d | ||||
_1M3 millia:R2d | |||||
_1M3 ke:tmillia:R2d | |||||
_1M3 EJmillia:R2d | |||||
_2M3 ke:tmillia:R2d | |||||
_0M4 billio: | _0M4 billio: | ||||
_1M4 billio: | _1M4 billio: | ||||
_2M4 ke:tbillio: | _2M4 ke:tbillio: | ||||
_dpt ||_v,Ess2Y:_ | |||||
_dpt ||_!'Ege:s | |||||
_0Z1 tizAd // tenths | |||||
_0Z1 tizEd // tenths | |||||
_0Z2 sa:zAd // hundredths | _0Z2 sa:zAd // hundredths | ||||
_0Z3 EzR2Ed | _0Z3 EzR2Ed | ||||
_0Z4 ti:zEzR2Ed | _0Z4 ti:zEzR2Ed | ||||
// ordinal numbers | // ordinal numbers | ||||
_ord Edik | _ord Edik | ||||
_1o ElSY: | |||||
_2o ma:Sodik | |||||
_1ox ElSY: // number = '1' only | |||||
_2ox ma:Sodik // number = '2' only | |||||
_1o EJ:Edik | |||||
_2o kEt:Edik | |||||
_3o hAR2_mAdik | _3o hAR2_mAdik | ||||
_4o nEJEdik | _4o nEJEdik | ||||
_5o YtYdik | _5o YtYdik | ||||
_8o n^oltsAdik | _8o n^oltsAdik | ||||
_9o kilEntsEdik | _9o kilEntsEdik | ||||
_10o tizEdik | _10o tizEdik | ||||
_12o tizENkEt:Edik | |||||
_20o husAdik | _20o husAdik | ||||
_30o hAR2_mintsAdik | |||||
_60o hAtvAnAdik | |||||
_80o n^oltsvAnAdik | |||||
_0Co sa:zAdik | _0Co sa:zAdik | ||||
_2Co ke:tsa:zAdik | |||||
// These words mean that a dot after number, immediately preceding, does not mean an ordinal number | |||||
január $alt | |||||
február $alt | |||||
március $alt | |||||
április $alt | |||||
május $alt | |||||
június $alt | |||||
július $alt | |||||
augusztus $alt | |||||
szeptember $alt | |||||
október $alt | |||||
november $alt | |||||
december $alt | |||||
//The following 12 row contains shorter hungarian month names | |||||
jan $alt | |||||
feb $alt | |||||
márc $alt | |||||
ápr $alt | |||||
máj $alt | |||||
jún $alt | |||||
júl $alt | |||||
aug $alt | |||||
szept $alt | |||||
okt $alt | |||||
now $alt | |||||
dec $alt | |||||
// accent names | // accent names | ||||
_lig ligAtu:R2A | _lig ligAtu:R2A | ||||
a.m An^n^i||m'int $dot | a.m An^n^i||m'int $dot | ||||
dr doktoR2 $dot | dr doktoR2 $dot | ||||
gpu $abbrev | gpu $abbrev | ||||
mvgyosz $abbrev | |||||
OTP $abbrev | |||||
id idY:SEb: $dot | id idY:SEb: $dot | ||||
ill illEdvE $dot | |||||
ill illEtvE $dot | |||||
ifj ifjAb: $dot | ifj ifjAb: $dot | ||||
mta $abbrev | mta $abbrev | ||||
pl pe:lda:ul $dot | pl pe:lda:ul $dot | ||||
ú.n u:JnEvEzEt: $dot | ú.n u:JnEvEzEt: $dot | ||||
vö v'EZd||_'Yss2E | vö v'EZd||_'Yss2E | ||||
?1 i EJ $abbrev // option for Roman number | |||||
// Articles | // Articles | ||||
x iks | x iks | ||||
y ipsilon | y ipsilon | ||||
z ze: | z ze: | ||||
_é e: | _é e: | ||||
é $atend | é $atend | ||||
cs tSe: | cs tSe: | ||||
dz dze: | dz dze: | ||||
dzs dZe: | dzs dZe: | ||||
sz Es | sz Es | ||||
zs Ze: | zs Ze: | ||||
ß _^_DE | ß _^_DE | ||||
. pont $max3 | . pont $max3 | ||||
* tS'illAg $max3 | |||||
* tSillAg $max3 | |||||
% sa:zAle:k $max3 | % sa:zAle:k $max3 | ||||
+ plus $max3 | + plus $max3 | ||||
= EJEnlY:Se:g $max3 | |||||
# sa:mjEl $max3 | |||||
/ pER2 $max3 | |||||
= EJEnlY: $max3 | |||||
# kEt:Y:SkER2Est $max3 | |||||
@ kukAts | @ kukAts | ||||
& e:SjEl | |||||
& e:S | |||||
€ EuR2o | € EuR2o | ||||
¶ bEkEzde:S | ¶ bEkEzde:S | ||||
§ pAR2AgR2AfuS | § pAR2AgR2AfuS | ||||
~ tildE | ~ tildE | ||||
^ hia:n^ | |||||
° fokjEl | ° fokjEl | ||||
Ft foR2int | Ft foR2int | ||||
\ viss2ApER2 $max3 | |||||
\ bEks2lES $max3 | |||||
^ fölfelényíl $text | |||||
_, vEss2Y: | _, vEss2Y: | ||||
_; pontoSvEss2Y: | _; pontoSvEss2Y: | ||||
_: kEt:Y:Spont | _: kEt:Y:Spont | ||||
_! fElkia:lto: | _! fElkia:lto: | ||||
_? ke:R2dY: | _? ke:R2dY: | ||||
_- kYtY:jEl | |||||
_- kYtY:jEl $max3 | |||||
__ Ala:hu:za:S | __ Ala:hu:za:S | ||||
_' ApostR2o:f | _' ApostR2o:f | ||||
_– nAJkYtY: | _– nAJkYtY: | ||||
_… ha:R2_mASpont | _… ha:R2_mASpont | ||||
_• di:spont | _• di:spont | ||||
// Main Exceptions List | // Main Exceptions List | ||||
//===================== | //===================== | ||||
nato na:to: | nato na:to: | ||||
$textmode | $textmode | ||||
(1-én) elsején | |||||
MSZP emeszpé | |||||
SZDSZ eszdéesz | |||||
colon kettőspont | |||||
(://) kettőspontperper $pause | |||||
egyezség eggyesség | |||||
(1-én) elsején | |||||
(1-jén) elsején | |||||
(2-án) másodikán | |||||
(3-án) harmadikán | |||||
(4-én) negyedikén | |||||
(5-én) ötödikén | |||||
(6-án) hatodikán | |||||
(7-én) hetedikén | |||||
(8-án) nyolcadikán | |||||
(9-én) kilencedikén | |||||
(10-én) tizedikén | |||||
(11-én) tizeneggyedikén | |||||
(12-én) tizenkettedikén | |||||
(13-án) tizenharmadikán | |||||
(14-én) tizennegyedikén | |||||
(15-én) tizenötödikén | |||||
(16-án) tizenhatodikán | |||||
(17-én) tizenhetedikén | |||||
(18-án) tizennyolcadikán | |||||
(19-én) tizenkilencedikén | |||||
(20-án) huszadikán | |||||
(21-én) huszoneggyedikén | |||||
(22-én) huszonkettedikén | |||||
(23-án) huszonharmadikán | |||||
(24-én) huszonnegyedikén | |||||
(25-én) huszonötödikén | |||||
(26-án) huszonhatodikán | |||||
(27-én) huszonhetedikén | |||||
(28-án) huszonnyolcadikán | |||||
(29-én) huszonkilencedikén | |||||
(30-án) harmincadikán | |||||
(31-én) harminceggyedikén | |||||
(1-e) elseje | |||||
(2-a) másodika | |||||
(3-a) harmadika | |||||
(4-e) negyedike | |||||
(5-e) ötödike | |||||
(6-a) hatodika | |||||
(7-e) hetedike | |||||
(8-a) nyolcadika | |||||
(9-e) kilencedike | |||||
(10-e) tizedike | |||||
(11-e) tizeneggyedike | |||||
(12-e) tizenkettedike | |||||
(13-a) tizenharmadika | |||||
(14-e) tizennegyedike | |||||
(15-e) tizenötödike | |||||
(16-a) tizenhatodika | |||||
(17-e) tizenhetedike | |||||
(18-a) tizennyolcadika | |||||
(19-e) tizenkilencedike | |||||
(20-a) huszadika | |||||
(21-e) huszoneggyedike | |||||
(22-e) huszonkettedike | |||||
(23-a) huszonharmadika | |||||
(24-e) huszonnegyedike | |||||
(25-e) huszonötödike | |||||
(26-a) huszonhatodika | |||||
(27-e) huszonhetedike | |||||
(28-a) huszonnyolcadika | |||||
(29-e) huszonkilencedike | |||||
(30-a) harmincadika | |||||
(31-e) harmincegyedike | |||||
(Szvsz) eszvéesz | |||||
(edik szeptember) szeptember | |||||
// Hungarian translation rules | // Hungarian translation rules | ||||
// This file is UTF-8 encoded | // This file is UTF-8 encoded | ||||
.replace | .replace | ||||
// allow o,u-circumflex for o,u-double-acute | // allow o,u-circumflex for o,u-double-acute | ||||
ô ő | |||||
û ű | |||||
ô ő | |||||
û ű | |||||
.group a | .group a | ||||
a A | a A | ||||
_) a (_ %A | _) a (_ %A | ||||
_) alattvaló _!'AlAtvAlo: | |||||
.group á | .group á | ||||
á a: | á a: | ||||
.group b | .group b | ||||
b b | b b | ||||
// bb b: | // bb b: | ||||
biz (A b'iz, // bizalmas etc. | biz (A b'iz, // bizalmas etc. | ||||
biedermeier bi:dER2ma:jER2 | biedermeier bi:dER2ma:jER2 | ||||
.group c | .group c | ||||
c ts | c ts | ||||
cc ts: | cc ts: | ||||
cs tS | cs tS | ||||
ccs tS: | ccs tS: | ||||
!) cz ts // in names which start with a capital letter | !) cz ts // in names which start with a capital letter | ||||
ar) csz (e ts | |||||
anar) ch (i C | anar) ch (i C | ||||
hierar) ch (i C | hierar) ch (i C | ||||
me) ch (a C | me) ch (a C | ||||
nyol) c (sz ts | nyol) c (sz ts | ||||
har) c (sz ts | har) c (sz ts | ||||
lán) c (sz ts | lán) c (sz ts | ||||
pá) c ts | |||||
per) c (sz ts | per) c (sz ts | ||||
pol) c (so ts | pol) c (so ts | ||||
por) c (sé ts | por) c (sé ts | ||||
.group d | .group d | ||||
d d | d d | ||||
// dd d: | |||||
dts tS: | |||||
dt t: | |||||
a) dsz ts: | |||||
cselé) d d | |||||
enge) dsz ts: | |||||
engedelmeske) dsz ts: | |||||
mara) dsz ts: | |||||
kére) dz ts | |||||
// dd d: | |||||
dz dz | dz dz | ||||
A) dz (A d:z | A) dz (A d:z | ||||
dzs dZ | dzs dZ | ||||
A) dzs dZ: | A) dzs dZ: | ||||
C) ds tS | |||||
C) ds tS | |||||
ds (C tS | ds (C tS | ||||
A) ds (A tS: | A) ds (A tS: | ||||
dsz ts | dsz ts | ||||
A) dzs (A dZ: | A) dzs (A dZ: | ||||
C) dj J | C) dj J | ||||
A) dj (A J: | A) dj (A J: | ||||
ren) d (szer d | |||||
dj J: | |||||
min) dny n^ | |||||
.group e | .group e | ||||
e E | e E | ||||
D_-_) es (_ %ES | D_-_) es (_ %ES | ||||
_) egyezség _!'EJ:ESSe:g | |||||
.group é | .group é | ||||
é e: | é e: | ||||
éi (é e::i: | éi (é e::i: | ||||
.group f | .group f | ||||
f f | f f | ||||
.group g | .group g | ||||
g g | g g | ||||
// gg g: | |||||
// gg g: | |||||
gy J | gy J | ||||
ggy J: | ggy J: | ||||
_) goethe gY:tE | _) goethe gY:tE | ||||
_) goethé gY:te: | _) goethé gY:te: | ||||
me) g (gyú g | |||||
me) g (győz g | |||||
me) g (gyil g | |||||
me) g (gyű g | |||||
me) g (gyász g | |||||
me) g (gyűr g | |||||
le) g (gy g | |||||
.group h | .group h | ||||
h h | h h | ||||
.group i | .group i | ||||
i i | i i | ||||
_) itthon ithon | |||||
.group í | .group í | ||||
í i: | í i: | ||||
íts i:tS: | |||||
.group j | .group j | ||||
j j | j j | ||||
_) javíts jAvi:tS: | |||||
_) javítsd jAvi:tSd | |||||
.group k | .group k | ||||
k k | k k | ||||
kk k: | kk k: | ||||
kk (C kk | kk (C kk | ||||
_) köz kYz | _) köz kYz | ||||
_) község kYSSe:g | |||||
_) készség ke:SSe:g | |||||
_) kétség ke:tS:e:g | |||||
.group l | .group l | ||||
l l | l l | ||||
lly jj | lly jj | ||||
A) lj (A l^j | A) lj (A l^j | ||||
C) ly (_ li | |||||
á) ll (j j | |||||
beszé) lj jj | |||||
bére) lj jj | |||||
gondo) lj jjj | |||||
ke) lj jj | |||||
sajná) lj jj | |||||
C) ly (_ li | |||||
_kéth) ly li | _kéth) ly li | ||||
szamue) lly lli | szamue) lly lli | ||||
szamue) ly lli | szamue) ly lli | ||||
ko) mm (uni m | ko) mm (uni m | ||||
.group n | .group n | ||||
n n | n n | ||||
n (g N | n (g N | ||||
n (k N | n (k N | ||||
n (p m | |||||
ny n^ | ny n^ | ||||
nny n^n^ | nny n^n^ | ||||
nj n^n^ | nj n^n^ | ||||
nyj n^n^ | |||||
_) nem (- n,Em // has $alt2 attribute in hu_list, combine with the next word | _) nem (- n,Em // has $alt2 attribute in hu_list, combine with the next word | ||||
me) nny (ország n^ | |||||
me) nny (d n^ | |||||
.group o | .group o | ||||
o o | o o | ||||
_r) oose (velt u:z | _r) oose (velt u:z | ||||
_) otthon othon | |||||
.group ó | .group ó | ||||
ó o: | ó o: | ||||
qu kv | qu kv | ||||
.group r | .group r | ||||
r R2 | |||||
r R2 | |||||
rr RR | rr RR | ||||
rm R2_m | rm R2_m | ||||
r (cc R | r (cc R | ||||
s S | s S | ||||
sz s | sz s | ||||
ssz ss2 | ssz ss2 | ||||
szts stS: | |||||
s (színű S | |||||
s (színű S | |||||
hel) s (inki z | hel) s (inki z | ||||
ki) s (ebb SS | ki) s (ebb SS | ||||
_má) s (szó S | _má) s (szó S | ||||
sz (öld Sz | sz (öld Sz | ||||
va) s (zabl S|| | va) s (zabl S|| | ||||
egé) szs (ég S | egé) szs (ég S | ||||
liszte) szs (ák SZ | |||||
pénze) s S | |||||
rend) sz (er s: | |||||
.group t | .group t | ||||
_) t (_ te: | _) t (_ te: | ||||
-) t (_ t | -) t (_ t | ||||
t t | t t | ||||
tc ts: | |||||
tt t: | tt t: | ||||
tt (C tt | tt (C tt | ||||
ty c | ty c | ||||
// z) ty c: // keztyű | // z) ty c: // keztyű | ||||
ttj tc: | ttj tc: | ||||
tty c: | tty c: | ||||
C) tj c | |||||
éle) t t | |||||
tsz ts: | |||||
szorí) ts (a tS: | |||||
ürí) ts (e tS: | |||||
mula) ts tS: | |||||
nemze) ts tS: | |||||
min) t t | |||||
tse tSE | |||||
tso tSo | |||||
tsa tSA | |||||
tsá tSa: | |||||
tsd tSd | |||||
tsé tSe: | |||||
ttsé tS:e: | |||||
C) tj c | |||||
A) tj (A c: | A) tj (A c: | ||||
C) tyj c | C) tyj c | ||||
A) tyj (A c: | A) tyj (A c: | ||||
_ka) ty (n ti | _ka) ty (n ti | ||||
vörösmar) ty ti | vörösmar) ty ti | ||||
á) t (jár t | |||||
á) t (sző t | |||||
á) t (szú t | |||||
á) t (szű t | |||||
bizo) tts (ág tS: | |||||
állí) ts tS: | |||||
bará) ts tS: | |||||
dön) ts (ön tS | |||||
elhivato) tts (ág tS: | |||||
folyama) t (jel t | |||||
kiál) ts tS | |||||
köve) ts (ég tS: | |||||
kür) t t | |||||
neve) ts (ég tS: | |||||
szen)t (szék t | |||||
szöve) ts (ég tS: | |||||
romlo) tts tS: | |||||
á) t (sor t | |||||
á) t (sé t | |||||
ne) t (se t | |||||
lehe) ts (ég tS: | |||||
tehe) ts (ég tS: | |||||
lá) tsz ts: | |||||
fize) ts (ég tS: | |||||
segí) ts tS: | |||||
á) ts (ó tS: | |||||
ismere) ts (ég tS: | |||||
lé) t (szám t | |||||
ké) t (száz t | |||||
ö) t (száz t | |||||
ha) t (száz t | |||||
vé) ts (ég tS: | |||||
.group u | .group u | ||||
.group z | .group z | ||||
z z | z z | ||||
zs Z | |||||
zs Z | |||||
zzs Z: | zzs Z: | ||||
gá) z (sz z | |||||
a) z (t s | |||||
a) z (tán s | |||||
befeje) z (te s | |||||
bi) z (tons s | |||||
bi) z (tos s | |||||
bron) z (sz z | |||||
e) z (t s | |||||
költö) z (köd s | |||||
kö) z (pont s | |||||
kö) z (társaság s | |||||
lefeje) z (te s | |||||
lefeje) z (ték s | |||||
pén) z (tár s | |||||
ré) z (sz z | |||||
tartó) z s | |||||
gá) z (sz z | |||||
gé) z (sz z | gé) z (sz z | ||||
ké) z (sz z | |||||
ké) z (sz zz | |||||
há) z (so z | há) z (so z | ||||
há) z (sz z | há) z (sz z | ||||
lá) z (sz z | lá) z (sz z | ||||
má) zc (sz z | má) zc (sz z | ||||
mé) zc (sz z | mé) zc (sz z | ||||
nehé) z (sé z | |||||
pén) z z | |||||
nehé) z (sé S | |||||
iga) zs (ág SS | |||||
ga) zs (ág SS | |||||
pén) z z | |||||
szá) z (sz z | szá) z (sz z | ||||
tí) z (sz z | tí) z (sz z | ||||
tű) z (sz z | tű) z (sz z | ||||
_gá) zsz (ámlá zs: | _gá) zsz (ámlá zs: | ||||
_ré) zs (ó zS | _ré) zs (ó zS | ||||
_vá) zs (or zS | _vá) zs (or zS | ||||
_szára) zs (ág zS | |||||
_kö) zs (ég zS | |||||
_szára) zs (ág SS | |||||
_nehé) zs (ely zS | _nehé) zs (ely zS | ||||
_) zürich tsyR2iC | _) zürich tsyR2iC | ||||
.group | .group | ||||
_) :-) v'iJoR2 | |||||
$ dolla:R2 | $ dolla:R2 | ||||
ä E | ä E | ||||
æ E | æ E |
_dpt _:'i_: // start of decimal fraction | _dpt _:'i_: // start of decimal fraction | ||||
_dpt2 _d;Is;'atYx // end of decimal fraction | _dpt2 _d;Is;'atYx // end of decimal fraction | ||||
// characters | |||||
№ номер $text | |||||
// prepositions | // prepositions | ||||
в v $u // to,in,at | в v $u // to,in,at | ||||
от $u // from | от $u // from |
ற் iR | ற் iR | ||||
ல் il | ல் il | ||||
ள் il. | ள் il. | ||||
ழ் iz | |||||
ழ் iz. | |||||
வ் iv | வ் iv | ||||
ஶ் iS | ஶ் iS | ||||
ஷ் is. | ஷ் is. | ||||
ஹ் iC | ஹ் iC | ||||
U+b82 anUsvVRV | U+b82 anUsvVRV | ||||
ஃ ah | ஃ ah | ||||
U+bcd viRVmV | |||||
U+bcd ot.RU | |||||
ஏ je: | |||||
// speak Latin letters as English | // speak Latin letters as English | ||||
a e:j | a e:j | ||||
q kju: | q kju: | ||||
r a:R | r a:R | ||||
s Es | s Es | ||||
t ti: | |||||
t thi: | |||||
u ju: | u ju: | ||||
v vi: | v vi: | ||||
w dVbVlju: | w dVbVlju: | ||||
_. pul.l.i | _. pul.l.i | ||||
_, kVma: | _, kVma: | ||||
_; ka:RbUl.l.,i | _; ka:RbUl.l.,i | ||||
_: arE:pp,Ul.l.V | |||||
_: araIpp,Ul.l.V | |||||
_? ke:l.vikk,URi | _? ke:l.vikk,URi | ||||
_! a:ctS:Vr,ijVkk,URi | _! a:ctS:Vr,ijVkk,URi | ||||
% sadVv,igid,Vm | |||||
% விழுக்காடு $text | |||||
= samVm | = samVm | ||||
U+bf9 ru:ba:j | U+bf9 ru:ba:j | ||||
// abbreviations | |||||
ரூ ru:ba:j $dot | |||||
Rs ru:ba:j $dot | |||||
// numbers | // numbers | ||||
_0 pu:dZjam_ // ?? | |||||
_1 ondru_ | |||||
_2 irandu_ | |||||
_3 mo:ndru_ | |||||
_4 na:ngu_ | |||||
_5 aintu_ | |||||
_6 a:ru_ | |||||
_7 E:lu_ // aylu ?? | |||||
_8 et.:u_ | |||||
_9 onpatu_ | |||||
_10 pat:u_ | |||||
_0 suz.ijVm // சுழியம் | |||||
_1 onRU | |||||
_2 irVn.d.U | |||||
_3 mu:nRU | |||||
_4 na:ngU | |||||
_5 aIndU | |||||
_6 a:RU | |||||
_7 ;e:lU | |||||
_8 ;et.t.U | |||||
_9 onbVd.U | |||||
_10 pattU | |||||
_1X padin | |||||
_11 patinonRU | |||||
_12 pVnniren.d.U | |||||
_19 pattonbVdU | |||||
_20 irUbVdU | |||||
_30 muppVdU // முப்பது | |||||
_40 na:RpVdU | |||||
_50 aImbVdU | |||||
_60 aRUbVdU | |||||
_70 ;ez.UbVdU | |||||
_80 ;en.bVdU | |||||
_90 ton.n.u:RU | |||||
_2X irUbVttU | |||||
_3X muppVttU | |||||
_4X na:RpVttU | |||||
_5X aImbVttU | |||||
_6X aRUbVttU | |||||
_7X ;ez.UbVttU | |||||
_8X ;en.bVttU | |||||
_9X ton.n.u:t.t.RU | |||||
_1C0 nu:RU | |||||
_2C0 irUnu:RU | |||||
_3C0 munnu:RU | |||||
_4C0 na:nu:RU | |||||
_5C0 aInu:RU | |||||
_6C0 aRUnu:RU | |||||
_7C0 ;ez.Unu:RU | |||||
_8C0 ;en.n.u:RU | |||||
_9C0 tol.l.a:jirVm | |||||
_1C nu:t.t.Ri | |||||
_2C irUnu:t.t.Ri | |||||
_3C munnu:t.t.Ri | |||||
_4C na:nu:t.t.Ri | |||||
_5C aInu:t.t.Ri | |||||
_6C aRUnu:t.t.Ri | |||||
_7C ;ez.Unu:t.t.Ri | |||||
_8C ;en.n.u:t.t.Ri | |||||
_9C tol.l.a:jirVttU | |||||
_0M1x a:jirVm | |||||
_1M1x a:jirVm | |||||
_0M1 a:jirVttU | |||||
_1M1 a:jirVttU | |||||
_0M2x lVd.tSVm | |||||
_1M2x orUlVd.tSVm | |||||
_0M2 lVd.tSVttU | |||||
_1M2 orUlVd.tSVttU | |||||
_0M3x ko:d.i | |||||
_1M3x orUko:d.i | |||||
_0M3 ko:d.ie: | |||||
_1M3 orUko:d.ie: | |||||
_0M4 nu:RUko:d.i // not correct, but should be understandable | |||||
_1M4 nu:RUko:d.i | |||||
_0M5 patta:jiRUmko:d.i | |||||
_1M5 patta:jiRUmko:d.i | |||||
_dpt _pul.l.i |
ஊ u: | ஊ u: | ||||
எ e | எ e | ||||
_) எ ;e // add a short [j] sound at start of word ? | |||||
ஏ e:: | ஏ e:: | ||||
_) ஏ ;e:: // add a short [j] sound at start of word ? | |||||
ஐ E: | |||||
ஐ aI | |||||
ஒ o | ஒ o | ||||
ங NV | ங NV | ||||
ங (B N | ங (B N | ||||
ச dZV | |||||
ச (B dZ | |||||
ச zV | |||||
ச (B z | |||||
_) ச sa | _) ச sa | ||||
_) ச (B s | _) ச (B s | ||||
ச்ச tS:V | ச்ச tS:V | ||||
ச்ச (B tS: | ச்ச (B tS: | ||||
ட்) ச tSV | |||||
ட்) ச (B tS | |||||
ஞ்) ச dZV | |||||
ஞ்) ச (B dZ | |||||
ஜ dZV | ஜ dZV | ||||
ஜ (B dZ | ஜ (B dZ | ||||
_) ப (B p | _) ப (B p | ||||
ப்ப ppV | ப்ப ppV | ||||
ப்ப (B pp | ப்ப (B pp | ||||
ட்) ப pV | |||||
ட்) ப (B pV | |||||
ற்) ப pV | |||||
ற்) ப (B p | |||||
ஃ) ப fV | ஃ) ப fV | ||||
ஃ) ப (B f | ஃ) ப (B f | ||||
ஹ hV | ஹ hV | ||||
ஹ (B h | ஹ (B h | ||||
க்ஷ ks.V | |||||
க்ஷ (B ks. | |||||
// combining vowels | // combining vowels | ||||
ே e: | ே e: | ||||
ை E: | |||||
ை aI | |||||
ொ o | ொ o | ||||
.group | .group | ||||
் // virama | ் // virama | ||||
$ dolV | $ dolV | ||||
D) . (D+ _pul.l.i |
volume 15 | volume 15 | ||||
0 l/2 NULL 0 l | 0 l/2 NULL 0 l | ||||
0 l/ NULL 0 l | 0 l/ NULL 0 l | ||||
0 l2 NULL 0 l | |||||
0 r/ NULL 0 R | 0 r/ NULL 0 R | ||||
0 r/2 NULL 0 R | 0 r/2 NULL 0 R | ||||
0 r- NULL 0 R | 0 r- NULL 0 R | ||||
0 n2 NULL 0 n | 0 n2 NULL 0 n | ||||
0 p2 NULL 0 p | 0 p2 NULL 0 p | ||||
0 r2 NULL 0 R | 0 r2 NULL 0 R | ||||
0 R2 NULL 0 R | |||||
0 t2 NULL 0 t | 0 t2 NULL 0 t | ||||
0 t3 NULL 0 t | 0 t3 NULL 0 t | ||||
0 z2 NULL 0 z | 0 z2 NULL 0 z | ||||
0 z3 NULL 0 z | 0 z3 NULL 0 z | ||||
0 i: NULL 0 i | 0 i: NULL 0 i | ||||
0 i- NULL 0 i | |||||
0 u: NULL 0 u | 0 u: NULL 0 u | ||||
0 eI NULL 60 E j | 0 eI NULL 60 E j | ||||
0 aU NULL 60 a w | 0 aU NULL 60 a w | ||||
0 oU NULL 0 o | 0 oU NULL 0 o | ||||
0 o3 NULL 0 o | |||||
0 o- NULL 0 o | 0 o- NULL 0 o | ||||
0 @L NULL 40 @ l | 0 @L NULL 40 @ l | ||||
0 @2 NULL 0 @ | 0 @2 NULL 0 @ | ||||
endphoneme | endphoneme | ||||
phoneme o | phoneme o | ||||
vowel starttype (e) endtype (e) | |||||
vowel starttype (o) endtype (o) | |||||
length 180 | length 180 | ||||
formants vowel/o | formants vowel/o | ||||
endphoneme | endphoneme |
//==================================================== | //==================================================== | ||||
// French | // French | ||||
//==================================================== | //==================================================== | ||||
// Updated 2009-07-30 Michel Such <[email protected]> | |||||
// Updated 2009-09-30 Michel Such <[email protected]> | |||||
phoneme (l) virtual | phoneme (l) virtual | ||||
// Used for l and l/ | // Used for l and l/ | ||||
length 40 // shorter than for fr-ca | length 40 // shorter than for fr-ca | ||||
endphoneme | endphoneme | ||||
phoneme (r) virtual | |||||
after b vwl_fr/tr+r3/rx%35 | |||||
after g vwl_fr/tr+r3/rx%35 | |||||
after k vwl_fr/tr+r3/rx%35 | |||||
after m vwl_fr/tr+r3/rx%25 | |||||
after n vwl_fr/tr+r3/rx%25 | |||||
after p vwl_fr/tr+r3/rx%35 | |||||
after s vwl_fr/tr+r3/rx%30 | |||||
after S vwl_fr/tr+r3/rx%45 | |||||
after t vwl_fr/tr+r3/rx%30 | |||||
after v vwl_fr/tr+r3/rx%30 | |||||
after z vwl_fr/tr+r3/rx%30 | |||||
after Z vwl_fr/tr+r3/rx%30 | |||||
before (i) vwl_fr/@R5 | |||||
before (o) vwl_fr/@R5 | |||||
before (u) vwl_fr/@R5 | |||||
endphoneme | |||||
// Vowels | // Vowels | ||||
//======= | //======= | ||||
phoneme @ | phoneme @ | ||||
vowel starttype (@) endtype (@) | vowel starttype (@) endtype (@) | ||||
length 190 | |||||
length 170 | |||||
formants vowel/@_hgh | formants vowel/@_hgh | ||||
after (r) vwl_fr/r@ | |||||
before l/ DFT+l/l_@ | before l/ DFT+l/l_@ | ||||
before (r) DFT+vwl_fr/r_@ | |||||
endphoneme | |||||
phoneme @- // very short schwa | |||||
vowel nonsyllabic | |||||
starttype (@) endtype (@) | |||||
formants NULL | |||||
unstressed | |||||
length 70 | |||||
before l/ DFT+l/l_@ | |||||
before (r) DFT+vwl_fr/r_@ | |||||
before (r) DFT+vwl_fr/xr | |||||
endphoneme | endphoneme | ||||
phoneme @2 | phoneme @2 | ||||
vowel starttype (@) endtype (@) | vowel starttype (@) endtype (@) | ||||
length 170 | |||||
length 160 | |||||
formants vowel/@_fr | formants vowel/@_fr | ||||
before (r) DFT-10+vwl_fr/r_@ | |||||
after (r) vwl_fr/r@ | |||||
before (r) DFT+vwl_fr/xr | |||||
endphoneme | endphoneme | ||||
phoneme a | phoneme a | ||||
vowel starttype (a) endtype (a) | vowel starttype (a) endtype (a) | ||||
length 200 | |||||
length 170 | |||||
formants vowel/a_6 | formants vowel/a_6 | ||||
after l l/la-15 | after l l/la-15 | ||||
after (r) vwl_fr/ra | |||||
before l/ DFT+l/l_a | before l/ DFT+l/l_a | ||||
before (r) DFT-10+vwl_fr/r_a | |||||
before r/2 DFT-10+vwl_fr/r_a | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_a | |||||
endphoneme | endphoneme | ||||
phoneme e | phoneme e | ||||
vowel starttype (e) endtype (e) | vowel starttype (e) endtype (e) | ||||
length 190 | |||||
length 170 | |||||
formants vowel/e_8 | formants vowel/e_8 | ||||
after (l) l/le-15 | after (l) l/le-15 | ||||
after (r) vwl_fr/re | |||||
before l/ DFT-20+l/xl | before l/ DFT-20+l/xl | ||||
before (r) DFT-10+vwl_fr/r_e | |||||
before (r) DFT+vwl_fr/xr | |||||
endphoneme | endphoneme | ||||
phoneme E | phoneme E | ||||
vowel starttype (e) endtype (e) | vowel starttype (e) endtype (e) | ||||
length 190 | |||||
length 170 | |||||
formants vowel/e_mid | formants vowel/e_mid | ||||
after (l) l/le-15 | after (l) l/le-15 | ||||
after (r) vwl_fr/re | |||||
before l/ DFT+l/l_e | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_e | |||||
endphoneme | |||||
phoneme E2 // Between e and E | |||||
vowel starttype (e) endtype (e) | |||||
length 170 | |||||
formants vowel/e_9 | |||||
after (l) l/le-15 | |||||
after (r) vwl_fr/re | |||||
before l/ DFT+l/l_e | before l/ DFT+l/l_e | ||||
before (r) DFT-10+vwl_fr/r_e | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_e | before r/2 DFT+vwl_fr/r_e | ||||
endphoneme | endphoneme | ||||
phoneme i | phoneme i | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
length 180 | |||||
length 160 | |||||
formants vowel/i_2 | formants vowel/i_2 | ||||
linkout ; | linkout ; | ||||
after (l) l/li-15 | after (l) l/li-15 | ||||
// after (r) vwl_fr/ri | |||||
after (r) vwl_fr/ri-30 | |||||
before l/ DFT+l/l_i | before l/ DFT+l/l_i | ||||
before (r) DFT-20+vwl_fr/r_i | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_i | before r/2 DFT+vwl_fr/r_i | ||||
endphoneme | endphoneme | ||||
phoneme i- // shorter | phoneme i- // shorter | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
length 140 | |||||
length 130 | |||||
formants vowel/i_2 | formants vowel/i_2 | ||||
linkout ; | |||||
after (l) l/li-15 | after (l) l/li-15 | ||||
// after (r) vwl_fr/ri | |||||
after (r) vwl_fr/ri | |||||
endphoneme | endphoneme | ||||
phoneme i: // longer than i | phoneme i: // longer than i | ||||
vowel starttype (i) endtype (i) | vowel starttype (i) endtype (i) | ||||
length 250 | |||||
length 240 | |||||
formants vowel/i_3 | formants vowel/i_3 | ||||
linkout ; | linkout ; | ||||
after (l) l/li-15 | after (l) l/li-15 | ||||
// after (r) vwl_fr/ri | |||||
after (r) vwl_fr/ri | |||||
before l/ DFT+l/l_i | before l/ DFT+l/l_i | ||||
before (r) DFT-20+vwl_fr/r_i | |||||
before r/2 DFT-20+vwl_fr/r_i | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_i | |||||
endphoneme | endphoneme | ||||
phoneme o | phoneme o | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 190 | |||||
length 170 | |||||
formants vowel/o_3 | formants vowel/o_3 | ||||
after (l) l/lo-10 | after (l) l/lo-10 | ||||
after (r) vwl_fr/ro | |||||
before l/ DFT+l/l_o | before l/ DFT+l/l_o | ||||
before (r) DFT+vwl_fr/r_o | |||||
before r/2 vowel/o_mid+vwl_fr/r_o | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 vowel/o_mid2+vwl_fr/r_o | |||||
reduceto o2 1 | reduceto o2 1 | ||||
endphoneme | endphoneme | ||||
phoneme o2 | phoneme o2 | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 190 | |||||
length 170 | |||||
formants vowel/o_2 | formants vowel/o_2 | ||||
after (l) l/lo-10 | after (l) l/lo-10 | ||||
before l/ vowel/o_mid+l/l_o | |||||
before (r) DFT+vwl_fr/r_o | |||||
before r/2 vowel/o_mid+vwl_fr/r_o | |||||
after (r) vwl_fr/ro | |||||
before l/ vowel/o_mid2+l/l_o | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 vowel/o_mid2+vwl_fr/r_o | |||||
endphoneme | endphoneme | ||||
phoneme O | phoneme O | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 190 | |||||
formants vowel/o_mid | |||||
length 170 | |||||
formants vowel/o_mid2 | |||||
after (l) l/lo-10 | after (l) l/lo-10 | ||||
after (r) vwl_fr/ro | |||||
before l/ DFT+l/l_o | before l/ DFT+l/l_o | ||||
before (r) DFT+vwl_fr/r_o | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_o | before r/2 DFT+vwl_fr/r_o | ||||
reduceto o2 1 | reduceto o2 1 | ||||
endphoneme | endphoneme | ||||
phoneme O2 // Like O but no reduceto | phoneme O2 // Like O but no reduceto | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 190 | |||||
formants vowel/o_mid | |||||
length 170 | |||||
formants vowel/o_mid2 | |||||
after (l) l/lo-10 | after (l) l/lo-10 | ||||
after (r) vwl_fr/ro | |||||
before l/ DFT+l/l_o | before l/ DFT+l/l_o | ||||
before (r) DFT+vwl_fr/r_o | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_o | before r/2 DFT+vwl_fr/r_o | ||||
endphoneme | endphoneme | ||||
phoneme o3 // almost like english oU | |||||
vowel starttype (@) endtype (u) | |||||
length 220 | |||||
formants vdiph/@u_3 | |||||
endphoneme | |||||
phoneme u | phoneme u | ||||
vowel starttype (u) endtype (u) | vowel starttype (u) endtype (u) | ||||
length 210 | |||||
length 170 | |||||
formants vowel/u_bck2 | formants vowel/u_bck2 | ||||
after l l/lu-20 | after l l/lu-20 | ||||
after (r) vwl_fr/ru | |||||
after R vwl_fr/ru-10 | |||||
before l/ DFT-20+l/l_u | before l/ DFT-20+l/l_u | ||||
before (r) DFT+vwl_fr/r_u | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_u | |||||
before i DFT-50 | before i DFT-50 | ||||
endphoneme | endphoneme | ||||
length 240 | length 240 | ||||
formants vowel/u_bck2 | formants vowel/u_bck2 | ||||
after l l/lu-20 | after l l/lu-20 | ||||
before l/ DFT-20+l/l_u | |||||
after (r) vwl_fr/ru | |||||
before l/ DFT-20+l/l_u | before l/ DFT-20+l/l_u | ||||
endphoneme | endphoneme | ||||
phoneme y | phoneme y | ||||
vowel starttype (u) endtype (u) | vowel starttype (u) endtype (u) | ||||
length 190 | |||||
length 170 | |||||
formants vowel/y_2 | formants vowel/y_2 | ||||
after l l/lu-20 | after l l/lu-20 | ||||
after (r) vwl_fr/ry | |||||
before l/ DFT-30+l/l_y | before l/ DFT-30+l/l_y | ||||
before (r) DFT+vwl_fr/r_y | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_y | before r/2 DFT+vwl_fr/r_y | ||||
before E~ DFT-50 | before E~ DFT-50 | ||||
endphoneme | endphoneme | ||||
phoneme Y | phoneme Y | ||||
vowel starttype (@) endtype (@) | vowel starttype (@) endtype (@) | ||||
length 190 | |||||
length 170 | |||||
formants vowel/y# | formants vowel/y# | ||||
after (l) l/l@-20 | after (l) l/l@-20 | ||||
after (r) vwl_fr/r@ | |||||
before l/ DFT-20+l/l_@ | before l/ DFT-20+l/l_@ | ||||
before (r) DFT+vwl_fr/r_@ | |||||
before r/2 DFT+r/xr-40 | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_@ | |||||
reduceto W 1 | |||||
endphoneme | endphoneme | ||||
phoneme W | phoneme W | ||||
vowel starttype (@) endtype (@) | vowel starttype (@) endtype (@) | ||||
length 200 | |||||
formants vowel/@_5 | |||||
after (l) l/l@-20 | |||||
before l/ DFT-20+l/l_@ | |||||
before (r) DFT+vwl_fr/r_@2 | |||||
before r/2 DFT+vwl_fr/r_@2-30 | |||||
reduceto Y 1 | |||||
endphoneme | |||||
phoneme W2 // same as W but don't reduce | |||||
vowel starttype (@) endtype (@) | |||||
length 200 | |||||
formants vowel/@_3 | |||||
length 180 | |||||
formants vowel/@ | |||||
after (l) l/l@-20 | after (l) l/l@-20 | ||||
after (r) vwl_fr/r@ | |||||
before l/ DFT-20+l/l_@ | before l/ DFT-20+l/l_@ | ||||
before (r) DFT+vwl_fr/r_@ | |||||
before r/2 DFT+vwl_fr/r_@2 | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_@ | |||||
endphoneme | endphoneme | ||||
phoneme wA | phoneme wA | ||||
vowel starttype (o) endtype (a) | vowel starttype (o) endtype (a) | ||||
length 240 | |||||
length 230 | |||||
formants vwl_fr/w_a | formants vwl_fr/w_a | ||||
after (l) l/lo-10 | after (l) l/lo-10 | ||||
after (r) vwl_fr/ro-15 | |||||
before l/ DFT-10+l/l_a | before l/ DFT-10+l/l_a | ||||
before j DFT | before j DFT | ||||
before (r) DFT+vwl_fr/r_a | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_a | before r/2 DFT+vwl_fr/r_a | ||||
endphoneme | endphoneme | ||||
length 240 | length 240 | ||||
formants vdiph/yi_fr | formants vdiph/yi_fr | ||||
after l l/lu-20 | after l l/lu-20 | ||||
after (r) vwl_fr/ry | |||||
before l/ DFT+l/l_i | before l/ DFT+l/l_i | ||||
before (r) DFT+vwl_fr/r_i | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_i | before r/2 DFT+vwl_fr/r_i | ||||
endphoneme | endphoneme | ||||
phoneme A~ | phoneme A~ | ||||
vowel starttype (a) endtype (a) | vowel starttype (a) endtype (a) | ||||
length 210 | |||||
length 190 | |||||
formants vnasal/aa_n4 | formants vnasal/aa_n4 | ||||
after (r) vwl_fr/rA~ | |||||
before l/ DFT+l/l_a | before l/ DFT+l/l_a | ||||
before (r) DFT+vwl_fr/r_a~ | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_a~ | before r/2 DFT+vwl_fr/r_a~ | ||||
endphoneme | endphoneme | ||||
phoneme E~ // same as W~ for fr-fr | phoneme E~ // same as W~ for fr-fr | ||||
vowel starttype (e) endtype (e) | vowel starttype (e) endtype (e) | ||||
length 210 | |||||
length 190 | |||||
formants vnasal/W_n | formants vnasal/W_n | ||||
before n2 DFT-100 | |||||
after (r) vwl_fr/r@ | |||||
before n2 vowel/e_mid | |||||
before (r) DFT+vwl_fr/xr | |||||
endphoneme | endphoneme | ||||
phoneme O~ | phoneme O~ | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 210 | |||||
length 190 | |||||
formants vnasal/o_n2 | formants vnasal/o_n2 | ||||
before (r) DFT+vwl_fr/r_o | |||||
after (r) vwl_fr/ro | |||||
before (r) DFT+vwl_fr/xr | |||||
endphoneme | endphoneme | ||||
phoneme W~ | phoneme W~ | ||||
vowel starttype (@) endtype (@) | vowel starttype (@) endtype (@) | ||||
length 210 | |||||
length 190 | |||||
formants vnasal/W_n | formants vnasal/W_n | ||||
before (r) DFT+vwl_fr/r_@ | |||||
after (r) vwl_fr/r@ | |||||
before (r) DFT+vwl_fr/xr | |||||
endphoneme | endphoneme | ||||
phoneme E: // slightly longer than [E] | phoneme E: // slightly longer than [E] | ||||
vowel starttype (e) endtype (e) | vowel starttype (e) endtype (e) | ||||
length 212 | length 212 | ||||
formants vowel/e | |||||
formants vowel/e_mid | |||||
after (l) l/le-15 | |||||
after (r) vwl_fr/re | |||||
before l/ DFT+l/l_e | |||||
before (r) DFT+vwl_fr/xr | |||||
before r/2 DFT+vwl_fr/r_e | |||||
endphoneme | endphoneme | ||||
phoneme A // same as [a] | phoneme A // same as [a] | ||||
phoneme g | phoneme g | ||||
vcd vel stop | vcd vel stop | ||||
vowelin f1=2 f2=2300 200 300 f3=-300 80 amp=10 | |||||
vowelin f1=2 f2=2300 200 300 f3=-300 80 | |||||
vowelout f1=2 f2=2300 250 300 f3=-300 80 brk | vowelout f1=2 f2=2300 250 300 f3=-300 80 brk | ||||
formants g/g+x/g2%30 | |||||
formants g/g+x/g%20 | |||||
before _ g/g_+x/g_ | before _ g/g_+x/g_ | ||||
before (r) g/g+x/g2%50 | |||||
// before (r) g/g_+x/g_%25 | |||||
after _ NULL | after _ NULL | ||||
after (@) g/xg%30 | after (@) g/xg%30 | ||||
after n g2/g+x/g2_ | |||||
lengthmod 5 | lengthmod 5 | ||||
switchvoicing k | switchvoicing k | ||||
endphoneme | endphoneme | ||||
lengthmod 2 | lengthmod 2 | ||||
wave ustop/k%40 // reduce strength of noise burst | wave ustop/k%40 // reduce strength of noise burst | ||||
before _ ustop/k_ | before _ ustop/k_ | ||||
before (r) ustop/kr%40 | |||||
before (r) ustop/kr%45 | |||||
before r/2 ustop/k%60 | before r/2 ustop/k%60 | ||||
before l ustop/kl%45 | |||||
before l/ ustop/kl%45 | |||||
before (l) ustop/kl%45 | |||||
before (i) ustop/ki%45 | before (i) ustop/ki%45 | ||||
switchvoicing g | switchvoicing g | ||||
endphoneme | endphoneme | ||||
beforenotvowel l/ | beforenotvowel l/ | ||||
formants l/l | formants l/l | ||||
after _ l/_l | after _ l/_l | ||||
after r/2 l/_l | |||||
after t l/tl | after t l/tl | ||||
after l/ l/l_long // double l, make it longer | after l/ l/l_long // double l, make it longer | ||||
endphoneme | endphoneme | ||||
phoneme l/ // used for [l] when not before a vowel | phoneme l/ // used for [l] when not before a vowel | ||||
liquid starttype (l) endtype (l) | |||||
liquid palatal starttype (l) endtype (l) | |||||
length 100 | length 100 | ||||
lengthmod 7 | lengthmod 7 | ||||
formants l/_l | formants l/_l | ||||
vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 | vowelin f1=0 f2=1000 -50 -100 f3=-200 80 amp=11 | ||||
vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22 | vowelout f1=0 f2=1000 -500 -350 f3=-300 80 rms=22 | ||||
lengthmod 2 | lengthmod 2 | ||||
wave ustop/p%50 | |||||
wave ustop/p_unasp_%90 | |||||
after _ ustop/p%70 | after _ ustop/p%70 | ||||
before _ ustop/p_%70 | before _ ustop/p_%70 | ||||
before (r) ustop/pr%35 | |||||
// before (r) ustop/pr%45 | |||||
before @- ustop/p_unasp%60 | before @- ustop/p_unasp%60 | ||||
before l ustop/pl%30 | |||||
before l/ ustop/pl%30 | |||||
before (l) ustop/pl%30 | |||||
switchvoicing b | switchvoicing b | ||||
endphoneme | endphoneme | ||||
endphoneme | endphoneme | ||||
phoneme r | |||||
vcd uvl frc starttype (r) endtype (r) | |||||
vowelin f1=1 f2=1800 10 10 f3=-200 100 | |||||
vowelout f1=1 f2=1800 10 10 f3=-200 100 | |||||
phoneme r // between vowels in a word | |||||
liquid uvl starttype (r) endtype (r) | |||||
vowelin f1=0 f2=1600 -300 300 f3=-200 80 | |||||
vowelout f1=2 f2=1600 -300 300 f3=-300 80 | |||||
length 100 | length 100 | ||||
lengthmod 7 | lengthmod 7 | ||||
beforenotvowel r/2 | beforenotvowel r/2 | ||||
formants vwl_fr/r | formants vwl_fr/r | ||||
after _ vwl_fr/_r | |||||
after k vwl_fr/tr | |||||
after p vwl_fr/tr | |||||
after t vwl_fr/tr | |||||
after r/2 vwl_fr/_r | |||||
endphoneme | |||||
phoneme R // First letter of a word | |||||
liquid uvl starttype (r) endtype (r) | |||||
vowelin f1=0 f2=1600 -300 300 f3=-200 80 | |||||
vowelout f1=2 f2=1600 -300 300 f3=-300 80 | |||||
length 100 | |||||
lengthmod 0 | |||||
beforenotvowel r/2 | |||||
formants vwl_fr/r | |||||
after _ vwl_fr/_r | |||||
after (a) vwl_fr/_r | |||||
after (e) vwl_fr/_r | |||||
after (@) vwl_fr/_r | |||||
after (i) vwl_fr/_r | |||||
after (o) vwl_fr/_r | |||||
after (u) vwl_fr/_r | |||||
after y vwl_fr/_r | |||||
after (l) vwl_fr/_r | |||||
after r/2 vwl_fr/_r | |||||
endphoneme | endphoneme | ||||
phoneme r2 // silent unless followed by vowel | phoneme r2 // silent unless followed by vowel | ||||
vcd uvl frc starttype (r) endtype (r) | |||||
vowelin f1=0 f2=1000 10 10 f3=-200 100 | |||||
vowelout f1=0 f2=1200 10 10 f3=-200 100 | |||||
liquid uvl starttype (r) endtype (r) | |||||
vowelin f1=0 f2=1600 -300 300 f3=-200 80 | |||||
vowelout f1=2 f2=1600 -300 300 f3=-300 80 | |||||
length 100 | length 100 | ||||
lengthmod 7 | lengthmod 7 | ||||
beforenotvowel NULL | beforenotvowel NULL | ||||
phoneme r/2 // variant of [r] when not preceding a vowel | phoneme r/2 // variant of [r] when not preceding a vowel | ||||
liquid uvl starttype r/2 endtype r/2 | liquid uvl starttype r/2 endtype r/2 | ||||
vowelout f1=2 f2=1800 10 10 f3=-200 100 | |||||
vowelout f1=2 f2=1600 -300 300 f3=-300 80 | |||||
length 100 | length 100 | ||||
lengthmod 2 | lengthmod 2 | ||||
formants r3/r_2+r3/rx%25 | |||||
formants vwl_fr/r_+r3/rx%25 | |||||
before m r3/r_n | |||||
before n r3/r_n | before n r3/r_n | ||||
beforevowel r | |||||
endphoneme | endphoneme | ||||
lengthmod 2 | lengthmod 2 | ||||
wave ustop/t_short%40 | wave ustop/t_short%40 | ||||
before _ ustop/t_%40 | before _ ustop/t_%40 | ||||
before (r) ustop/tr%40 | |||||
before (r) ustop/t_short%40 | |||||
before r/2 ustop/t_short%50 | before r/2 ustop/t_short%50 | ||||
switchvoicing d | switchvoicing d | ||||
endphoneme | endphoneme | ||||
// Phonemes for Tamil | // Phonemes for Tamil | ||||
// This inherits from ph_hindi | // This inherits from ph_hindi | ||||
phoneme : // Lengthen previous vowel by "length" | |||||
virtual | |||||
length 50 | |||||
endphoneme | |||||
phoneme a | phoneme a | ||||
phoneme o | phoneme o | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 130 | |||||
length 160 | |||||
formants vowel/o | formants vowel/o | ||||
endphoneme | endphoneme | ||||
phoneme o: | phoneme o: | ||||
vowel starttype (o) endtype (o) | vowel starttype (o) endtype (o) | ||||
length 270 | |||||
formants vowel/o | |||||
length 280 | |||||
formants vowel/o_3 | |||||
endphoneme | endphoneme | ||||
phoneme u: | phoneme u: | ||||
vowel starttype (u) endtype (u) | vowel starttype (u) endtype (u) | ||||
length 260 | length 260 | ||||
formants vowel/u | |||||
formants vowel/u_6 | |||||
endphoneme | endphoneme | ||||
phoneme U: | phoneme U: | ||||
endphoneme | endphoneme | ||||
phoneme aI | |||||
vowel starttype (a) endtype (i) | |||||
length 230 | |||||
formants vdiph/ai_8 | |||||
endphoneme | |||||
phoneme aU | |||||
vowel long starttype (a) endtype (u) | |||||
length 200 | |||||
long | |||||
formants vdiph/aau_3 | |||||
endphoneme | |||||
// ?? This is standard [v]. Should be it [v] without the fricative noise? | // ?? This is standard [v]. Should be it [v] without the fricative noise? | ||||
phoneme v | phoneme v | ||||
vcd lbd frc | vcd lbd frc | ||||
switchvoicing f | switchvoicing f | ||||
endphoneme | endphoneme | ||||
phoneme : // Lengthen previous vowel by "length" | |||||
virtual | |||||
length 50 | |||||
phoneme t // dental variant of /t/ | |||||
vls dnt stop | |||||
vowelin f1=0 f2=1600 -300 300 f3=-100 80 | |||||
vowelout f1=0 f2=1600 -300 250 f3=-100 80 rms=20 | |||||
lengthmod 2 | |||||
wave ustop/t_dnt2%60 | |||||
before _ ustop/t_dnt%30 | |||||
switchvoicing d | |||||
endphoneme | endphoneme | ||||
phonemetable da base | phonemetable da base | ||||
include ph_danish | include ph_danish | ||||
phonemetable rw base2 | |||||
include ph_kinyarwanda | |||||
phonemetable ml hi | |||||
include ph_malayalam | |||||
phonemetable kn hi | |||||
include ph_kannada | |||||
phonemetable bn hi | |||||
include ph_bengali | |||||
phonemetable ne hi | |||||
include ph_nepali | |||||
phonemetable mr hi | |||||
include ph_marathi | |||||
phonemetable eu base2 | |||||
include ph_basque | |||||
phonemetable mn base | |||||
include ph_mongolian | |||||
# ADD BSC32 /nologo | # ADD BSC32 /nologo | ||||
LINK32=link.exe | LINK32=link.exe | ||||
# ADD BASE LINK32 wxmsw28u_core.lib wxbase28u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib /nologo /subsystem:windows /machine:I386 /libpath:".\..\..\lib\vc_lib" | # ADD BASE LINK32 wxmsw28u_core.lib wxbase28u.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib /nologo /subsystem:windows /machine:I386 /libpath:".\..\..\lib\vc_lib" | ||||
# ADD LINK32 wxmsw28u_core.lib wxbase28u.lib wxmsw28u_adv.lib winmm.lib PAStaticWMME.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib /nologo /subsystem:windows /machine:I386 /out:"espeakedit.exe" /libpath:".\..\..\lib\vc_lib" | |||||
# ADD LINK32 wxmsw28u_core.lib wxbase28u.lib wxmsw28u_adv.lib winmm.lib PAStaticWMME.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregexu.lib wxexpat.lib wxmsw28u_html.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib /nologo /subsystem:windows /machine:I386 /out:"espeakedit.exe" /libpath:".\..\..\lib\vc_lib" | |||||
!ELSEIF "$(CFG)" == "minimal - Win32 Unicode Debug" | !ELSEIF "$(CFG)" == "minimal - Win32 Unicode Debug" | ||||
# ADD BSC32 /nologo | # ADD BSC32 /nologo | ||||
LINK32=link.exe | LINK32=link.exe | ||||
# ADD BASE LINK32 wxmsw28ud_core.lib wxbase28ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib /nologo /subsystem:windows /debug /machine:I386 /libpath:".\..\..\lib\vc_lib" | # ADD BASE LINK32 wxmsw28ud_core.lib wxbase28ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib /nologo /subsystem:windows /debug /machine:I386 /libpath:".\..\..\lib\vc_lib" | ||||
# ADD LINK32 wxmsw28ud_core.lib wxbase28ud.lib wxmsw28ud_adv.lib winmm.lib PAStaticWMME.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib PAStaticWMME.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib /nologo /subsystem:windows /debug /machine:I386 /libpath:".\..\..\lib\vc_lib" | |||||
# ADD LINK32 wxmsw28ud_core.lib wxbase28ud.lib wxmsw28ud_adv.lib wxmsw28ud_html.lib winmm.lib PAStaticWMME.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib PAStaticWMME.lib kernel32.lib user32.lib gdi32.lib comdlg32.lib winspool.lib winmm.lib shell32.lib comctl32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib advapi32.lib wsock32.lib odbc32.lib /nologo /subsystem:windows /debug /machine:I386 /libpath:".\..\..\lib\vc_lib" | |||||
!ELSEIF "$(CFG)" == "minimal - Win32 Release" | !ELSEIF "$(CFG)" == "minimal - Win32 Release" | ||||
[Setup] | [Setup] | ||||
AppName=eSpeak | AppName=eSpeak | ||||
AppVerName=eSpeak version 1.40 | |||||
AppVerName=eSpeak version 1.41.01 | |||||
AppCopyright=Licensed under GNU General Public License version 3. (See file License.txt for details). | AppCopyright=Licensed under GNU General Public License version 3. (See file License.txt for details). | ||||
WindowVisible=yes | WindowVisible=yes | ||||
$26: Result := 'lv'; | $26: Result := 'lv'; | ||||
$2a: Result := 'vi'; | $2a: Result := 'vi'; | ||||
$2b: Result := 'hy'; | $2b: Result := 'hy'; | ||||
$2d: Result := 'eu'; | |||||
$2f: Result := 'mk'; | $2f: Result := 'mk'; | ||||
$36: Result := 'af'; | $36: Result := 'af'; | ||||
$39: Result := 'hi'; | $39: Result := 'hi'; | ||||
'el': value := $408; | 'el': value := $408; | ||||
'en': value := $409; | 'en': value := $409; | ||||
'es': value := $40a; | 'es': value := $40a; | ||||
'eu': value := $42d; | |||||
'fi': value := $40b; | 'fi': value := $40b; | ||||
'fr': value := $40c; | 'fr': value := $40c; | ||||
'hi': value := $439; | 'hi': value := $439; |
[Setup] | [Setup] | ||||
AppName=eSpeakEdit | AppName=eSpeakEdit | ||||
AppVerName=eSpeakEdit version 1.40 | |||||
AppVerName=eSpeakEdit version 1.41.02 | |||||
DefaultDirName={pf}\eSpeak | DefaultDirName={pf}\eSpeak | ||||
DefaultGroupName=eSpeak | DefaultGroupName=eSpeak | ||||
OutputBaseFilename=setup_espeakedit | OutputBaseFilename=setup_espeakedit | ||||
DirExistsWarning=no | DirExistsWarning=no | ||||
ShowLanguageDialog=auto | ShowLanguageDialog=auto | ||||
[Icons] | |||||
Name: "{group}\espeakedit"; Filename: "{app}\espeakedit.exe"; WorkingDir: "{app}"; Flags: runmaximized | |||||
Name: "{group}\Uninstall espeakedit"; Filename: "{uninstallexe}" | |||||
[Files] | [Files] | ||||
Source: "espeakedit.exe"; DestDir: "{app}" | Source: "espeakedit.exe"; DestDir: "{app}" | ||||
;Source: "dictsource\*"; DestDir: "{app}\dictsource"; Flags: recursesubdirs | ;Source: "dictsource\*"; DestDir: "{app}\dictsource"; Flags: recursesubdirs |
static FILE *f_log = NULL; | static FILE *f_log = NULL; | ||||
extern char *dir_dictionary; | extern char *dir_dictionary; | ||||
extern char word_phonemes[N_WORD_PHONEMES]; // a word translated into phoneme codes | |||||
static int linenum; | static int linenum; | ||||
static int error_count; | static int error_count; | ||||
static int transpose_offset; // transpose character range for LookupDictList() | static int transpose_offset; // transpose character range for LookupDictList() | ||||
unsigned char bad_phoneme[4]; | unsigned char bad_phoneme[4]; | ||||
static char nullstring[] = {0}; | static char nullstring[] = {0}; | ||||
WORD_TAB winfo; | |||||
char decoded_phonemes[128]; | |||||
comment = NULL; | comment = NULL; | ||||
text_not_phonemes = 0; | text_not_phonemes = 0; | ||||
phonetic = word = nullstring; | phonetic = word = nullstring; | ||||
if(text_not_phonemes) | if(text_not_phonemes) | ||||
{ | { | ||||
if(word[0] == '_') | |||||
{ | |||||
// This is a special word, used by eSpeak. Translate this into phonemes now | |||||
// memset(&winfo,0,sizeof(winfo)); | |||||
// TranslateWord(translator,phonetic,0,&winfo); // but *_dict is not loaded ? | |||||
// DecodePhonemes(word_phonemes,decoded_phonemes); | |||||
//printf("Translator %x %s [%s] [%s]\n",translator->translator_name,word,phonetic,decoded_phonemes); | |||||
} | |||||
// this is replacement text, so don't encode as phonemes. Restrict the length of the replacement word | // this is replacement text, so don't encode as phonemes. Restrict the length of the replacement word | ||||
strncpy0(encoded_ph,phonetic,N_WORD_BYTES-4); | strncpy0(encoded_ph,phonetic,N_WORD_BYTES-4); | ||||
} | } |
case ET_KEY: | case ET_KEY: | ||||
{ | { | ||||
const char* data = the_command->u.my_key; | |||||
const char* data = the_command->u.my_key.key_name; | |||||
SHOW("display_espeak_command > (0x%x) KEY=%c\n", the_command, data); | SHOW("display_espeak_command > (0x%x) KEY=%c\n", the_command, data); | ||||
} | } | ||||
break; | break; | ||||
case ET_CHAR: | case ET_CHAR: | ||||
{ | { | ||||
const wchar_t data = the_command->u.my_char; | |||||
const wchar_t data = the_command->u.my_char.character; | |||||
SHOW("display_espeak_command > (0x%x) CHAR=%c\n", the_command, (char)data); | SHOW("display_espeak_command > (0x%x) CHAR=%c\n", the_command, (char)data); | ||||
} | } | ||||
break; | break; |
#include "wx/mdi.h" | #include "wx/mdi.h" | ||||
#include "wx/laywin.h" | #include "wx/laywin.h" | ||||
#include "wx/sashwin.h" | #include "wx/sashwin.h" | ||||
#include "wx/utils.h" | |||||
#include "wx/html/htmlwin.h" | |||||
#include <locale.h> | #include <locale.h> | ||||
#include "speak_lib.h" | #include "speak_lib.h" | ||||
#include "prosodydisplay.h" | #include "prosodydisplay.h" | ||||
#ifdef deleted | |||||
static const char *about_string = "espeakedit: %s\nAuthor: Jonathan Duddington (c) 2007\n\n" | static const char *about_string = "espeakedit: %s\nAuthor: Jonathan Duddington (c) 2007\n\n" | ||||
"Licensed under GNU General Public License version 3\n" | "Licensed under GNU General Public License version 3\n" | ||||
"http://espeak.sourceforge.net/"; | "http://espeak.sourceforge.net/"; | ||||
#endif | |||||
static const char *about_string = "<font size=0><b>espeakedit </b> %s<br>Author: Jonathan Duddington (c) 2007<br>" | |||||
"<a href=\"http://espeak.sourceforge.net/\">http://espeak.sourceforge.net</a><br>" | |||||
"Licensed under <a href=\"http://espeak.sourceforge.net/license.html\">GNU General Public License version 3</a></font>"; | |||||
const char *path_data = "/home/jsd1/speechdata/phsource"; | |||||
const char *path_data; | |||||
extern void TestTest(int control); | extern void TestTest(int control); | ||||
extern void CompareLexicon(int); | extern void CompareLexicon(int); | ||||
int MyApp::OnExit() | int MyApp::OnExit() | ||||
{//================ | {//================ | ||||
ConfigSave(1); | ConfigSave(1); | ||||
myframe->CreateStatusBar(); | myframe->CreateStatusBar(); | ||||
myframe->Maximize(); | |||||
myframe->Show(TRUE); | myframe->Show(TRUE); | ||||
SetTopWindow(myframe); | SetTopWindow(myframe); | ||||
BEGIN_EVENT_TABLE(MyFrame, wxMDIParentFrame) | BEGIN_EVENT_TABLE(MyFrame, wxMDIParentFrame) | ||||
EVT_CHAR(MyFrame::OnKey) | EVT_CHAR(MyFrame::OnKey) | ||||
EVT_MENU(MENU_ABOUT, MyFrame::OnAbout) | EVT_MENU(MENU_ABOUT, MyFrame::OnAbout) | ||||
EVT_MENU(MENU_DOCS, MyFrame::OnAbout) | |||||
EVT_MENU(MENU_SPECTRUM, MyFrame::OnNewWindow) | EVT_MENU(MENU_SPECTRUM, MyFrame::OnNewWindow) | ||||
EVT_MENU(MENU_SPECTRUM2, MyFrame::OnNewWindow) | EVT_MENU(MENU_SPECTRUM2, MyFrame::OnNewWindow) | ||||
EVT_MENU(MENU_PROSODY, MyFrame::OnProsody) | EVT_MENU(MENU_PROSODY, MyFrame::OnProsody) | ||||
if((result = LoadPhData()) != 1) | if((result = LoadPhData()) != 1) | ||||
{ | { | ||||
if(result == -1) | if(result == -1) | ||||
wxLogError(_T("Failed to load phoneme data,\nneeds espeak-data/phontab,phondata,phonindex\nPath = ")+wxString(path_home,wxConvLocal)); | |||||
wxLogError(_T("Failed to read espeak-data/phontab,phondata,phonindex\nPath = ")+wxString(path_home,wxConvLocal)+_T("\n\nThe 'eSpeak' package needs to be installed")); | |||||
else | else | ||||
wxLogError(_T("Wrong version of espeak-data: 0x%x (expects 0x%x)"),result,version_phdata); | |||||
wxLogError(_T("Wrong version of espeak-data at:\n")+ wxString(path_home,wxConvLocal)+_T("\nVersion 0x%x (expects 0x%x)"),result,version_phdata); | |||||
error_flag = 1; | error_flag = 1; | ||||
} | } | ||||
} | } | ||||
void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event)) | |||||
{//=================================================== | |||||
#ifdef deleted | |||||
void MyFrame::OnAbout(wxCommandEvent& event) | |||||
{//========================================= | |||||
int result; | |||||
char buf[300]; | |||||
wxString url_docs; | |||||
switch(event.GetId()) | |||||
{ | |||||
case MENU_ABOUT: | |||||
sprintf(buf,about_string,espeak_Info(NULL)); | |||||
(void)wxMessageBox(wxString(buf,wxConvLocal), _T("About eSpeak Editor")); | |||||
break; | |||||
case MENU_DOCS: | |||||
sprintf(buf,"%s/docs/docindex.html",path_home); | |||||
url_docs = wxString(buf,wxConvLocal); | |||||
result = wxLaunchDefaultBrowser(url_docs); | |||||
if(result == 0) | |||||
wxLogStatus(_T("Failed to launch browser")); | |||||
break; | |||||
} | |||||
} | |||||
#endif | |||||
class HtmlWindow: public wxHtmlWindow | |||||
{ | |||||
public: | |||||
HtmlWindow(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style); | |||||
void OnLinkClicked(const wxHtmlLinkInfo& link); | |||||
}; | |||||
HtmlWindow::HtmlWindow(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style): | |||||
wxHtmlWindow(parent, id, pos, size, style) | |||||
{ | |||||
} | |||||
void HtmlWindow::OnLinkClicked(const wxHtmlLinkInfo& link) | |||||
{ | |||||
if(wxLaunchDefaultBrowser(link.GetHref()) == FALSE) | |||||
wxLogStatus(_T("Failed to launch default browser: "+link.GetHref())); | |||||
} | |||||
void MyFrame::OnAbout(wxCommandEvent& event) | |||||
{//========================================= | |||||
int result; | |||||
char buf[300]; | char buf[300]; | ||||
wxString url_docs; | |||||
wxBoxSizer *topsizer; | |||||
HtmlWindow *html; | |||||
wxDialog dlg(this, wxID_ANY, wxString(_("About"))); | |||||
topsizer = new wxBoxSizer(wxVERTICAL); | |||||
switch(event.GetId()) | |||||
{ | |||||
case MENU_ABOUT: | |||||
{ | |||||
sprintf(buf,about_string,espeak_Info(NULL)); | |||||
html = new HtmlWindow(&dlg, wxID_ANY, wxDefaultPosition, wxSize(380, 160), wxHW_SCROLLBAR_NEVER); | |||||
html -> SetBorders(0); | |||||
html -> SetPage(wxString(buf,wxConvLocal)); | |||||
html -> SetSize(html -> GetInternalRepresentation() -> GetWidth(), | |||||
html -> GetInternalRepresentation() -> GetHeight()); | |||||
topsizer -> Add(html, 1, wxALL, 10); | |||||
//#if wxUSE_STATLINE | |||||
// topsizer -> Add(new wxStaticLine(&dlg, wxID_ANY), 0, wxEXPAND | wxLEFT | wxRIGHT, 10); | |||||
//#endif // wxUSE_STATLINE | |||||
wxButton *bu1 = new wxButton(&dlg, wxID_OK, _("OK")); | |||||
bu1 -> SetDefault(); | |||||
topsizer -> Add(bu1, 0, wxALL | wxALIGN_RIGHT, 15); | |||||
sprintf(buf,about_string,espeak_Info(NULL)); | |||||
(void)wxMessageBox(wxString(buf,wxConvLocal), _T("About eSpeak Editor")); | |||||
dlg.SetSizer(topsizer); | |||||
topsizer -> Fit(&dlg); | |||||
dlg.ShowModal(); | |||||
} | |||||
break; | |||||
case MENU_DOCS: | |||||
strcpy(buf,"/docs/docindex.html"); | |||||
url_docs = wxGetCwd() + wxString(buf,wxConvLocal); // look for "docs" in the current directory | |||||
if(!wxFileExists(url_docs)) | |||||
{ | |||||
strcpy(buf,"http://espeak.sourceforge.net/docindex.html"); | |||||
url_docs = wxString(buf,wxConvLocal); | |||||
} | |||||
else | |||||
{ | |||||
url_docs = _T("file://") + url_docs; | |||||
} | |||||
result = wxLaunchDefaultBrowser(url_docs); | |||||
if(result == 0) | |||||
wxLogStatus(_T("Failed to launch default browser: "+url_docs)); | |||||
break; | |||||
} | |||||
} | } | ||||
void OnOptions2(int event_id) | void OnOptions2(int event_id) | ||||
{//========================== | {//========================== | ||||
wxString string; | wxString string; |
{//============================================= | {//============================================= | ||||
int id; | int id; | ||||
if(currentcanvas == NULL) | |||||
return; | |||||
switch(id = event.GetId()) | switch(id = event.GetId()) | ||||
{ | { | ||||
case T_ZOOMIN: | case T_ZOOMIN: | ||||
{//============================================= | {//============================================= | ||||
int id; | int id; | ||||
if(currentcanvas == NULL) | |||||
return; | |||||
switch(id = event.GetId()) | switch(id = event.GetId()) | ||||
{ | { | ||||
case T_AMPFRAME: | case T_AMPFRAME: | ||||
int id; | int id; | ||||
wxString string; | wxString string; | ||||
int height; | |||||
int width; | |||||
int x; | |||||
int y2 = 420; | |||||
int y3 = 520; | |||||
wxClientDisplayRect(&x,&y,&width, &height); | |||||
#ifdef PLATFORM_WINDOWS | |||||
if(height <= 768) | |||||
{ | |||||
y2 = 410; | |||||
y3 = 508; | |||||
} | |||||
#else | |||||
if(height <= 800) | |||||
{ | |||||
y2 = 378; | |||||
y3 = 456; | |||||
} | |||||
#endif | |||||
y = 24; | y = 24; | ||||
xplace = 28; | xplace = 28; | ||||
id = 201; | id = 201; | ||||
t_zoomout = new wxButton(this,T_ZOOMOUT,_T("Zoom-"),wxPoint(16,420)); | |||||
t_zoomin = new wxButton(this,T_ZOOMIN,_T("Zoom+"),wxPoint(106,420)); | |||||
t_zoomout = new wxButton(this,T_ZOOMOUT,_T("Zoom-"),wxPoint(16,y2)); | |||||
t_zoomin = new wxButton(this,T_ZOOMIN,_T("Zoom+"),wxPoint(106,y2)); | |||||
y=468; | |||||
y = y2 + 46; | |||||
t_amplitude = new wxSpinCtrl(this,T_AMPLITUDE,_T(""), | t_amplitude = new wxSpinCtrl(this,T_AMPLITUDE,_T(""), | ||||
wxPoint(6,y),wxSize(52,24),wxTE_CENTRE,0,y+130); | wxPoint(6,y),wxSize(52,24),wxTE_CENTRE,0,y+130); | ||||
t_lab[2] = new wxStaticText(this,-1,_T("% amp - Sequence"),wxPoint(61,y+4)); | t_lab[2] = new wxStaticText(this,-1,_T("% amp - Sequence"),wxPoint(61,y+4)); | ||||
// wxPoint(6,400),wxSize(52,24),wxTE_CENTRE,0,500); | // wxPoint(6,400),wxSize(52,24),wxTE_CENTRE,0,500); | ||||
t_orig_seq = new wxStaticText(this,-1,_T("mS"),wxPoint(61,y+30)); | t_orig_seq = new wxStaticText(this,-1,_T("mS"),wxPoint(61,y+30)); | ||||
t_pitch = new wxStaticText(this,-1,_T(""),wxPoint(4,520),wxSize(192,24)); | |||||
t_pitch = new wxStaticText(this,-1,_T(""),wxPoint(4,y3),wxSize(192,24)); | |||||
pitchgraph = new ByteGraph(this,wxPoint(0,538),wxSize(200,140)); | |||||
pitchgraph = new ByteGraph(this,wxPoint(0,y3+18),wxSize(200,140)); | |||||
pitchgraph->SetData(128,env_fall); | pitchgraph->SetData(128,env_fall); | ||||
pitchgraph->ShowSpectrum(1); | pitchgraph->ShowSpectrum(1); | ||||
pitchgraph->Show(); | pitchgraph->Show(); |
MENU_SPECTRUM2, | MENU_SPECTRUM2, | ||||
MENU_CLOSE_ALL, | MENU_CLOSE_ALL, | ||||
MENU_ABOUT, | MENU_ABOUT, | ||||
MENU_DOCS, | |||||
MENU_OPTIONS, | MENU_OPTIONS, | ||||
MENU_PARAMS, | MENU_PARAMS, |
lexicon_menu->Append(MENU_LEXICON_IT2, _("Italian, pass 2")); | lexicon_menu->Append(MENU_LEXICON_IT2, _("Italian, pass 2")); | ||||
tools_menu = new wxMenu; | tools_menu = new wxMenu; | ||||
tools_menu->Append(MENU_VOWELCHART, _("Make &Vowels Chart..."), vowelchart_menu); | |||||
tools_menu->Append(MENU_VOWELCHART, _("Make &Vowels Chart"), vowelchart_menu); | |||||
// tools_menu->Append(MENU_LOAD_WAV, _T("Analyse WAV file")); | // tools_menu->Append(MENU_LOAD_WAV, _T("Analyse WAV file")); | ||||
tools_menu->Append(MENU_LEXICON, _("Compare &Lexicon..."), lexicon_menu); | |||||
tools_menu->Append(MENU_LEXICON, _("Compare &Lexicon"), lexicon_menu); | |||||
tools_menu->Append(MENU_TO_UTF8, _("Convert file to &UTF8...")); | tools_menu->Append(MENU_TO_UTF8, _("Convert file to &UTF8...")); | ||||
tools_menu->Append(MENU_COUNT_WORDS, _("Count word &frequencies...")); | tools_menu->Append(MENU_COUNT_WORDS, _("Count word &frequencies...")); | ||||
tools_menu->Append(MENU_TEST , _("Test (temporary)")); | tools_menu->Append(MENU_TEST , _("Test (temporary)")); | ||||
// HELP MENU | // HELP MENU | ||||
help_menu = new wxMenu; | help_menu = new wxMenu; | ||||
help_menu->Append(MENU_DOCS, _("eSpeak &Documentation")); | |||||
help_menu->Append(MENU_ABOUT, _("&About")); | help_menu->Append(MENU_ABOUT, _("&About")); | ||||
int value; | int value; | ||||
int subtract; | int subtract; | ||||
int repeat = 0; | int repeat = 0; | ||||
int wflags = 0; | |||||
unsigned int flags; | unsigned int flags; | ||||
char ph_roman[30]; | char ph_roman[30]; | ||||
char number_chars[N_WORD_BYTES]; | char number_chars[N_WORD_BYTES]; | ||||
} | } | ||||
sprintf(number_chars," %d ",acc); | sprintf(number_chars," %d ",acc); | ||||
TranslateNumber(tr, &number_chars[1], p, &flags, 0); | |||||
if(tr->langopts.numbers & NUM_ROMAN_ORDINAL) | |||||
wflags |= FLAG_ORDINAL; | |||||
TranslateNumber(tr, &number_chars[1], p, &flags, wflags); | |||||
if(tr->langopts.numbers & NUM_ROMAN_AFTER) | if(tr->langopts.numbers & NUM_ROMAN_AFTER) | ||||
strcat(ph_out,ph_roman); | strcat(ph_out,ph_roman); | ||||
} | } | ||||
static int LookupThousands(Translator *tr, int value, int thousandplex, char *ph_out) | |||||
{//================================================================================== | |||||
static int LookupThousands(Translator *tr, int value, int thousandplex, int thousands_exact, char *ph_out) | |||||
{//======================================================================================================= | |||||
int found; | int found; | ||||
int found_value=0; | |||||
char string[12]; | char string[12]; | ||||
char ph_of[12]; | char ph_of[12]; | ||||
char ph_thousands[40]; | char ph_thousands[40]; | ||||
ph_of[0] = 0; | ph_of[0] = 0; | ||||
// first look fora match with the exact value of thousands | |||||
sprintf(string,"_%dM%d",value,thousandplex); | |||||
// first look for a match with the exact value of thousands | |||||
if(thousands_exact) | |||||
{ | |||||
// is there a different pronunciation if there are no hundreds,tens,or units ? (LANG=ta) | |||||
sprintf(string,"_%dM%dx",value,thousandplex); | |||||
found_value = Lookup(tr, string, ph_thousands); | |||||
} | |||||
if(found_value == 0) | |||||
{ | |||||
sprintf(string,"_%dM%d",value,thousandplex); | |||||
found_value = Lookup(tr, string, ph_thousands); | |||||
} | |||||
if((found = Lookup(tr, string, ph_thousands)) == 0) | |||||
if(found_value == 0) | |||||
{ | { | ||||
if((value % 100) >= 20) | if((value % 100) >= 20) | ||||
{ | { | ||||
Lookup(tr, "_0of", ph_of); | Lookup(tr, "_0of", ph_of); | ||||
} | } | ||||
sprintf(string,"_%s%d",M_Variant(value),thousandplex); | |||||
if(Lookup(tr, string, ph_thousands) == 0) | |||||
found = 0; | |||||
if(thousands_exact) | |||||
{ | |||||
// is there a different pronunciation if there are no hundreds,tens,or units ? | |||||
sprintf(string,"_%s%dx",M_Variant(value), thousandplex); | |||||
found = Lookup(tr, string, ph_thousands); | |||||
} | |||||
if(found == 0) | |||||
{ | { | ||||
// repeat "thousand" if higher order names are not available | |||||
sprintf(string,"_%dM1",value); | |||||
if((found = Lookup(tr, string, ph_thousands)) == 0) | |||||
Lookup(tr, "_0M1", ph_thousands); | |||||
sprintf(string,"_%s%d",M_Variant(value), thousandplex); | |||||
if(Lookup(tr, string, ph_thousands) == 0) | |||||
{ | |||||
// repeat "thousand" if higher order names are not available | |||||
sprintf(string,"_%dM1",value); | |||||
if((found_value = Lookup(tr, string, ph_thousands)) == 0) | |||||
Lookup(tr, "_0M1", ph_thousands); | |||||
} | |||||
} | } | ||||
} | } | ||||
sprintf(ph_out,"%s%s",ph_of,ph_thousands); | sprintf(ph_out,"%s%s",ph_of,ph_thousands); | ||||
return(found); | |||||
return(found_value); | |||||
} | } | ||||
static int LookupNum2(Translator *tr, int value, int control, char *ph_out) | static int LookupNum2(Translator *tr, int value, int control, char *ph_out) | ||||
{//======================================================================== | {//======================================================================== | ||||
// Lookup a 2 digit number | // Lookup a 2 digit number | ||||
// control bit 0: tens and units (use special form of '1') | |||||
// control bit 1: ordinal number | |||||
// control bit 2: use feminine form of '2' | |||||
// control bit 3: speak zero tens | |||||
// control bit 0: ordinal number | |||||
// control bit 1: tens and units (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 | |||||
int found; | int found; | ||||
int ix; | int ix; | ||||
found = 0; | found = 0; | ||||
ph_ordinal[0] = 0; | ph_ordinal[0] = 0; | ||||
if(control & 4) | |||||
if(control & 8) | |||||
{ | { | ||||
sprintf(string,"_%df",value); | sprintf(string,"_%df",value); | ||||
found = Lookup(tr, string, ph_digits); | found = Lookup(tr, string, ph_digits); | ||||
} | } | ||||
if(control & 2) | |||||
else | |||||
if(control & 1) | |||||
{ | { | ||||
strcpy(ph_ordinal, ph_ordinal2); | strcpy(ph_ordinal, ph_ordinal2); | ||||
sprintf(string,"_%do",value); | |||||
if((found = Lookup(tr, string, ph_digits)) != 0) | |||||
if(control & 4) | |||||
{ | |||||
sprintf(string,"_%dox",value); // LANG=hu, special word for 1. 2. when there are no higher digits | |||||
found = Lookup(tr, string, ph_digits); | |||||
} | |||||
if(found == 0) | |||||
{ | { | ||||
found_ordinal = 1; | |||||
sprintf(string,"_%do",value); | |||||
found = Lookup(tr, string, ph_digits); | |||||
} | } | ||||
found_ordinal = found; | |||||
} | } | ||||
if(found == 0) | if(found == 0) | ||||
{ | { | ||||
if((value == 1) && (control & 1)) | |||||
if((value == 1) && (control & 2)) | |||||
{ | { | ||||
if(Lookup(tr, "_1a", ph_out) != 0) | |||||
if(Lookup(tr, "_1a", ph_out) != 0) // LANG=de, "eins" | |||||
return(0); | return(0); | ||||
} | } | ||||
sprintf(string,"_%d",value); | sprintf(string,"_%d",value); | ||||
// no, speak as tens+units | // no, speak as tens+units | ||||
if((control & 8) && (value < 10)) | |||||
if((control & 0x10) && (value < 10)) | |||||
{ | { | ||||
// speak leading zero | // speak leading zero | ||||
Lookup(tr, "_0", ph_tens); | Lookup(tr, "_0", ph_tens); | ||||
{ | { | ||||
units = (value % 10); | units = (value % 10); | ||||
if((control & 2) && ((units == 0) || (tr->langopts.numbers & 0x10))) | |||||
if((control & 1) && ((units == 0) || (tr->langopts.numbers & 0x10))) | |||||
{ | { | ||||
sprintf(string,"_%dXo",value / 10); | sprintf(string,"_%dXo",value / 10); | ||||
if(Lookup(tr, string, ph_tens) != 0) | if(Lookup(tr, string, ph_tens) != 0) | ||||
if(units > 0) | if(units > 0) | ||||
{ | { | ||||
found = 0; | found = 0; | ||||
if(control & 4) | |||||
if(control & 8) | |||||
{ | { | ||||
// is there a variant form of this number? | // is there a variant form of this number? | ||||
sprintf(string,"_%df",units); | sprintf(string,"_%df",units); | ||||
found = Lookup(tr, string, ph_digits); | found = Lookup(tr, string, ph_digits); | ||||
} | } | ||||
if((control & 2) && ((tr->langopts.numbers & 0x10) == 0)) | |||||
if((control & 1) && ((tr->langopts.numbers & 0x10) == 0)) | |||||
{ | { | ||||
// ordinal | // ordinal | ||||
sprintf(string,"_%do",units); | sprintf(string,"_%do",units); | ||||
} | } | ||||
} | } | ||||
if((control & 2) && (found_ordinal == 0) && (ph_ordinal[0] == 0)) | |||||
if((control & 1) && (found_ordinal == 0) && (ph_ordinal[0] == 0)) | |||||
{ | { | ||||
if((value >= 20) && (((value % 10) == 0) || (tr->langopts.numbers & 0x10))) | if((value >= 20) && (((value % 10) == 0) || (tr->langopts.numbers & 0x10))) | ||||
Lookup(tr, "_ord20", ph_ordinal); | Lookup(tr, "_ord20", ph_ordinal); | ||||
// bit 1, ordinal number | // bit 1, ordinal number | ||||
int found; | int found; | ||||
int hundreds; | int hundreds; | ||||
int tensunits; | |||||
int x; | int x; | ||||
int exact; | |||||
char string[12]; // for looking up entries in **_list | char string[12]; // for looking up entries in **_list | ||||
char buf1[100]; | char buf1[100]; | ||||
char buf2[100]; | char buf2[100]; | ||||
char ph_thousand_and[12]; | char ph_thousand_and[12]; | ||||
hundreds = value / 100; | hundreds = value / 100; | ||||
tensunits = value % 100; | |||||
buf1[0] = 0; | buf1[0] = 0; | ||||
if(hundreds > 0) | if(hundreds > 0) | ||||
ph_thousand_and[0] = 0; | ph_thousand_and[0] = 0; | ||||
found = 0; | found = 0; | ||||
if((control & 2) && ((value % 100) == 0)) | |||||
if((control & 2) && (tensunits == 0)) | |||||
{ | { | ||||
// ordinal number, with no tens or units | // ordinal number, with no tens or units | ||||
found = Lookup(tr, "_0Co", ph_100); | found = Lookup(tr, "_0Co", ph_100); | ||||
{ | { | ||||
ph_digits[0] = 0; | ph_digits[0] = 0; | ||||
if(LookupThousands(tr, hundreds / 10, thousandplex+1, ph_10T) == 0) | |||||
exact = 0; | |||||
if ((value % 1000) == 0) | |||||
exact = 1; | |||||
if(LookupThousands(tr, hundreds / 10, thousandplex+1, exact, ph_10T) == 0) | |||||
{ | { | ||||
x = 0; | x = 0; | ||||
if(tr->langopts.numbers2 & (1 << (thousandplex+1))) | if(tr->langopts.numbers2 & (1 << (thousandplex+1))) | ||||
x = 4; | |||||
x = 8; // use variant (feminine) for before thousands and millions | |||||
LookupNum2(tr, hundreds/10, x, ph_digits); | LookupNum2(tr, hundreds/10, x, ph_digits); | ||||
} | } | ||||
suppress_null = 1; | suppress_null = 1; | ||||
found = 0; | found = 0; | ||||
if((value % 1000) == 100) | |||||
if(tensunits == 0) | |||||
{ | { | ||||
// is there a special pronunciation for exactly 100 ? | |||||
found = Lookup(tr, "_1C0", ph_digits); | |||||
// is there a special pronunciation for exactly n00 ? | |||||
sprintf(string,"_%dC0",hundreds); | |||||
found = Lookup(tr, string, ph_digits); | |||||
} | } | ||||
if(!found) | if(!found) | ||||
{ | { | ||||
} | } | ||||
else | else | ||||
{ | { | ||||
if((hundreds > 1) || ((tr->langopts.numbers & 0x400) == 0)) | |||||
if((hundreds > 1) || ((tr->langopts.numbers & NUM_OMIT_1_HUNDRED) == 0)) | |||||
{ | { | ||||
LookupNum2(tr, hundreds, 0, ph_digits); | LookupNum2(tr, hundreds, 0, ph_digits); | ||||
} | } | ||||
} | } | ||||
ph_hundred_and[0] = 0; | ph_hundred_and[0] = 0; | ||||
if((tr->langopts.numbers & 0x40) && ((value % 100) != 0)) | |||||
if((tr->langopts.numbers & 0x40) && (tensunits != 0)) | |||||
{ | { | ||||
if((value > 100) || ((control & 1) && (thousandplex==0))) | if((value > 100) || ((control & 1) && (thousandplex==0))) | ||||
{ | { | ||||
buf2[0] = 0; | buf2[0] = 0; | ||||
value = value % 100; | |||||
if((value != 0) || (suppress_null == 0)) | |||||
if((tensunits != 0) || (suppress_null == 0)) | |||||
{ | { | ||||
x = 0; | x = 0; | ||||
if(thousandplex==0) | if(thousandplex==0) | ||||
{ | { | ||||
x = 1; // allow "eins" for 1 rather than "ein" | |||||
x = 2; // allow "eins" for 1 rather than "ein" | |||||
if(control & 2) | if(control & 2) | ||||
x = 3; // ordinal number | x = 3; // ordinal number | ||||
if((value < 100) && !(control & 1)) | |||||
x |= 4; // tens and units only, no higher digits | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
if(tr->langopts.numbers2 & (1 << thousandplex)) | if(tr->langopts.numbers2 & (1 << thousandplex)) | ||||
x = 4; // use variant (feminine) for before thousands and millions | |||||
x = 8; // use variant (feminine) for before thousands and millions | |||||
} | } | ||||
if(LookupNum2(tr, value, x, buf2) != 0) | |||||
if(LookupNum2(tr, tensunits, x, buf2) != 0) | |||||
{ | { | ||||
if(tr->langopts.numbers & 0x80) | if(tr->langopts.numbers & 0x80) | ||||
ph_hundred_and[0] = 0; // don't put 'and' after 'hundred' if there's 'and' between tens and units | ph_hundred_and[0] = 0; // don't put 'and' after 'hundred' if there's 'and' between tens and units | ||||
int suppress_null = 0; | int suppress_null = 0; | ||||
int decimal_point = 0; | int decimal_point = 0; | ||||
int thousandplex = 0; | int thousandplex = 0; | ||||
int thousands_exact = 1; | |||||
int thousands_inc = 0; | int thousands_inc = 0; | ||||
int prev_thousands = 0; | int prev_thousands = 0; | ||||
int ordinal = 0; | int ordinal = 0; | ||||
char ph_buf[200]; | char ph_buf[200]; | ||||
char ph_buf2[50]; | char ph_buf2[50]; | ||||
char suffix[20]; | char suffix[20]; | ||||
char *wordptr; | |||||
unsigned int dictflags[2]; | |||||
static const char str_pause[2] = {phonPAUSE_NOLINK,0}; | static const char str_pause[2] = {phonPAUSE_NOLINK,0}; | ||||
// ordinal number is indicated by dot after the number | // ordinal number is indicated by dot after the number | ||||
ordinal = 2; | ordinal = 2; | ||||
word[ix] = ' '; | word[ix] = ' '; | ||||
if(tr->translator_name == L('h','u')) | |||||
{ | |||||
// lang=hu don't treat dot as ordinal indicator if the next word is a month name ($alt) | |||||
dictflags[0] = 0; | |||||
wordptr = &word[ix+2]; | |||||
LookupDictList(tr, &wordptr, ph_buf, dictflags, 0, NULL); | |||||
if(dictflags[0] & FLAG_ALT_TRANS) // TEST | |||||
ordinal = 0; | |||||
} | |||||
} | } | ||||
else | else | ||||
{ | { | ||||
} | } | ||||
} | } | ||||
if(wflags & FLAG_ORDINAL) | |||||
ordinal = 2; | |||||
ph_append[0] = 0; | ph_append[0] = 0; | ||||
ph_buf2[0] = 0; | ph_buf2[0] = 0; | ||||
ix = n_digits + thousands_inc; | ix = n_digits + thousands_inc; | ||||
while(isdigit(word[ix]) && isdigit(word[ix+1]) && isdigit(word[ix+2])) | while(isdigit(word[ix]) && isdigit(word[ix+1]) && isdigit(word[ix+2])) | ||||
{ | { | ||||
if((word[ix] != '0') || (word[ix+1] != '0') || (word[ix+2] != '0')) | |||||
thousands_exact = 0; | |||||
thousandplex++; | thousandplex++; | ||||
if(word[ix+3] == tr->langopts.thousands_sep) | if(word[ix+3] == tr->langopts.thousands_sep) | ||||
ix += (3 + thousands_inc); | ix += (3 + thousands_inc); | ||||
{ | { | ||||
if((thousandplex > 0) && (value < 1000)) | if((thousandplex > 0) && (value < 1000)) | ||||
{ | { | ||||
if((suppress_null == 0) && (LookupThousands(tr,value,thousandplex,ph_append))) | |||||
if((suppress_null == 0) && (LookupThousands(tr,value,thousandplex, thousands_exact, ph_append))) | |||||
{ | { | ||||
// found an exact match for N thousand | // found an exact match for N thousand | ||||
value = 0; | value = 0; | ||||
while(isdigit(word[n_digits+decimal_count])) | while(isdigit(word[n_digits+decimal_count])) | ||||
decimal_count++; | decimal_count++; | ||||
if(decimal_count > 1) | |||||
// if(decimal_count > 1) | |||||
{ | { | ||||
max_decimal_count = 2; | max_decimal_count = 2; | ||||
switch(decimal_mode = (tr->langopts.numbers & 0xe000)) | switch(decimal_mode = (tr->langopts.numbers & 0xe000)) | ||||
} | } | ||||
break; | break; | ||||
case 0x2000: | |||||
case 0xa000: | |||||
// Italian decimal fractions | |||||
case 0x2000: // italian, say "hundredths" is leading zero | |||||
case 0xa000: // hungarian, always say "tenths" etc. | |||||
if(decimal_count <= 4) | if(decimal_count <= 4) | ||||
{ | { | ||||
LookupNum3(tr, atoi(&word[n_digits]), ph_buf, 0,0,0); | LookupNum3(tr, atoi(&word[n_digits]), ph_buf, 0,0,0); | ||||
while(isdigit(c = word[n_digits]) && (strlen(ph_out) < (N_WORD_PHONEMES - 10))) | while(isdigit(c = word[n_digits]) && (strlen(ph_out) < (N_WORD_PHONEMES - 10))) | ||||
{ | { | ||||
// speak any remaining decimal fraction digits individually | |||||
value = word[n_digits++] - '0'; | value = word[n_digits++] - '0'; | ||||
LookupNum2(tr, value, 1, buf1); | |||||
LookupNum2(tr, value, 2, buf1); | |||||
strcat(ph_out,buf1); | strcat(ph_out,buf1); | ||||
} | } | ||||
int ix; | int ix; | ||||
SpectFrame *sf; | SpectFrame *sf; | ||||
if(spectseq == NULL) | |||||
return; | |||||
sf = spectseq->frames[sframe]; | sf = spectseq->frames[sframe]; | ||||
spectseq->amplitude = formantdlg->t_amplitude->GetValue(); | spectseq->amplitude = formantdlg->t_amplitude->GetValue(); |
#include "translate.h" | #include "translate.h" | ||||
#include "wave.h" | #include "wave.h" | ||||
const char *version_string = "1.41.01 25.Aug.09"; | |||||
const char *version_string = "1.41.08 04.Oct.09"; | |||||
const int version_phdata = 0x014100; | const int version_phdata = 0x014100; | ||||
int option_device_number = -1; | int option_device_number = -1; |
tr->langopts.param[LOPT_IT_DOUBLING] = 1; | tr->langopts.param[LOPT_IT_DOUBLING] = 1; | ||||
tr->langopts.param[LOPT_COMBINE_WORDS] = 99; // combine some prepositions with the following word | tr->langopts.param[LOPT_COMBINE_WORDS] = 99; // combine some prepositions with the following word | ||||
tr->langopts.numbers = 0x1009 + 0xa000 + NUM_ROMAN + 0x10000; | |||||
tr->langopts.numbers = 0x1009 + 0xa000 + NUM_ROMAN + NUM_ROMAN_ORDINAL + NUM_ORDINAL_DOT + NUM_OMIT_1_HUNDRED; | |||||
SetLetterVowel(tr,'y'); | SetLetterVowel(tr,'y'); | ||||
tr->langopts.spelling_stress = 1; | tr->langopts.spelling_stress = 1; | ||||
SetLengthMods(tr,3); // all equal | SetLengthMods(tr,3); // all equal | ||||
tr->langopts.stress_rule = 0; | tr->langopts.stress_rule = 0; | ||||
tr->langopts.stress_flags = 0x10004; // use 'diminished' for unstressed final syllable | tr->langopts.stress_flags = 0x10004; // use 'diminished' for unstressed final syllable | ||||
tr->letter_bits_offset = OFFSET_TAMIL; | |||||
tr->langopts.numbers2 = NUM2_100000; | |||||
if(name2 == L('t','a')) | |||||
{ | |||||
tr->letter_bits_offset = OFFSET_TAMIL; | |||||
tr->langopts.numbers = 0x1; | |||||
} | |||||
if(name2 == L('m','r')) | if(name2 == L('m','r')) | ||||
{ | { | ||||
tr->letter_bits_offset = OFFSET_DEVANAGARI; | tr->letter_bits_offset = OFFSET_DEVANAGARI; | ||||
{ | { | ||||
tr->letter_bits_offset = OFFSET_KANNADA; | tr->letter_bits_offset = OFFSET_KANNADA; | ||||
tr->langopts.numbers = 0x1; | tr->langopts.numbers = 0x1; | ||||
tr->langopts.numbers2 = NUM2_100000; | |||||
} | } | ||||
tr->langopts.param[LOPT_WORD_MERGE] = 1; // don't break vowels betwen words | tr->langopts.param[LOPT_WORD_MERGE] = 1; // don't break vowels betwen words | ||||
SetIndicLetters(tr); // call this after setting OFFSET_ | SetIndicLetters(tr); // call this after setting OFFSET_ |
ph_limit = &phonemes[N_WORD_PHONEMES]; | ph_limit = &phonemes[N_WORD_PHONEMES]; | ||||
// count the length of the word | // count the length of the word | ||||
if(*word1 == ' ') word1++; // possibly a dot was replaced by space: $dot | |||||
wordx = word1; | wordx = word1; | ||||
utf8_in(&first_char,wordx); | utf8_in(&first_char,wordx); | ||||
word_length = 0; | word_length = 0; | ||||
while((*wordx != 0) && (*wordx != ' ')) | while((*wordx != 0) && (*wordx != ' ')) | ||||
else | else | ||||
{ | { | ||||
found = LookupDictList(tr, &word1, phonemes, dictionary_flags, FLAG_ALLOW_TEXTMODE, wtab); // the original word | found = LookupDictList(tr, &word1, phonemes, dictionary_flags, FLAG_ALLOW_TEXTMODE, wtab); // the original word | ||||
if((dictionary_flags[0] & FLAG_DOT) && (wordx[1] == '.')) | |||||
{ | |||||
wordx[1] = ' '; // remove a Dot after this word | |||||
} | |||||
if(dictionary_flags[0] & FLAG_TEXTMODE) | if(dictionary_flags[0] & FLAG_TEXTMODE) | ||||
{ | { | ||||
first_char = word1[0]; | first_char = word1[0]; | ||||
max_stress = -1; | max_stress = -1; | ||||
found_dict_flag = 0; | found_dict_flag = 0; | ||||
if(flags & FLAG_FOUND) | |||||
if((flags & FLAG_FOUND) && !(flags & FLAG_TEXTMODE)) | |||||
found_dict_flag = SFLAG_DICTIONARY; | found_dict_flag = SFLAG_DICTIONARY; | ||||
while((pre_pause > 0) && (n_ph_list2 < N_PHONEME_LIST-4)) | while((pre_pause > 0) && (n_ph_list2 < N_PHONEME_LIST-4)) |
#define FLAG_NO_TRACE 0x10000 // passed to TranslateRules() to suppress dictionary lookup printout | #define FLAG_NO_TRACE 0x10000 // passed to TranslateRules() to suppress dictionary lookup printout | ||||
#define FLAG_NO_PREFIX 0x20000 | #define FLAG_NO_PREFIX 0x20000 | ||||
#define FLAG_ORDINAL 0x40000 // passed to TranslateNumber() to indicate an ordinal number | |||||
// prefix/suffix flags (bits 8 to 14, bits 16 to 22) don't use 0x8000, 0x800000 | // prefix/suffix flags (bits 8 to 14, bits 16 to 22) don't use 0x8000, 0x800000 | ||||
#define SUFX_E 0x0100 // e may have been added | #define SUFX_E 0x0100 // e may have been added | ||||
unsigned char *length_mods; | unsigned char *length_mods; | ||||
unsigned char *length_mods0; | unsigned char *length_mods0; | ||||
#define NUM_OMIT_1_HUNDRED 0x400 | |||||
#define NUM_19_HUNDRED 0x800 | |||||
#define NUM_ORDINAL_DOT 0x10000 | |||||
#define NUM_ROMAN 0x20000 | #define NUM_ROMAN 0x20000 | ||||
#define NUM_ROMAN_UC 0x40000 | #define NUM_ROMAN_UC 0x40000 | ||||
#define NUM_NOPAUSE 0x80000 | #define NUM_NOPAUSE 0x80000 | ||||
#define NUM_ROMAN_AFTER 0x200000 | |||||
#define NUM_VIGESIMAL 0x400000 | |||||
#define NUM_ROMAN_AFTER 0x200000 | |||||
#define NUM_VIGESIMAL 0x400000 | |||||
#define NUM_ROMAN_ORDINAL 0x800000 | |||||
// bits0-1=which numbers routine to use. | // bits0-1=which numbers routine to use. | ||||
// bit2= thousands separator must be space | // bit2= thousands separator must be space | ||||
// bit20='and' before hundreds | // bit20='and' before hundreds | ||||
// bit21= say "roman" after the number, not before | // bit21= say "roman" after the number, not before | ||||
// bit22= vigesimal number, if tens are not found | // bit22= vigesimal number, if tens are not found | ||||
// bit23=Roman numbers are ordinal numbers | |||||
int numbers; | int numbers; | ||||
#define NUM2_100000 0x800 // numbers for 100,000 and 10,000,000 | #define NUM2_100000 0x800 // numbers for 100,000 and 10,000,000 |
TranslDlg::TranslDlg(wxWindow *parent) : wxPanel(parent) | TranslDlg::TranslDlg(wxWindow *parent) : wxPanel(parent) | ||||
{//===================================================== | {//===================================================== | ||||
int height; | |||||
int width; | |||||
int x,y; | |||||
int height_ph = 350; | |||||
wxTextAttr attr; | |||||
wxFont font = wxFont(12,wxFONTFAMILY_ROMAN,wxFONTSTYLE_NORMAL,wxFONTWEIGHT_LIGHT,false,_T(""),wxFONTENCODING_SYSTEM); | |||||
attr.SetFont(font); | |||||
wxClientDisplayRect(&x,&y,&width, &height); | |||||
#ifdef PLATFORM_WINDOWS | |||||
if(height <= 768) | |||||
height_ph = height - 416; | |||||
#else | |||||
if(height <= 800) | |||||
height_ph = 280; | |||||
#endif | |||||
t_source = new wxTextCtrl(this,T_SOURCE,_T(""),wxPoint(0,4), | t_source = new wxTextCtrl(this,T_SOURCE,_T(""),wxPoint(0,4), | ||||
wxSize(298,250),wxTE_MULTILINE); | wxSize(298,250),wxTE_MULTILINE); | ||||
t_source->SetDefaultStyle(attr); | |||||
t_phonetic = new wxTextCtrl(this,T_PHONETIC,_T(""),wxPoint(0,262), | t_phonetic = new wxTextCtrl(this,T_PHONETIC,_T(""),wxPoint(0,262), | ||||
wxSize(298,350),wxTE_MULTILINE); | |||||
wxSize(298,height_ph),wxTE_MULTILINE | wxTE_READONLY); | |||||
t_translate = new wxButton(this,T_TRANSLATE,_T("Translate"),wxPoint(4,620)); | |||||
t_translate = new wxButton(this,T_RULES,_T("Show Rules"),wxPoint(4,652)); | |||||
t_process = new wxButton(this,T_PROCESS,_T("Speak"),wxPoint(100,620)); | |||||
y = height_ph + 270; | |||||
t_translate = new wxButton(this,T_TRANSLATE,_T("Translate"),wxPoint(4,y)); | |||||
t_translate = new wxButton(this,T_RULES,_T("Show Rules"),wxPoint(4,y+32)); | |||||
t_process = new wxButton(this,T_PROCESS,_T("Speak"),wxPoint(100,y)); | |||||
t_source->SetFocus(); | t_source->SetFocus(); | ||||
} // end of TransDlg::TransDlg | } // end of TransDlg::TransDlg |
int wave_is_busy(void* theHandler) | int wave_is_busy(void* theHandler) | ||||
{ | { | ||||
uint32_t time; | uint32_t time; | ||||
wave_get_remaining_time(total_samples_sent - 1, &time); | |||||
if (total_samples_sent >= 1) { | |||||
wave_get_remaining_time(total_samples_sent - 1, &time); | |||||
} else { | |||||
time = 0; | |||||
} | |||||
return time != 0; | return time != 0; | ||||
} | } | ||||