Skip to content

Commit

Permalink
Update Pyash with workaround for tones
Browse files Browse the repository at this point in the history
  • Loading branch information
Andrii Logan Zvorygin authored and valdisvi committed Mar 11, 2022
1 parent 4b090ad commit e2f6c75
Show file tree
Hide file tree
Showing 3 changed files with 89 additions and 76 deletions.
118 changes: 49 additions & 69 deletions dictsource/py_list
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

// Note: initial/final "." has already been removed

//2 ˩
//7 ˥

// How Number ASCII is pronounced
_0 zRon
Expand All @@ -24,73 +26,52 @@ _E hses
_F hpet
_dpt fjih

6 @
//67 @˥
//62 @˩

// how letters are pronounced individually
_a a
b b@
c S@
d d@
_e e
f f@
g g@
h h@
_i i
j Z@
k k@
l l@
m m@
n n@
_o o
p p@
q N@
r R@
s s@
t t@
_u u
v v@
w w@
x x@
y j@
z z@

//klat klat
//kla2t klat
//kla7t klat


// stressed cmavo
//cai S'aI_!
//cu'i S'uhi_!
//pei p'eI_!
//ru'e R'uhe_!
//sai s'aI_!
//nai n'aI_!
//na n'a_!
//ja'a Z'aha_!

// how letters are pronounced individually
//_a a
//a7 ai
//a2 au
//b b@
//c S@
//d d@
//_e e
//f f@
//g g@
//h h@
//_i i
//i7 i˥
//i2 i˩
//j Z@
//k k@
//l l@
//m m@
//n n@
//_o o
//o7 o˥
//o2 o˩
//p p@
//q N@
//r R@
//s s@
//t t@
//_u u
//u7 u˥
//u2 u˩
//v v@
//w w@
//x x@
//y j@
//z z@

// unstressed words. Note single-syllable cmavo are all unstressed in jbo_rules
//e'o $u+ // request
//po'e $u+ // of
//zo'e $u+ // pronoun
//
//
//i i_: $u // sentence break (recognised by eSpeak program). Try a short pause after ".i"

// end-of-clause [_;_] before these
//noi _;_noI $u
//poi _;_poI $u
//no'u _;_nohu $u
//po'u _;_pohu $u
//goi _;_goI $u
//
//ija _;_iZa // should this series be unstressed?
//ijanai _;_iZan'aI
//ije _;_iZe
//ije'i _;_iZehi
//ijenai _;_iZenaI
//ijo _;_iZo
//ijonai _;_iZon'aI
//inaja _;_inaZa
//
//to _::to $u // start parenthesis, pause but don't raise intonation

// independent clause terminators (include a long pause after)
li li_:: $u
Expand Down Expand Up @@ -125,8 +106,6 @@ t6 t@_:: $u
zlih zlih_:: $u
n6 n@_:: $u
gyih gjih_:: $u
//pi7 pi55_:: $u
//si2 si22_:: $u


// case terminators (short pause after)
Expand Down Expand Up @@ -181,13 +160,14 @@ gveh gveh_: $u
vwih vwih_: $u
bveh bveh_: $u
dzih dzih_: $u
//tsi7h tsi55h_: $u
//tsi7h tsi7h_: $u
vyah vjah_: $u
gvah gvah_: $u
zreh zreh_: $u
bu bu_: $u
//sa7 sa55_: $u
//si7 si55_: $u
//tsi2h tsi22h_: $u
//ta7 ta55_: $u
//sa7 sa7_: $u
//si7 si7_: $u
//tsi2h tsi2h_: $u
//ta7 ta7_: $u

kla2t klat22
21 changes: 14 additions & 7 deletions dictsource/py_rules
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
.group a
a a


.group b
b b

Expand Down Expand Up @@ -80,7 +81,7 @@
.group y
y j

.group 6
.replace
6 @

.group h
Expand All @@ -89,10 +90,13 @@
.group z
z z


// low tone
.group 2 22
// high tone
.group 7 55
//.group 2
// 2 ˩
//// high tone
//.group 7
// 7 ˥

.group
. _! // dot
Expand All @@ -102,6 +106,9 @@

ˈ ' // U+2c8 stress marker (from syllable capitalisation)
// tones not working
//.group
// 1 55
// 2 22
.replace
7 i
2 u
//6 @
// 2 ˩
// 7 ˥
26 changes: 26 additions & 0 deletions phsource/ph_pyash
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,29 @@ phoneme e
FMT(vowel/e_mid2)
endphoneme

phoneme @ // Schwa, e.g. alph**a**
vwl starttype #@ endtype #@
unstressed
length 140
FMT(vowel/@)
endphoneme

phoneme ˥ // tone: high level
stress
Tone(50, 50, envelope/p_level, NULL)
endphoneme

phoneme 22 // tone: low level
stress
Tone(20, 20, envelope/p_level, NULL)
endphoneme

phoneme ˩ // tone: low level
stress
Tone(20, 20, envelope/p_level, NULL)
endphoneme

phoneme ˧ // tone: mid level
stress
Tone(30, 30, envelope/p_level, NULL)
endphoneme

0 comments on commit e2f6c75

Please sign in to comment.