Browse Source

Merge branch 'development'

master
Reece H. Dunn 12 years ago
parent
commit
1336128b9b

+ 2
- 0
dictsource/de_list View File

@@ -423,6 +423,7 @@ couch _^_EN
cursor _^_EN
debugger _^_EN
dj _^_EN
download _^_EN
email _^_EN
enterprise _^_EN
event _^_EN
@@ -497,6 +498,7 @@ terminal _^_EN
trip _^_EN
tuner _^_EN
unix _^_EN
update _^_EN
venture _^_EN
website _^_EN
window _^_EN

+ 3
- 1
dictsource/en_list View File

@@ -1426,6 +1426,7 @@ imperative Imp'Er@tIv
imperfect Imp'3:fEkt
impi $1
impinging Imp'IndZIN
implacable Impl'ak@b@L
imprecise ImprIs'aIs
impregnable Impr'Egn@b@L
inanimate In'anIm@t
@@ -1471,7 +1472,8 @@ interim $1
intermediate Int3m'i:di@t
intern Int3:n $noun
interrogatory $3
inventory Inv@ntrI
inventory Inv@ntri
?3 inventory Inv@nto:ri
interface $1
intermin Int'3:mIn // interminable
intern $1 $onlys

+ 2
- 1
dictsource/en_rules View File

@@ -1402,7 +1402,8 @@
me) ch (a k
mi) ch (a k
chica (n SI2keI
ch (irA k
chi (rA kaI
_) chi (ropA kI2
a) ch (il k
bra) ch k
te) ch (K k

+ 1
- 1
dictsource/it_listx View File

@@ -1078,7 +1078,7 @@ cortes $2
cortile $2
cortisol $3
cortocircuito kO@-*totSi@-*k'uito
cosa $2
cosa $alt
cosc $alt
coscia $alt
cosen $alt2

+ 3
- 1
dictsource/it_rules View File

@@ -8,7 +8,7 @@
// Y front vowels: e i (& accents)
.L01 a à o ò ó u ù
.L02 e é è
.L03 b d g l m n r v // 's' is [z] before these

.group a
a a
@@ -321,6 +321,7 @@
s s
_) s s
A) s (A z
s (L03 z

l) s s
p) s s
@@ -377,6 +378,7 @@
.group z
z ts
A) zz ts:
A) z (A ts:

_) z (i dz
_) z (ì dz

+ 99
- 30
dictsource/kl_list View File

@@ -2,42 +2,111 @@
// This file is UTF8 encoded
// Spelling to phoneme rules for Greenlandic

b be
c se
d de
f ef
g ge
b bE
c sE
d dE
f Ef
g ji
h ha
j je
j jE
k ka
l el
m em
n en
p pe
q qa:
r er
s es
t te
v ve
w we
l El
m Em
n En
p pE
q qa
r Er
s Es
t tE
v vE
w wE
x iks
z ze
z zE

// y
// æ
// ø
// å

_0 n'u:lu
_1 at'a:seq
_2 m'arluk
_3 p'iNasut
_4 s'isamat
_5 t'al#imat
_6 arf'inil#it
_7 arfineqm'arluk
_8 arfineqp'iNasut
_9 quliNil'uat
_10 q'uilit

_dpt kom:a
// Native numbers 0-10
_0n n'u:lu
_1n at'a:sEq
_2n m'arluk
_3n p'iNasut
_4n s'isamat
_5n t'al#imat
_6n arf'inil#it
_7n arfinEqm'arluk
_8n arfinEqp'iNasut
_9n quliNil'uat
_10n q'ulit

// Danish numbers
_0 'nOl
_1 'en
_2 t'o
_3 tR'e
_4 f'iV
_5 f'Em
_6 s'EQs
_7 s'yw
_8 'O:d@
_9 n'i
_10 t'i
_11 'Elv@
_12 t'Vl
_13 tR'&d@-n
_14 fj'ord@-n
_15 f'emt@-n
_16 s'ajsd@-n
_17 s'Wd@-n
_18 '&d@-n
_19 n'ed@-n
_2X t'y:w
_3X tR'&Dv@
_4X f'W:V
_5X h&l't*Es
_6X t*'Es
_7X h&lfj'&rs
_8X f'irs
_9X h&lf'Ems
_0C h'un*@:D
_1C ed||h'unr@:D
_0M1 t'u:s@-n
_1M1 ed||t'u:s@-n
_1M2 'e:n||milij'o:n
_0M2 milij'o:nV
_1M3 'e:n||milij'a:d
_0M3 milij'a:d3
_1M4 'e:n||bilij'o:n
_0M4 bilij'o:n3

_0and V
_dpt kom:a_

// ordinals are followed by a dot in Danish
_ord 3

// exceptions for ordinals
_1o fWrsd3
_2o &n@n
_3o trEdj3
_4o fjeV
_5o fEmt3
_6o sjEd3
_7o syvn3
_8o Vtn3
_9o ni@n3
_10o ti@n3
_11o Elfd3
_12o tVlfd3

_2Xo t'yv@n@ // 25.
_3Xo tr'&ft@ //36.
_4Xo fWV'tyv@n@ // 42.
_5Xo h&lt*'Esenstyv@n@ // 52.
_6Xo tr'Esenstyv@n@ // 62.
_7Xo h&lfj'&rsenstyv@n@ // 72.
_8Xo firsenstyv@n@ // 82.
_9Xo h&lf'Emsenstyv@n@ // 95.


+ 54
- 26
dictsource/kl_rules View File

@@ -3,10 +3,25 @@
// Spelling to phoneme rules for Greenlandic


// don't stress a vowel before these consonant clusters
.L01 ng nng


.group a
a a
aa a:
ai (_ aI
a (CC 'a
a (L01 a

ak (_ &g
ap (_ &p
at (_ &t

aa a:
aar a:
aaq a:

ai (_ aI



.group b
@@ -24,8 +39,11 @@


.group e
e e
ee e:
e E
e (CC 'E // a vowel before a consonant cluster is stressed
e (L01 E // ... except for these consonants

ee E:


.group f
@@ -34,8 +52,8 @@


.group g
g Q
gg C:
g j
gg j:


.group h
@@ -45,6 +63,8 @@

.group i
i i
i (CC 'i
i (L01 i
ii i:


@@ -54,8 +74,8 @@


.group k
k k
kk k:
k g
kk g:


.group l
@@ -70,6 +90,7 @@

.group n
n n
na na
nn n:
ng N
nng N:
@@ -77,23 +98,25 @@

.group o
o o
o (CC 'o
o (L01 o
oo o:


.group p
p p
p p:
p b
p b:


.group q
q q
qq q:
qq qq

.group r
r r
rr X:
rl rl#

.group s
s s
@@ -101,33 +124,39 @@


.group t
t t
tt t:
tl tl#
ts ts
t d
ti ti
te te
tt d
tl tl#
ts ts


.group u
u u
uu u:
u u
u (CC 'u
u (L01 u
uu u:


.group v
v v
vv v:
v v
vv v:


.group w
w w
w w


.group x
x ks
x ks


.group y
y j
y j
K) y (K i // not before or after a vowel
K) y (CC 'i
K) y (L01 i


.group z
@@ -149,4 +178,3 @@
.group
$ d'olar


+ 141
- 65
dictsource/si_list View File

@@ -1,65 +1,141 @@

// This file is UTF8 encoded
// Spelling to phoneme rules for Sinhala


// speak Latin letters as English
a e:j
b bi:
c si:
d di:
e i:
f Ef
g dZi:
h e:tS
i a:j
j dZe:j
k ke:j
l El
m Em
n En
o o:
p pi:
q kju:
r a:r
s Es
t thi:
u ju:
v vi:
w dabalju:
x Eks
y wa:j
z zEd


// symbols
% sij@j@t.@ $max3
* &st.@risk@j@ $max3

_; t'itk,oma:v@

// numbers
_1 ek@
_2 dek@
_3 tu:n@
_4 hat@r@
_5 pah@
_6 haj@
_7 hat@
_8 at.@
_9 nav@j@
_10 dah@j@
_11 ekol.@h@
_12 dol.@h@
_13 dah@tun@
_14 dah@hat@r@
_15 [email protected]@
_16 dah@saj@
_17 dah@hat@
_18 dah@at.@
_19 dah@nav@j@
_2X viss@
_0C sij@j@
_0M1 dah@s@
_0M2 milij@n@j@
_0M3 bilij@n@j@
// Sinhala Language.
// This SI_list file is written by Him Prasad Gautam <[email protected]> [Kathmandu, nepal]
// This file is UTF-8 encoded.
// letter groups:
// A - Alphabetical and Symbolic Vowels:
// 0x0D85~0x0D16, 0x0DCA~0x0DF3
// B - Symbolic Vowels and Halkirima
// 0x0DCA~0x0DF3
// C - Consonants:
// 0x0D9A~0x0DC2
// speak Latin letters as English
// numbers
_0 b'induv@
_1 'ek@
_2 d'ek@
_3 t'un@
_4 h'at@r@
_5 p'ah@
_6 h'aj@
_7 h'at@
_8 'at.@
_9 n'av@j@
_1d 'ekki // numbers used in a decimal fraction
_2d d'ekki
_3d t'unni
_10 d'ah@j@
_11 'ekol,@h@
_12 d'ol@h@
_13 d'ah@t,un@
_14 d'ah@h,@t@r@
_15 p'ah@l.,ov@
_16 d'ah@s,@j@
_17 d'ah@h,@t@
_18 d'ah@,@t.@
_19 d'ah@n,@v@j@
_2X v'isi
_20 v'iss@
_30 t'ih@
_31 t'isek@
_32 t'isdek@
_33 t'istun@
_34 t'ish@t,@r@
_35 t'isp@h@
_36 t'ish@j@
_37 t'ish@t@
_38 t'is@t.@
_39 t'isn@v,@j@
_40 h'at@l,ih@
_41 h'at@l,is'ek@
_42 h'at@l,isdek@
_43 h'at@l,istun@
_44 h'at@l,ish@t,@r@
_45 h'at@l,isp@h@
_46 h'at@l,ish@j@
_47 h'at@l,ish@t@
_48 h'at@l,is@t.@
_49 h'at@l,isn@v,@j@
_5X p'an@s
_50 p'an@h@
_6X h'&t.@
_60 h'&t.@
_7X h'&tt&:
_70 h'&tt&:v@
_8X 'asu:
_80 'asu:v@
_9X 'anu:
_90 'anu:v@
_1C s'ij@j@
_0C s'ij@
_0M1 d'ah@s
_0M1x 'ah@s // exact thousands
_0M2 l'akS
_0M2x l'akS@j@
_0M3 k'o:t.i
_0M3x k'o:t.ij@
_0M4 v'il'ij@n //what in sinhala?
_dpt d'aS@m#@
// Consonants
ක k@
ඛ kh@
ග g@
ඝ gh@
ඞ N@
ඟ N#g@
ච tS@
ඡ tSh@
ජ dZ@
ඣ dZh@
ඤ n^@
ඥ gn@
ඦ n^#dZ@
ට t.@
ඨ t.h@
ඩ d.@
ඪ d.h@
ණ n.@
ඬ n.#d.@
ත t@
ථ th@
ද d@
ධ dh@
න n@
ඳ n#d@
ප p@
ඵ ph@
බ b@
භ bh@
ම m@
ඹ m#b@
ය j@
ර r@
ල l@
ව w@
ශ S@
ෂ S@
ස s@
හ h@
ළ l.@
ෆ f@
// symbols
_. t'it@
_, k'oma:v@
? pr'a:Sna:rt,@j@
! v'iSm#@j,a:rt@j@
_“ 'udrut,@pa:t.,@a:r,@mb@j@
_” 'udhrut,@pa:t.h,@@w,@s.a:n,@j@
_: t'itkom,a:v@
_; d'etit@
$ do:l.ar $max3
% sij@j@t.@ $max3
* &st.@risk@j@ $max3

+ 327
- 270
dictsource/si_rules View File

@@ -1,270 +1,327 @@

// This file is UTF8 encoded
// Spelling to phoneme rules for Sinhala

// A means vowel letters (not vowel signs)
// B means a combining vowel sign or a virama


.group ක
ක ka
ක (B k

.group ඛ
ඛ ka
ඛ (B k

.group ග
ග ga
ග (B g

.group ඝ
ඝ ga
ඝ (B g

.group ඞ
ඞ Na
ඞ (B N

.group ඟ
ඟ N#ga
ඟ (B N#g

.group ච
ච tSa
ච (B tS

.group ඡ
ඡ tSa
ඡ (B tS

.group ජ
ජ dZa
ජ (B dZ

.group ඣ
ඣ dZa
ඣ (B dZh

.group ඤ
ඤ n^a
ඤ (B n^

.group ඥ
ඥ gna
ඥ (B gn

.group ඦ
ඦ n^#dZa
ඦ (B n^#dZ

.group ට
ට t.a
ට (B t.

.group ඨ
ඨ t.a
ඨ (B t.

.group ඩ
ඩ d.a
ඩ (B d.

.group ඪ
ඪ d.a
ඪ (B d.

.group ණ
ණ n.a
ණ (B n.

.group ඬ
ඬ n.#d.a
ඬ (B n.#d.


.group ත
ත ta
ත (B t

.group ථ
ථ ta
ථ (B t

.group ද
ද da
ද (B d

.group ධ
ධ da
ධ (B d

.group න
න na
න (B n

.group ඳ
ඳ n#da
ඳ (B n#d

.group ප
ප pa
ප (B p

.group ඵ
ඵ pa
ඵ (B p

.group බ
බ ba
බ (B b

.group භ
භ ba
භ (B b

.group ම
ම ma
ම (B m

.group ඹ
ඹ m#ba
ඹ (B m#b

.group ය
ය ja
ය (B j

.group ර
ර ra
ර (B r

.group ල
ල la
ල (B l

.group ව
ව va
ව (B v

.group ශ
ශ Sa
ශ (B S

.group ෂ
ෂ Sa
ෂ (B S

.group ස
ස sa
ස (B s

.group හ
හ ha
හ (B h

.group ළ
ළ l.a
ළ (B l.

.group ෆ
ෆ fa
ෆ (B f


.group අ
අ a

.group ආ
ආ a:

.group ඇ
ඇ &

.group ඈ
ඈ &:

.group ඉ
ඉ i

.group ඊ
ඊ i:

.group උ
උ u

.group ඌ
ඌ u:

.group ඍ
ඍ ru

.group ඎ
ඎ ru:

.group ඏ
ඏ li

.group ඐ
ඐ li:

.group එ
එ e

.group ඒ
ඒ e:

.group ඓ
ඓ aI

.group ඔ
ඔ o

.group ඕ
ඕ o:

.group ඖ
ඖ aU

.group 0xe0b6 // characters which start with UTF-8 bytes: [e0 b6]
ං m // anusvaraya
ඃ n // visargaya


.group 0xe0b7 // characters which start with UTF-8 bytes: [e0 b7]
ා a:
ැ &
ෑ &:
ි i
ී i:
ු u
ූ u:
ෘ ru
ෙ e
ේ e:
ෛ aI
ො o
ෝ o:
ෞ aU
ෟ li
ෲ ru:
ෳ li:

් // hal kirima (virima)


.group 0xe0a4 // devanagari
0xe0a4 _^_HI // switch to hindi voice for devanagari characters
.group 0xe0a5 // devanagari
0xe0a5 _^_HI

.group 0xe0ae // Tamil
0xe0ae _^_TA // switch to Tamil voice for Tamil characters
.group 0xe0af // Tamil
0xe0af _^_TA


.group
$ do:l.ar


// Sinhala Language.
// This SI_rules file is written by Him Prasad Gautam <[email protected]> [Kathmandu, nepal]
// This file is UTF-8 encoded.
// letter groups:
// A - Alphabetical and Symbolic Vowels:
// 0x0D85~0x0D16, 0x0DCA~0x0DF3
// B - Symbolic Vowels and Halkirima
// 0x0DCA~0x0DF3
// C - Consonants:
// 0x0D9A~0x0DC2
// speak Latin letters as English
.group ක
ක ka
ක (B k
.group ඛ
ඛ kha
ඛ (B kh
.group ග
ග ga
ග (B g
.group ඝ
ඝ gha
ඝ (B gh
.group ඞ
ඞ Na
ඞ (B N
.group ඟ
ඟ N#ga
ඟ (B N#g
.group ච
ච tSa
ච (B tS
.group ඡ
ඡ tSha
ඡ (B tSh
.group ජ
ජ dZa
ජ (B dZ
.group ඣ
ඣ dZha
ඣ (B dZh
.group ඤ
ඤ n^a
ඤ (B n^
.group ඥ
ඥ gna
ඥ (B gn
.group ඦ
ඦ n^#dZa
ඦ (B n^#dZ
.group ට
ට t.a
ට (B t.
.group ඨ
ඨ t.ha
ඨ (B t.h
.group ඩ
ඩ d.a
ඩ (B d.
.group ඪ
ඪ d.a
ඪ (B d.
.group ණ
ණ n.a
ණ (B n.
.group ඬ
ඬ n.#d.a
ඬ (B n.#d.
.group ත
ත ta
ත (B t
.group ථ
ථ tha
ථ (B th
.group ද
ද da
ද (B d
.group ධ
ධ dha
ධ (B dh
.group න
න na
න (B n
.group ඳ
ඳ n#da
ඳ (B n#d
.group ප
ප pa
ප (B p
.group ඵ
ඵ pha
ඵ (B ph
.group බ
බ ba
බ (B b
.group භ
භ bha
භ (B bh
.group ම
ම ma
ම (B m
.group ඹ
ඹ m#ba
ඹ (B m#b
.group ය
ය ja
ය (B j
.group ර
ර ra
ර (B r
.group ල
ල la
ල (B l
.group ව
ව wa
ව (B w
.group ශ
ශ sa
ශ (B s
.group ෂ
ෂ Sa
ෂ (B S
.group ස
ස s.a
ස (B s.
.group හ
හ ha
හ (B h
.group ළ
ළ l.a
ළ (B l.
.group ෆ
ෆ fa
ෆ (B f
// The Vowel Alphabets
.group අ
අ a
.group ආ
ආ a:
.group ඇ
ඇ &
.group ඈ
ඈ &:
.group ඉ
ඉ i
.group ඊ
ඊ i:
.group උ
උ u
.group ඌ
ඌ u:
.group ඍ
ඍ ru
.group ඎ
ඎ ru:
.group ඏ
ඏ li
.group ඐ
ඐ li:
.group එ
එ e
.group ඒ
ඒ e:
.group ඓ
ඓ aI
.group ඔ
ඔ o
.group ඕ
ඕ o:
.group ඖ
ඖ aU
.group ං // anusvaray@
ං 'anus.w,a:r@j@
A) ං m
C) ං m
.group ඃ // visargaya
ඃ w'is.@rg,@j@
A) ඃ n
C) ඃ n
// The Vowelic Symbols
.group ා
ා '&l@p,ill@
C) ා a:
.group ැ
ැ '&d@j@
C) ැ &
.group ෑ
ෑ d'i:rg@,&d@j@
C) ෑ &:
.group ි
ි 'ispill@
C) ි i
.group ී
ී d'i:rg@,ispill@
C) ී i:
.group ු
ු p'a:pill@
C) ු u
.group ූ
ූ d'i:rg@p,a:pill@
C) ූ u:
.group ෘ
ෘ g'&t.@p,ill@
C) ෘ ru
.group ෙ
ෙ k'ombuv@
C) ෙ e
.group ෛ
ෛ k'ombud,ek@
C) ෛ aI
.group ෞ
ෞ g'ajan,ukitt@
C) ෞ aU
.group 0xe0b7 // More vowelic symbols b7]
ේ e:
ො o
ෝ o:
ෟ li
ෲ ru:
ෳ li:
.group ්
් halk'ir'im#@ // Halkirima
C) ්
.group
$ do:l.ar
.group 0xe0a4 // devanagari
0xe0a4 _^_NE // Nepali voice
.group 0xe0a5 // devanagari
0xe0a5 _^_NE
.group 0xe0ae // Tamil
0xe0ae _^_TA // Tamil voice
.group 0xe0af // Tamil
0xe0af _^_TA

+ 2
- 2
dictsource/ta_list View File

@@ -375,6 +375,7 @@ tamil தமிழ் $text
பூந்தி $alt
பாவிக்க $alt
பார்ல $alt
பாட்டனி $alt


// initial த as [d]
@@ -534,8 +535,7 @@ tamil தமிழ் $text
// p as [f]
போன் fo:n
போனில் fo:nil
பைல் faIl
பைலை faIlaI
//பைலை faIlaI
பாதர் fa:dVr
பாதரிடம் fa:dVrid.Vm
பாதருடன் fa:dVrUd.Vn

+ 81
- 8
dictsource/ta_rules View File

@@ -95,7 +95,7 @@
.L19 தம்பி தங்க

// words after கோரப் [go:rVb]
.L20 பல் பற் போர போர
.L20 பல் பற் போர போர பசி

// words before பாவ+
.L21 நேய ராக சகோதர சாந்த சிநேக சினேக முக முகத்தின் ராகங்களின் ராகத்தின் சம சமமான சமமாக சமநிலை
@@ -113,7 +113,7 @@
.L25 நடன டான்ஸ நாட்டிய

// words after கேஸ்
.L26 சிலிண்டர ஸ்டவ் கனெக்
.L26 சிலிண்டர ஸ்டவ் கனெக் அடுப்ப


// consonants
@@ -152,6 +152,7 @@
_) க (ங்குலி gV
_) க (ங்கூலி gV
_) க (ங்கை gV
_) க (ங்கோத gV
_) க (ஞ்சா gV
_) க (டகட gV
_) க (டத்தில gV
@@ -160,6 +161,7 @@
_) க (டப்பாரை gV
_) க (டிகார gV
_) க (டோத்கஜ gV
_) க (ட்காரி gV
_) க (ணபதி gV
_) க (ணீர gV
_) க (ணே gV
@@ -217,6 +219,7 @@
_) க (வுனை gV
_) க (வுன்கள gV
_) க (வுர gV
_) காங்டாக் ga:Nt.a:k
_) காச (ியாபாத ga:z
_) க (ாண்டாமிருக g
_) க (ாண்டீப g
@@ -255,6 +258,7 @@
_) கி (ரய k
_) கி (ரவுண்ட g
_) கி (ரஹ g
_) கி (ராL04 k
_) கிராஃபைட gra:faIt.V#
_) கி (ராக்கா k
_) கி (ராக்கி g
@@ -292,6 +296,7 @@
_) க (ிருஹஸ்தர g
_) கி (ரேக்க g
_) கி (ரேய k
_) கி (ரை k
_) கி (ரைண்டர g
_) கி (ரௌண்ட g
_) க (ிர்ரெ g
@@ -357,7 +362,11 @@ _மன்மதக்) க (ுகை g
_) க (ுண்டம k
_) க (ுண்டல k
_) குண்டாந்த (டி gun.d.a:ntV
_) க (ுண்டானில k
_) க (ுண்டானை k
_) க (ுண்டான் k
_) க (ுண்டி k
_) க (ுண்டின g
_) குண்ட (ூர gun.t.V#
_) க (ுதிக் g
_) க (ுதிச் g
@@ -388,10 +397,12 @@ _மன்மதக்) க (ுகை g
_) க (ுருநா g
_) க (ுருபகவான g
_) குருப (த்தினி gurupV
_) க (ுருபர g
_) குருப (ாத gurup
_) குருப (ீட gurup
_) குருப (ூ gurup
_) க (ுருபூஜை g
_) குருப்பி (ரசாத gurupp
_) க (ுருப்பெயர g
_) க (ுருமார g
_) க (ுருமூர்த்தி g
@@ -417,6 +428,7 @@ _மன்மதக்) க (ுகை g
_) குவ (ாலிபிகேஷன kw
_) கு (வாலியர g
_) க (ுஸ்தி g
_) க (ுஹ g
_) க (ூகிள g
_) க (ூகுள g
_) க (ூடலூர g
@@ -492,6 +504,7 @@ _மன்மதக்) க (ுகை g
_) க (ோரத்தால g
_) க (ோரத்தை g
_) க (ோரப்_L20 g
_) க (ோரப்பசி g
_) க (ோரப்பற் g
_) க (ோரப்பல் g
_) க (ோரப்போர g
@@ -525,6 +538,7 @@ _மன்மதக்) க (ுகை g
//endsort

//sort

_கோபி) க kV#
_ஸ்டா) க kV#
_ஜமாய்) க kV#
@@ -682,10 +696,15 @@ _தொன்ம) க (ால k
மன்னார்) கு (டி ku2
நற்) க (ுண g
_சற்) க (ுண g
_நாற்) க (ுண g
_கற்) க (ுண்டில g
_கற்) க (ுண்டு g
_கற்) க (ுண்டை g
ஏறிக்) க (ுதி g
க (ுமரன k
_கண்ணியா) க (ுமரி k
க (ுமார k
_சு) க (ுமார g
_டா) குமெண்ட kUmen.tV#
அழு) க (ுரல k
_மெர்) க (ுரி k
@@ -704,6 +723,7 @@ _மன்னர்) க (ுல k
_டிரா) க (ுலா k
_ட்ரா) க (ுலா k
_கங்) க (ுலி g
_கை) க (ுலு k
_) குல்க (ந்த gulkV
_மெரு) க (ூட்ட g
_தயை) க (ூர k
@@ -756,7 +776,6 @@ _விவே) க் (_ k
_வர்) க்க ggV#
_சொர்) க்க ggV#
_ஸ்வர்) க்க ggV#
_தீர்) க்க (_சுமங்கலி ggV
_கை) க்க (டிகார kgV
L03) க்க (ண்ட ggV
_துணை) க்க (ண்ட ggV
@@ -976,6 +995,7 @@ _தணிகா) ச (ல tSV
_ரீ) ச (ார்ஜ tS
_டிஸ்) ச (ார்ஜ tS
_) ச (ார்ஜை tS
_மொ) ச (ார்ட z
_) ச (ார்மினார tS
_) ச (ார்லஸ tS
_) ச (ார்லி tS
@@ -1021,6 +1041,7 @@ _தணிகா) ச (ல tSV
_) ச (ிப்பு tS
_) ச (ிப்பை tS
_) ச (ிப்ஸ tS
_) ச (ிம்னி tS
_மலே) ச (ிய s.
இந்தோனே) ச (ிய s.
_பக்தி_) சிரத் (தை srVd
@@ -1171,6 +1192,7 @@ _மங்களே) சு (வர s
அ) ஜ (ாருதீன z
_நா) ஜ (ி z
_) ஜ (ியா z
_) ஜ (ீரோ z
_) ஜ (ுல்ஃபி z
_) ஜ (ுல்பி z
_) ஜு (வால dZ
@@ -1254,6 +1276,7 @@ _ஷிஃப்) ட t.V#
இண்) ட (ர் t.V
_) டர்பண்ட (ைன t.VrpVn.t.
எண்) டர்பி (ரைL04 t.Vrp
_) ட (ர்பைன t.V
_மெண்) ட (ல t.V
_) ட (வர t.V
_) ட (வல t.V
@@ -1263,6 +1286,7 @@ _ஷிஃப்) ட t.V#
அல்) ட (ா t.
உல்) ட (ா t.
_மால்) ட (ா t.
_டெல்) ட (ா t.
_) டாக் (_ t.a:k
_) ட (ாக்க t. // talkies
_) டாக்குமெண்ட d.a:kkUmen.t.V#
@@ -1341,6 +1365,7 @@ _செண்) டிமெண்ட t.imen.t.V#
_) டி (ராமில t.
_) டி (ராமை t.
_) டி (ராம் t.
_) டி (ராய d.
_) டி (ராயிங் d.
கொலஸ்) டி (ரால _|t.
_) டி (ராலி t.
@@ -1352,6 +1377,7 @@ _செண்) டிமெண்ட t.imen.t.V#
_) டி (ரிங்க் d.
_) டிரிப் t.rip
_) டி (ரிம் t.
_) டி (ரில d.
_) டி (ரில்லியன t.
_) டிரீட் t.ri:t.
_) டி (ரெண் t.
@@ -1403,6 +1429,7 @@ _ப்ளஸ்_) டூ t.u:
_) ட (ெசோ t.
_) ட (ெண்டர t.
_) ட (ெண்டுல்கர t.
_) டெண்ட் t.en.t.
_) டென்ச (ன t.ens.V
_) டென்டுல்க (ர t.ent.UlkV
_) ட (ென்னிஸ t.
@@ -1411,6 +1438,7 @@ _லான்_) ட (ென்னிஸ t.
_) ட (ென்ஷன t.
_) டெம்ப (ர t.empV
_) டெம்ப (ோ t.emp
_) டெம்ப்லேட் t.emple:t.
_) ட (ெய்லர t.
_) ட (ெர t.
_) டெலஸ்கோப் t.elVsko:p
@@ -1558,6 +1586,7 @@ _நடுரோ) ட் (ல t.
// exceptions, த as [d]

//sort

_) த (L04ா dV
_) த (L08னா d
_) த (கதக dV
@@ -1644,6 +1673,7 @@ _நடுரோ) ட் (ல t.
_) த (ரிசி dV
_) தரித்த (ிர_ dVridd
_) தரித்த (ிரத்த dVridd
_) தரித்த (ிரன dVridd
_) த (ரித்திரம dV
_) தரித்த (ிரம் dVridd
_) த (ருமங் dV
@@ -1801,6 +1831,7 @@ _அகாலி_) த (ள dV
_) த (ீரரை d
_) த (ீர்க d
_) த (ீர்க்க t
_) தீர்க்க (_சுமங்கலி dirggV
_) தீர்க்க (தரிச di:rggV
_) தீர்க்க (த்துடன di:rggV#
_) த (ீர்க்கமா d
@@ -1976,6 +2007,7 @@ _பிரசார்_பார) த (ி t
_ஜோ) திக (ா tik
_கார்) திக் tik
சட்ட) த (ிட்ட t
_நி) த (ின t
எ) தியோப (ிய tijo:p
எ) த (ியோப்பிய t
_பிர) த (ீ t
@@ -1987,8 +2019,14 @@ _பிரசார்_பார) த (ி t
வீண்) த (ேவை t
_நி) த (ேஷ t
_நிவேதி) த (ை t
L03து) த (ொட t
வீண்) த (ொல்லை t
_தான்) த (ோன்ற t
_சந்) த (ோஷிட t
_சந்) த (ோஷின t
_சந்) த (ோஷு t
_சந்) த (ோஷை t
_சந்) த (ோஷ்_ t
_சோவிய) த் t
அம்பே) த்க tkV#
_வா) த் (சல்ய t
@@ -2023,6 +2061,7 @@ _பரிவர்) த்த (ன ddV
சில) த்த (ினங் dd
பல) த்த (ினங் dd
வர்) த்த (ினி dd
_மL06ிஷாசுரமர்) த்த (ினி dd
L03) த்த (ினி+ tt
ம) த்த (ிய dd
வா) த்த (ிய dd
@@ -2046,6 +2085,7 @@ L03வ்வு) த்த (ியோக dd
_சூ) த்த (ிரரி dd
_சூ) த்த (ிரர் dd
ஆதி) த்தி (ராவிட dd
_சேஷா) த்த (ிரி dd
_வை) த்தீசு (வ ddi:s
_வை) த்த (ீஸ்வ dd
ராஜ) த்து (ரோக dd
@@ -2216,6 +2256,7 @@ _சொந்த_) ப (ந்த bV
_) ப (னாரச bV
_) ப (னாரஸ bV
_) ப (னியன bV
_) ப (ன்சல bV
_) ப (ன்னாரி bV
_டீயும்_) ப (ன்னும்_ bV
_) ப (ன்னும்_டீயும் bV
@@ -2225,6 +2266,7 @@ _டீயும்_) ப (ன்னும்_ bV
_) ப (ப்ளிமாஸ bV
_) ப (ம்பர bV
_) ப (ம்பாய bV
_) ப (ய_உணர் bV
_) ப (யங் bV
_) ப (யங்கர bV
_) ப (யத் bV
@@ -2315,6 +2357,7 @@ _டீயும்_) ப (ன்னும்_ bV
_) ப (லஹீன bV
_) பலாத்க (ார bVla:dk
_) ப (லிகடா bV
_) ப (லிகள bV
_) ப (லிகொ bV
_) ப (லிக்கடா bV
_) ப (லிக்குச் bV
@@ -2333,6 +2376,7 @@ _டீயும்_) ப (ன்னும்_ bV
_) ப (ளு bV
_) ப (வநகர bV
_) ப (வன bV
_) ப (வன்குமார pV
_) ப (வாணி bV
_) ப (வானி bV
_) பவுண்ட (ன faUn.t.V
@@ -2374,6 +2418,7 @@ _டெட்_) ப (ாடி b
_) ப (ாடி_பில்டிங் b
_) ப (ாடிக்கு b
_) ப (ாடியை b
_) ப (ாட்டனிய b
_) பா (ட்டரி be:
_) ப (ாட்டலியன b
_) பா (ட்டிங் be:
@@ -2566,6 +2611,7 @@ _விளையாடு_) ப (ாம்பே p
_) ப (ிங்கர்_ f
_) ப (ிசிக்ஸ f
_) ப (ிசினஸ b
_) ப (ிசினெஸ b
_) ப (ிசிய b
_) ப (ிஜிலி b
_) ப (ிடில f
@@ -2648,6 +2694,7 @@ _விளையாடு_) ப (ாம்பே p
_) பி (ரயோஜன p
_) பி (ரலய p
_) பி (ரளய p
_) பி (ரவகி p
_) பி (ரவாக p
_) பி (ரவீண p
_) பி (ரவீன p
@@ -2747,6 +2794,7 @@ _விளையாடு_) ப (ாம்பே p
_) பி (ரெயில b
_) பி (ரெய்ல b
_) பி (ரெஷ் f
_) பி (ரெஸ p
_) பி (ரே p
_) பி (ரேக்க b
_) பிரேச (ில bre:z
@@ -2847,6 +2895,7 @@ _பெனசீர்_) ப (ுட்டோ b
_) புத்த (ம்_புதிய puttV
_) புத்த (ம்_புது puttV
_) புத்த (ரிசி puttV
_) புத்த (ழக puttV
_) ப (ுத்திக் b
_) ப (ுத்திசாலி b
_) ப (ுத்திய b
@@ -2932,9 +2981,12 @@ _பெனசீர்_) ப (ுட்டோ b
_) ப (ெந்தகோஸ்த b
_) ப (ெனசீர b
_) பெனாச (ீர bena:z
_) ப (ெனாமி b
_) ப (ென்னட் b
_) பெப்ப (ே bebb
_) ப (ெப்ரவரி f
_) ப (ெயில f
_) பெரோஸ fero:zV#
_) பெர்ட் (ரண்ட bert.
_) ப (ெர்த் b
_) ப (ெர்னாட்ஷா b
@@ -2955,9 +3007,11 @@ _பெனசீர்_) ப (ுட்டோ b
_) ப (ேச்சிலர b
_) ப (ேச்சுலர b
_) ப (ேஜார b
_) ப (ேட்ஜ b
_) ப (ேட்டரி b
_) ப (ேட்டா b
_) ப (ேட்டிங் b
_) ப (ேட்ஸ்மேன b
_) ப (ேதங் b
_) ப (ேதமி b
_) ப (ேதமு b
@@ -2992,8 +3046,8 @@ _பெனசீர்_) ப (ுட்டோ b
_) ப (ைரன b
_) ப (ைரவ b
_) ப (ைராகி b
_) ப (ைலில f
_) ப (ைலு f
_) ப (ைல f
_) ப (ைலட் p
_) ப (ொக்கே b
_) ப (ொம்மன b
_) ப (ொம்மனாட்டி p
@@ -3041,9 +3095,11 @@ _பெனசீர்_) ப (ுட்டோ b
_) ப (ோனியாக b
_) ப (ோனியை b
_) ப (ோனில f
_) ப (ோனிலும் f
_) ப (ோனுக்க f
_) ப (ோனுடைய f
_) ப (ோனுல f
_) ப (ோனை f
_) ப (ோன்கள f
_) ப (ோன்ஸ்லே b
_) போப (ால bo:p
@@ -3055,6 +3111,7 @@ _பெனசீர்_) ப (ுட்டோ b
_) ப (ோரும்_அடி b
_) ப (ோர்_அடி b
_) ப (ோர்ஜரி f
_) ப (ோர்ட b
_) ப (ோர்தான்_அடி b
_) ப (ோர்மேன f
_) ப (ோர்வெல் b
@@ -3175,6 +3232,7 @@ _விரகதா) ப (+ bV#
_சிவ) ப (த pV
_குளிர்) ப (தன pV
_கல்) ப (தரு pV
உயர்) ப (தவி pV
கஜ) பதி pVti
கண) பதி pVti
பசு) பத (ி pVt
@@ -3274,6 +3332,7 @@ _முனிசி) ப (ல pV
ஆல்) ப (ா f
_ஷில்) ப (ா p
_முஸ்த) ப (ா f
_ஹனி) ப (ா f
_போதும்) ப (ா p
_போலாம்) ப (ா p
_வேண்டாம்) ப (ா p
@@ -3292,6 +3351,7 @@ _வெளிப்) ப (ாக b
ஈடு) ப (ாட p
இடி) ப (ாட p
_கட்டு) ப (ாட p
_மாசு) ப (ாட p
_வசை) ப (ாட p
_வழி) ப (ாட p
இசை) ப (ாட p
@@ -3336,7 +3396,9 @@ _வெளிப்) ப (ாக b
_சரி) ப (ார p
எதிர்) ப (ார p
_பிளாட்) ப (ார f
_யுக) ப (ாரதி b
இன்) ப (ார்ம f
_யூனி) ப (ார்ம f
அ) பார்மெண்ட pa:rment.V#
கண்) ப (ார்வை p
இம்) ப (ால f
@@ -3441,6 +3503,9 @@ L03ந்தப்) பி (ராய p
ப (ிறகு+ p
தேய்) ப (ிறை p
வளர்) ப (ிறை p
ஈ) ப (ில f
_ரீ) ப (ில f
_ரை) ப (ில f
_) பிலிப filipV#
_) பி (லெட்சர f
_சிம்) ப (ிள p
@@ -3523,6 +3588,7 @@ _கோலாலம்) ப (ூர p
_தவிடு) ப (ொடி p
எரி) ப (ொரு p
_வன்) ப (ொரு p
_மறை) ப (ொரு p
_மென்) ப (ொரு p
_ வெடி) ப (ொரு p
_பழம்) ப (ொருள p
@@ -3537,6 +3603,7 @@ _ வெடி) ப (ொரு p
ப (ொழுதும்_+ p
ப (ொழுதே_+ p
ப (ொழுதோ_+ p
_விலை) ப (ோ p
_ஏக) ப (ோக b
ராஜ) ப (ோக b
ப (ோக_ p
@@ -3556,6 +3623,7 @@ _ வெடி) ப (ொரு p
_மை) ப (ோட p
அசை) ப (ோட p
_சத்தம்) ப (ோட p
_திரை) ப (ோட p
ப (ோதிலுமே_+ p
ப (ோதிலும்+ p
ஒம்) ப (ோது _ b
@@ -3641,6 +3709,7 @@ _யாதவ) ப்பி (ரகாச pp
_வெளி) ப்பி (ரகார pp
அதிக) ப்பி (ரசங்க pp
_நில) ப்பி (ரபு pp
_சத்திய) ப்பி (ரமா pp
மன) ப்பி (ரமை bb
_பர) ப்பி (ரம்ம pb
_மணி) ப்பி (ரவா pp
@@ -3653,6 +3722,7 @@ _வெளி) ப்பி (ரகார pp
இரத்த) ப்பி (ரவாக pp
_ஒL10ி) ப்பி (ரவாக pp
தேச) ப்பி (ரஷ்ட pp
_ஜாதி) ப்பி (ரஷ்ட pp
ஆ) ப்பி (ரிக்க f
தென்னா) ப்பி (ரிக்க fV
_கஜ) ப்ப (ிருஷ்ட bb
@@ -3732,9 +3802,7 @@ _சந்தேக) ப்ப (ுத்தி bb
மகா) ப (ாரத b
L03க்க) ப (ாலி b

_) ப (ோனை f
_) ப (ைல்கள f
_) ப (ோனிலும் f

_சோ) ப (ா f // sofa
_ஆ) ப (ீஸ f // office
_ஆ) ப (ீச f // office
@@ -3813,6 +3881,9 @@ _சந்தேக) ப்ப (ுத்தி bb
ஸ sV
ஸ (B s

_உ) ஸ்பெக் zbek
_நவா) ஸ zV#


.group ஹ
ஹ HV
@@ -3828,6 +3899,8 @@ _சந்தேக) ப்ப (ுத்தி bb
ஃக gQV
ஃக (B gQ

_) ஃபி (ரான் f

// vowel letters

.group இ

BIN
espeak-data/mbrola_ph/de2_phtrans View File


BIN
espeak-data/mbrola_ph/de4_phtrans View File


BIN
espeak-data/mbrola_ph/de6_phtrans View File


+ 0
- 2
espeak-data/voices/test/kl View File

@@ -1,5 +1,3 @@
name greenlandic
language kl

stressrule 2 // penultimate (for testing)


+ 3
- 2
phsource/mbrola/de2 View File

@@ -37,7 +37,8 @@
0 V# NULL 0 R
0 UR NULL 60 U R

0 eI NULL 60 E j
0 eI VWL 60 E j
0 eI NULL 0 e:
0 oU NULL 0 o:
0 W~ NULL 0 E~
0 A~ NULL 0 a~
@@ -49,7 +50,7 @@
0 @5 NULL 0 @
0 a# NULL 0 @
0 I2 NULL 0 I
0 i NULL 0 I
0 i NULL 0 i:
0 aa NULL 0 a
0 V NULL 0 a:
0 0 NULL 0 O

+ 1
- 1
phsource/mbrola/de4 View File

@@ -59,7 +59,7 @@
0 @5 NULL 0 @
0 a# NULL 0 @
0 I2 NULL 0 I
0 i NULL 0 I
0 i NULL 0 i:
0 aa NULL 0 a
0 V NULL 0 a:
0 0 NULL 0 O

+ 1
- 1
phsource/mbrola/de6 View File

@@ -41,7 +41,7 @@
0 @5 NULL 0 @
0 a# NULL 0 @
0 I2 NULL 0 I
0 i NULL 0 I
0 i NULL 0 i:
0 aa NULL 0 a
0 V NULL 0 a:
0 0 NULL 0 a:

+ 19
- 3
phsource/ph_greenlandic View File

@@ -8,7 +8,7 @@ phoneme a
FMT(vowel/a)
endphoneme

phoneme e
phoneme E
vowel starttype #e endtype #e
length 150
IF thisPh(isWordEnd) THEN
@@ -42,18 +42,34 @@ phoneme aI
endphoneme


phoneme e
import_phoneme da/e
endphoneme

phoneme &
import_phoneme da/&
endphoneme

phoneme W
import_phoneme da/W
phoneme V
import_phoneme da/V
endphoneme

phoneme O
import_phoneme da/O
endphoneme

phoneme y
import_phoneme da/y
endphoneme

phoneme W
import_phoneme da/W
endphoneme

phoneme 3
import_phoneme da/3
endphoneme

phoneme : // lengthen previous vowel by "length"
virtual
length 120

+ 16
- 0
phsource/vowelcharts/kl View File

@@ -0,0 +1,16 @@
@ 0 525 1441 2340 525 1441 2340
@- 0 525 1441 2340 525 1441 2340
a 0 904 1320 2700 896 1340 2660
e 0 456 1980 2540 440 1980 2540
i 0 280 2280 2840 240 2339 2840
o 0 454 812 2559 432 824 2520
u 0 320 820 2360 320 820 2360
E 1 504 1700 2480 504 1700 2480
E 0 456 1980 2540 440 1980 2540
aI 0 912 1320 2740 360 2200 2820
& 0 645 1705 2520 645 1705 2520
V 0 672 1180 2595 672 1180 2595
O 0 480 760 2710 480 760 2710
y 0 280 1720 2340 280 1720 2340
W 0 525 1320 2200 525 1320 2200
3 0 658 1408 2460 658 1408 2460

BIN
phsource/vowelcharts/kl.png View File


+ 0
- 1
phsource/vowelcharts/si View File

@@ -6,7 +6,6 @@ o 0 512 860 2648 512 860 2648
u 0 320 940 2360 320 900 2360
i: 0 280 2280 2840 240 2339 2840
e: 0 504 1900 2544 496 1920 2552
E 0 584 1820 2560 584 1820 2560
&: 0 680 1660 2520 680 1660 2520
a: 0 784 1180 2680 776 1200 2680
o: 0 512 860 2648 512 860 2648

BIN
phsource/vowelcharts/si.png View File


+ 6
- 1
platforms/windows/make_espeak.iss View File

@@ -2,7 +2,7 @@
[Setup]
AppName=eSpeak
AppVerName=eSpeak version 1.46.23
AppVerName=eSpeak version 1.46.28
AppCopyright=Licensed under GNU General Public License version 3. (See file License.txt for details).
WindowVisible=yes
@@ -220,6 +220,7 @@ begin
'et': value := $425;
'eu': value := $42d;
'fi': value := $40b;
'fil': value := $464;
'fr': value := $40c;
'ga': value := $83c;
'gu': value := $447;
@@ -250,15 +251,19 @@ begin
'rw': value := $487;
'si': value := $45b;
'sk': value := $41b;
'sl': value := $424;
'sq': value := $41c;
'sr': value := $81a;
'sv': value := $41d;
'sw': value := $441;
'ta': value := $449;
'te': value := $44a;
'tg': value := $45e; // 'am'
'tl': value := $464;
'tn': value := $432;
'tr': value := $41f;
'tt': value := $444;
'ur': value := $420;
'vi': value := $42a;
'wo': value := $488;
'zh': value := $804;

+ 34
- 0
src/dictionary.cpp View File

@@ -1129,6 +1129,7 @@ void SetWordStress(Translator *tr, char *output, unsigned int *dictionary_flags,
int stressflags;
int dflags = 0;
int first_primary;
int long_vowel;

signed char vowel_stress[N_WORD_PHONEMES/2];
char syllable_weight[N_WORD_PHONEMES/2];
@@ -1444,6 +1445,39 @@ void SetWordStress(Translator *tr, char *output, unsigned int *dictionary_flags,
vowel_stress[ix] = 4;
}
break;

case 12: // LANG=kl (Greenlandic)
long_vowel = 0;
for(ix=1; ix < vowel_count; ix++)
{
if(vowel_stress[ix] == 4)
vowel_stress[ix] = 3; // change marked stress (consonant clusters) to secondary (except the last)
if(vowel_length[ix] > 0)
{
long_vowel = ix;
vowel_stress[ix] = 3; // give secondary stress to all long vowels
}
}
// 'stressed_syllable' gives the last marked stress
if(stressed_syllable == 0)
{
// no marked stress, choose the last long vowel
if(long_vowel > 0)
stressed_syllable = long_vowel;
else
{
// no long vowels or consonant clusters
if(vowel_count > 4)
stressed_syllable = vowel_count - 3;
else
stressed_syllable = vowel_count - 1;
}
}
vowel_stress[stressed_syllable] = 4;
max_stress = 4;
break;
}

/* now guess the complete stress pattern */

+ 56
- 12
src/numbers.cpp View File

@@ -1146,6 +1146,7 @@ static int LookupNum2(Translator *tr, int value, const int control, char *ph_out
// control bit 3: use feminine form of '2' (for thousands
// control bit 4: speak zero tens
// control bit 5: variant of ordinal number (lang=hu)
// bit 8 followed by decimal fraction

int found;
int ix;
@@ -1385,6 +1386,22 @@ static int LookupNum2(Translator *tr, int value, const int control, char *ph_out
}
}

if(tr->langopts.numbers & NUM_SINGLE_STRESS_L)
{
// only one primary stress, on the first part (tens)
found = 0;
for(ix=0; ix < (signed)strlen(ph_out); ix++)
{
if(ph_out[ix] == phonSTRESS_P)
{
if(found)
ph_out[ix] = phonSTRESS_3;
else
found = 1;
}
}
}
else
if(tr->langopts.numbers & NUM_SINGLE_STRESS)
{
// only one primary stress
@@ -1410,6 +1427,7 @@ static int LookupNum3(Translator *tr, int value, char *ph_out, int suppress_null
// control bit 0, previous thousands
// bit 1, ordinal number
// bit 5 variant form of ordinal number
// bit 8 followed by decimal fraction
int found;
int hundreds;
int tensunits;
@@ -1610,7 +1628,7 @@ static int LookupNum3(Translator *tr, int value, char *ph_out, int suppress_null
x = 8; // use variant (feminine) for before thousands and millions
}

if(LookupNum2(tr, tensunits, x, buf2) != 0)
if(LookupNum2(tr, tensunits, x | control & 0x100, buf2) != 0)
{
if(tr->langopts.numbers & NUM_SINGLE_AND)
ph_hundred_and[0] = 0; // don't put 'and' after 'hundred' if there's 'and' between tens and units
@@ -1858,7 +1876,7 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned
{
// this "word" ends with a decimal point
Lookup(tr, "_dpt", ph_append);
decimal_point = 1;
decimal_point = 0x100;
}
else
if(suppress_null == 0)
@@ -1913,6 +1931,7 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned
// if((buf_digit_lookup[0] == 0) && (*p != '0') && (dot_ordinal==0))
if((buf_digit_lookup[0] == 0) && (*p != '0'))
{
// LANG=hu ?
// not found, lookup only the last digit (?? but not if dot-ordinal has been found)
if(LookupDictList(tr, &p, buf_digit_lookup, flags, FLAG_SUFX, wtab)) // don't match '0', or entries with $only
{
@@ -1920,24 +1939,38 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned
}
}

if((tr->langopts.numbers2 & NUM2_PERCENT_BEFORE) && (prev_thousands == 0))
if(prev_thousands == 0)
{
// LANG=si, say "percent" before the number
p2 = word;
while((*p2 != ' ') && (*p2 != 0))
if((decimal_point == 0) && (ordinal == 0))
{
p2++;
// Look for special pronunciation for this number in isolation (LANG=kl)
sprintf(string, "_%dn", value);
if(Lookup(tr, string, ph_out))
{
return(1);
}
}
if(p2[1] == '%')

if(tr->langopts.numbers2 & NUM2_PERCENT_BEFORE)
{
Lookup(tr, "%", ph_out);
ph_out += strlen(ph_out);
p2[1] = ' ';
// LANG=si, say "percent" before the number
p2 = word;
while((*p2 != ' ') && (*p2 != 0))
{
p2++;
}
if(p2[1] == '%')
{
Lookup(tr, "%", ph_out);
ph_out += strlen(ph_out);
p2[1] = ' ';
}
}
}

}

LookupNum3(tr, value, ph_buf, suppress_null, thousandplex, prev_thousands | ordinal);
LookupNum3(tr, value, ph_buf, suppress_null, thousandplex, prev_thousands | ordinal | decimal_point);
if((thousandplex > 0) && (tr->langopts.numbers2 & 0x200))
sprintf(ph_out,"%s%s%s%s",ph_zeros,ph_append,ph_buf2,ph_buf); // say "thousands" before its number
else
@@ -2005,6 +2038,17 @@ static int TranslateNumber_1(Translator *tr, char *word, char *ph_out, unsigned
n_digits += decimal_count;
}
break;

case NUM_DFRACTION_7:
// alternative form of decimal fraction digits, except the final digit
while(decimal_count-- > 1)
{
sprintf(string,"_%cd", word[n_digits]);
if(Lookup(tr, string, buf1) == 0)
break;
n_digits++;
strcat(ph_out, buf1);
}
}
}


+ 1
- 1
src/synthdata.cpp View File

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

const char *version_string = "1.46.27 21.Oct.12";
const char *version_string = "1.46.28 16.Nov.12";
const int version_phdata = 0x014624;

int option_device_number = -1;

+ 11
- 1
src/tr_languages.cpp View File

@@ -113,12 +113,14 @@ static void SetLetterBitsRange(Translator *tr, int group, int first, int last)

// ignore these characters
static const unsigned short chars_ignore_default[] = {
0xad, 1, // soft hyphtn
0x200c, 1, // zero width non-joiner
0x200d, 1, // zero width joiner
0, 0 };

// alternatively, ignore characters but allow zero-width-non-joiner (lang-fa)
static const unsigned short chars_ignore_zwnj_hyphen[] = {
0xad, 1, // soft hyphen
0x200c, '-', // zero width non-joiner, replace with hyphen
0x200d, 1, // zero width joiner
0, 0 };
@@ -943,6 +945,14 @@ SetLengthMods(tr,3); // all equal
}
break;

case L('k','l'): // Greenlandic
{
tr->langopts.stress_rule = 12;
tr->langopts.stress_flags = S_NO_AUTO_2;
tr->langopts.numbers = NUM_DECIMAL_COMMA | NUM_SWAP_TENS | NUM_HUNDRED_AND | NUM_OMIT_1_HUNDRED | NUM_ORDINAL_DOT | NUM_1900 | NUM_ROMAN | NUM_ROMAN_CAPITALS | NUM_ROMAN_ORDINAL;
}
break;

case L('k','o'): // Korean, TEST
{
static const char ko_ivowels[] = {0x63,0x64,0x67,0x68,0x6d,0x72,0x74,0x75,0}; // y and i vowels
@@ -1207,7 +1217,7 @@ SetLengthMods(tr,3); // all equal
tr->langopts.param[LOPT_UNPRONOUNCABLE] = 1; // disable check for unpronouncable words
tr->langopts.suffix_add_e = tr->letter_bits_offset + 0x4a; //virama
tr->langopts.numbers = NUM_OMIT_1_THOUSAND;
tr->langopts.numbers = NUM_OMIT_1_THOUSAND | NUM_SINGLE_STRESS_L | NUM_DFRACTION_7;
tr->langopts.numbers2 = NUM2_PERCENT_BEFORE;
tr->langopts.break_numbers = 0x14aa8; // for languages which have numbers for 100,000 and 100,00,000, eg Hindi
}

+ 3
- 0
src/translate.h View File

@@ -402,6 +402,7 @@ typedef struct {
#define NUM_DFRACTION_4 0x8000
#define NUM_DFRACTION_5 0xa000
#define NUM_DFRACTION_6 0xc000
#define NUM_DFRACTION_7 0xe000 // lang=si, alternative form of number for decimal fraction digits (except the last)
#define NUM_ORDINAL_DOT 0x10000
#define NUM_NOPAUSE 0x20000
#define NUM_AND_HUNDRED 0x40000
@@ -414,6 +415,7 @@ typedef struct {
#define NUM_ROMAN_CAPITALS 0x2000000
#define NUM_ROMAN_AFTER 0x4000000
#define NUM_ROMAN_ORDINAL 0x8000000
#define NUM_SINGLE_STRESS_L 0x10000000

// bits0-1=which numbers routine to use.
// bit2= thousands separator must be space
@@ -442,6 +444,7 @@ typedef struct {
// bit25= Roman numbers only if upper case
// bit26= say "roman" after the number, not before
// bit27= Roman numbers are ordinal numbers
// bit28= only one primary stress in tens+units (on the tens)
int numbers;

#define NUM2_THOUSANDS_VAR1 0x40

Loading…
Cancel
Save