Browse Source

ru: revert to d1ce948058

master
Reece H. Dunn 7 years ago
parent
commit
5461b09ea5
3 changed files with 291 additions and 367 deletions
  1. 62
    156
      dictsource/ru_list
  2. 51
    75
      dictsource/ru_rules
  3. 178
    136
      phsource/ph_russian

+ 62
- 156
dictsource/ru_list View File



// Numbers // Numbers
_0 n'ojl^ _0 n'ojl^
_1 od;'in
_1 ojd;'in
_1f odn'a _1f odn'a
_2 dv'A _2 dv'A
_2f dv;'e _2f dv;'e
_3 tr;'i
_4 tS;It'yr;I
_3 tR;'i
_4 tS;It'yR;I
_5 p;'jat; _5 p;'jat;
_6 S'Es;t; _6 S'Es;t;
_7 s;'em;
_7 s;'ejm
_8 v'os;E2m _8 v'os;E2m
_9 d;'evI3t; _9 d;'evI3t;
_10 d;'es;It; _10 d;'es;It;
_11 Od;'innVttsVt; _11 Od;'innVttsVt;
_12 dv;In'AttsVt; _12 dv;In'AttsVt;
_13 tr;In'AttsVt;
_13 tR;In'AttsVt;
_14 tS;It'y@-*nVttsVt; _14 tS;It'y@-*nVttsVt;
_15 p;Itn'AttsVt; _15 p;Itn'AttsVt;
_16 SE#stn'AttsVt; _16 SE#stn'AttsVt;
* zvezd'a $max3 * zvezd'a $max3
_, zVpit'aja _, zVpit'aja


// particles
а $u+ $pause // and
без $u
будто $u
бы $u
в $u // to,in,at
вдруг $u
ведь $u
весь $u
вместо $u
во $u
вовсе $u
вот $u
все $u
где $u
(где то) $u
даже $u
// prepositions
в v $u // to,in,at
для $u // for для $u // for
до $u
едва $u2
если $u $pause
ещё $u2+
ж $u
же $u
за $u+
и $u $pause // and
ибо $u $pause // if, for
из $u
(из за) $u
или $u $pause
к $u
как $u+
какой $u2+
ко $u
когда $u+
кстати $u
(кто то) $u
ли $u
либо $u
лишь $u
на $u // on на $u // on
надо $u
не $u // negative
нет $u+
ни $u
никак $u2
ничто $u+
но $u $pause // but
ну $u+
о $u+
об $u
однако $u2
от $u // from от $u // from
очень $u
по $u
под $u
пока $u2+
пора $u2+
после $u
потом $u2+
почти $u2+
прежде $u
при $u
про $u
пусть $u+
раз $u+
с $u // with,from,since
сей $u
со $u
так $u+
также $u $pause
то $u
только $u
туда $u2+
тут $u+
у $u // by
уж $u
уже $u2+ // already
хоть $u
хотя $2 $pause // although
что $u+ $pause // what, that
чтоб $u
чтобы $u $pause // in order that
с s $u // with,from,since
у u $u // by

// conjunctions
а $atend
а $u $pause // and
и i $u $pause // and
ибо $u $pause // for
ибо $u $pause // if
но $u $pause // but
хотя $2 $pause // although
чтобы $pause // in order that


// pronouns // pronouns
вам $u+
вами $u+
вас $u+
ваш $u+
вы $u+
другой $u+
его $u2+
её $u2+
ей $u+
ему $u2+
им $u+
ими $u+
их $u+
который $u2
кто $u+
меня $u2+
мне $u+
мной $u+
мой $u+
мы $u+
нам $u+
нами $u+
нас $u+
наш $u+
ней $u+
некий $u
нём $u+
никто $u2+
них $u+
обо $u+
он $u+
она $u+
они $u+
оно $u+
сам $u+
самый $u+
свой $u+
себя $u2+
такой $u2+
там $u+
тебе $u2+
тебя $u2+
тобой $u2+
тот $u+
ты $u+
чем $u+
это $u+
этот $u+
я $u+
я $u // I

// questions
что Sto $u $pause // what, that

// misc.
не $u // negative


// auxillary verbs // auxillary verbs
будем $u1 будем $u1
есмь $u1 есмь $u1
есте $u1 есте $u1
есть $u1 есть $u1
иметь $u2
мог $u1 мог $u1
могла $u2 могла $u2
могли $u2 могли $u2
может $u1 может $u1
можете $u1 можете $u1
можешь $u1 можешь $u1
можно $u
мочь $u // can мочь $u // can
побудем $u2 побудем $u2
побудет $u2 побудет $u2
сможете $u1 сможете $u1
сможешь $u1 сможешь $u1
смочь $u1 смочь $u1
стать $u
суть $u1 суть $u1
хотеть $u2



// Common names where 'е' is written instead of 'ё'
еще jIStS;'8
(не о чем) n^i||o||tS'im
чем tS;'8m
ее jIj'8
// Cyrillic letter names
а a
б bE
_в vE
в vE $atend
г gE
д dE
е je
ё j8
ж ZE
з zE
и i
й ,i'k@-*'AtkOjI
к kA
л El^
м Em
н En_
о o
п pE
р Er
_с Es
с Es $atend
т tE
у u
ф Ef
х xA
ц tsE
ч tS;e
ш SA
щ S;ja
ъ tv;'8@-*dyjzn'Ak
ы y
ь m;'jak;I#jzn'Ak
э e
ю ju
я ja


// exceptions // exceptions
радио r'ad;Io радио r'ad;Io


// letters (these are reduced to schwa when used as particles)
_б bE
б bE $atend
_в vE
в vE $atend
_ж ZE
ж ZE $atend
_к kA
к kA $atend
_с Es
с Es $atend


+ 51
- 75
dictsource/ru_rules View File

// Y iotated vowel, softsign: ь ю я ё // Y iotated vowel, softsign: ь ю я ё




.L11 а ы е ой ою ~ ам ами ах // suffixes for 1. declination words ending а (e.g. страна, Юра)
.L12 я и е ю ёй ею ь ям ями ях // suffixes for 1. declination words ending я (e.g. земля, дядя)
.L13 я и ю ей ею й ям ями ях // suffixes for 1. declination words ending Aя (e.g. ария) A means vowel

.L21 ~ а у ом е ы ов ам ами ах // suffixes for 2. declination masculine words without ending (e.g. стол)
.L22 ь я ю ем ём е и ей ями ях // suffixes for 2. declination masculine words without ending (e.g. конь)
.L23 й я ю ем и ев ям ями ях // suffixes for 2. declination masculine words with ending й (герой)
.L24 о а у ом е ам ами ах // suffixes for 2. declination neuter words with ending о (e.g. окно, note about ок_он_!)
.L25 е я ю ем ей ям ями ях // suffixes for 2. declination neuter words with ending е (e.g. поле)
.L26 е я ю ем и й ям ями ях // suffixes for 2. declination neuter words with ending Aе (e.g. здание)

.L31 ь и ью ей ам ами ах // suffixes for 2. declination feminine words without ending (e.g. ночь)


.group а .group а
а V а V
B) а (_ V B) а (_ V
_) а a _) а a
_) а (_ a
а (_ a а (_ a


.group б .group б
б b б b
_) б (_ b@- // бы/б
б (Y b; б (Y b;
б (_ p б (_ p
б (бY b; б (бY b;
в v в v
в (_ f в (_ f
в (Y v; в (Y v;
_) в (_ v@-
в (бY v; в (бY v;
в (вY v; в (вY v;
в (вбY v; в (вбY v;
Cе) г (о_ v Cе) г (о_ v
Cо) г (о_ v Cо) г (о_ v
_все) г (о_ v _все) г (о_ v
_) г (_ gE
г (Y g; г (Y g;
г (_ k г (_ k
г (к x г (к x
г (ффY k г (ффY k
г (хY k г (хY k
г (хкY k г (хкY k
е) г (о_ v
_е) г (о_ v
е) г (ося_ v
_мно) г (о_ g _мно) г (о_ g
_мое) г (о_ v
_не) г (о_ v
_се) г (о v
_твое) г (о_ v


.group д .group д
д d д d
д (B d; д (B d;
_) д (_ dE
д (Y d; д (Y d;
д (_ t д (_ t
д (дY d; д (дY d;
д (ь_ t; д (ь_ t;


.group е .group е
е e
е e
A) е je A) е je
A) е (_ jI3 // second position
// A) е jE2
A) е (_ jI3 //second position
// H) е (_ E#
// H) е E2
бакт) е (р E% // бактериальный, антибактериальный, ... бакт) е (р E% // бактериальный, антибактериальный, ...
барт) е (р E% барт) е (р E%
реб) е (н j8
_) е (_ je
// е E3
// е (_ I2
_) е jI3 //second position _) е jI3 //second position
инт) е (р E% // интернет, интернационал, ... ?????????? инт) е (р E% // интернет, интернационал, ... ??????????
компьют) е (р E% компьют) е (р E%
т) е (ст E% т) е (ст E%
ъ) е je ъ) е je
// ъ) е jE2
ъ) е (_ jI3 //second position ъ) е (_ jI3 //second position
ь) е je ь) е je
// ь) е jE2
ь) е (_ jI3 //second position ь) е (_ jI3 //second position


.group ж .group ж
ж Z ж Z
ж (_ S ж (_ S
_) ж (_ Z@- // же/ж
ж (кY S ж (кY S
ж (пY S ж (пY S
ж (сY S ж (сY S
ж (ффY S ж (ффY S
ж (хY S ж (хY S
ж (хкY S ж (хкY S
ж (ч S;
жч S;


.group з .group з
з z з z
з (Y z; з (Y z;
з (_ s з (_ s
_) з (_ zE
з (дY z; з (дY z;
з (е z
з (ж Z з (ж Z
з (зY_ s; з (зY_ s;
з (зY z; з (зY z;
з (ффY s з (ффY s
з (хY s з (хY s
з (хкY s з (хкY s
з (ч S;
зч S;
з (ш S з (ш S
зщ S; зщ S;
з (щ s з (щ s
ж) и y ж) и y
_) и I _) и I
и (_ I и (_ I
_) и (_ i
ш) и y ш) и y


.group й .group й
й j й j
_) й (_ ,i'k@-*'AtkOjI


.group к .group к
к k к k
к (Y k; к (Y k;
_) к (_ k@-
к (б g к (б g
к (бY g к (бY g
к (г g к (г g


.group л .group л
л l л l
_) л (_ El^
л (Y l;
л (Y l^


.group м .group м
м m м m
_) м (_ Em
м (Y m; м (Y m;
м (бY m; м (бY m;
м (вY m; м (вY m;
.group н .group н
н n н n
биз) не (с nE% биз) не (с nE%
_) н (_ En_
н (Y n;
// н (B n^
// н (Y n# ?
н (_ n_ н (_ n_
// н (дB n^
// н (дY n^
// н (зY n^
// н (нB n^
// н (нY n^
// н (сY n^
// н (тY n^


.group о .group о
о o о o
_) о (_ o
// о (B oj
// о (FY oj


.group п .group п
п p п p
п (Y p; п (Y p;
_) п (_ pE
п (б b п (б b
п (б' b; п (б' b;
п (г b п (г b
.group р .group р
р r р r
р (B r; р (B r;
_) р (_ Er
р (Y r; р (Y r;
р (ь rI^ р (ь rI^


.group с .group с
с s с s
_) с (_ s@-
с (Y s; с (Y s;
с (б z с (б z
с (г z с (г z
с (сY s; с (сY s;
с (тY s; с (тY s;
с (ть s с (ть s
с (ч S;
сч S;
с (ш S с (ш S
с (щ s;s; с (щ s;s;


.group т .group т
т t т t
Y) тс ts
Y) тс ts
т (Y t; т (Y t;
_) т (_ tE
т (б d т (б d
т (г d т (г d
т (дB d; т (дB d;


.group у .group у
у u у u
B) у u#
_) у (_ u
B) у u#


.group ф .group ф
ф f ф f
_) ф (_ Ef
ф (Y f; ф (Y f;
ф (б v ф (б v
ф (б' v; ф (б' v;
.group х .group х
х x х x
х (Y x //С х (Y x //С
_) х (_ xA
х (бY x х (бY x
х (б x х (б x
х (бвY x х (бвY x


.group ц .group ц
ц ts ц ts
_) ц (_ tsE
ц (б dz ц (б dz
ц (бY dz ц (бY dz
ц (бвY dz ц (бвY dz


.group ч .group ч
ч tS; ч tS;
деви) ч (н S //Варианты окончаний женских отчеств типа Никитична
коне) ч (но S
лу) ч (ше t
пустя) ч (н S
скворе)ч (н S
ску) ч (н S
_) ч (_ tS;e
лу) ч (ше t
ч (б dZ; ч (б dZ;
ч (бY dZ; ч (бY dZ;
ч (бвY dZ; ч (бвY dZ;
ч (ж dZ; ч (ж dZ;
ч (з dZ; ч (з dZ;
ч (зY dZ; ч (зY dZ;
ч (на_ S
ч (не_ S
ч (ной_ S
ч (ну_ S
ч (ны_ S
_) ч (то S
яи) ч (ни S
//Варианты окончаний женских отчеств типа Никитична
деви) ч (н S
коне) ч (но S
пустя) ч (н S
скворе)ч (н S
ску) ч (н S
ч (на_ S
ч (не_ S
ч (ной_ S
ч (ну_ S
ч (ны_ S
_) ч (то S
яи) ч (ни S


.group ш .group ш
ш S ш S
_) ш (_ SA
ш (бY Z ш (бY Z
ш (б Z ш (б Z
ш (бвY Z ш (бвY Z
ш (зY Z ш (зY Z
ш (з Z ш (з Z



.group щ .group щ
щ S; щ S;
_) щ (_ S;ja
щ (бY Z; щ (бY Z;
щ (б Z; щ (б Z;
щ (бвY Z; щ (бвY Z;
щ (з Z; щ (з Z;


.group ъ .group ъ
ъ (Y _|
_) ъ (_ tv;'8@-*dyjzn'Ak
ъ (Y j


.group ы .group ы
ы y ы y
_) ы (_ y


.group ь .group ь
ь (Y // no pronunciation (i.e. silent)
_) ь (_ m;'jak;I#jzn'Ak
ь (Y j


.group э .group э
э E2 э E2
_) э E# _) э E#
э (_ E# э (_ E#
_) э (_ e


.group ю .group ю
ю u" ю u"
ъ) ю ju ъ) ю ju
ь) ю ju ь) ю ju
_) ю ju _) ю ju
_) ю (_ ju


.group я .group я
я V я V
// TODO: in unstressed position it sometimes sounds more like [i] than like [V]
A) я ja A) я ja
A) я (_ ja //second position A) я (_ ja //second position
// C) я ja# ? // TODO: in unstressed position it sometimes sounds more like [i] than like [V]
// C) я ja# ?
ъ) я ja ъ) я ja
ъ) я (_ ja //second position ъ) я (_ ja //second position
ь) я ja ь) я ja
ь) я (_ ja //second position ь) я (_ ja //second position
_) я (_ ja
_) я ja //second position _) я ja //second position
я (_ V я (_ V


.group ё .group ё
ё '8 ё '8
_) ё 'j8 _) ё 'j8
_) ё (_ j8
ж) ё 'O ж) ё 'O
ш) ё 'O ш) ё 'O



+ 178
- 136
phsource/ph_russian View File



phoneme g phoneme g
vcd vel stp prevoice vcd vel stp prevoice
voicingswitch k voicingswitch k
endphoneme endphoneme





phoneme x phoneme x
vls vel frc vls vel frc
lengthmod 3 lengthmod 3
Vowelin f1=0 f2=2300 200 400 f3=-100 80 Vowelin f1=0 f2=2300 200 400 f3=-100 80
Vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20 Vowelout f1=0 f2=2300 300 400 f3=-100 80 rms=20
// IF nextPh(isPause) THEN
// WAV(ufric/x, 120)
// ENDIF
WAV(ufric/x_hr, 30) WAV(ufric/x_hr, 30)
endphoneme endphoneme


endphoneme endphoneme




phoneme l
liquid rfx
ipa ɭ
lengthmod 7
length 80
IF nextPh(isPause) THEN
FMT(l/l_,120)
ELSE
FMT(l/l_,120)
ENDIF
endphoneme


phoneme l^ // From Latvian ļ
liquid
ipa ʎ
lengthmod 7
Vowelout len=60 lenadd rate
length 80

NextVowelStarts
VowelStart(l^/j2@)
VowelStart(l^/j2a)
VowelStart(l^/j2e)
VowelStart(l^/j2i)
VowelStart(l^/j2o)
VowelStart(l^/j2u)
EndSwitch

IF prevPh(isPause) THEN
FMT(l^/_l^)
ELSEIF nextPh(isPause) THEN
FMT(l^/l^_,120)
ENDIF
phoneme l


FMT(l^/l^)
liquid rfx
ipa ɭ
lengthmod 7
length 40
FMT(l^/l_rfx)
endphoneme endphoneme


phoneme l^
liquid rfx pzd
ipa ɭ
// lengthmod 7
length 80
// FMT(l^/l^)
FMT(l^/l_rfx)
endphoneme


phoneme s phoneme s
vls alv frc sib vls alv frc sib
// voicingswitch z
lengthmod 3 lengthmod 3
Vowelin f1=0 f2=1700 -300 300 f3=-100 80 Vowelin f1=0 f2=1700 -300 300 f3=-100 80
Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20 Vowelout f1=0 f2=1700 -300 250 f3=-100 80 rms=20
// IF nextPh(isPause) THEN
// WAV(ufric/s_)
// ELIF nextPh(p) OR nextPh(t) OR nextPh(k) THEN
// WAV(ufric/s!)
// ENDIF
WAV(ufric/s) WAV(ufric/s)
endphoneme endphoneme


phoneme s; phoneme s;
import_phoneme en/s import_phoneme en/s
//CALL en/s
endphoneme endphoneme





//phoneme n
// vcd pal nas
// FMT(n/nru)
//
// import_phoneme en/n
// length 200
//endphoneme

phoneme n_ phoneme n_
// vcd pal nas
// FMT(n/nru)

import_phoneme en/n import_phoneme en/n
// length 200
endphoneme endphoneme






phoneme n# phoneme n#
vcd pal nas pzd vcd pal nas pzd
ipa ɲ ipa ɲ
lengthmod 4 lengthmod 4


IF KlattSynth THEN IF KlattSynth THEN
VowelStart(klatt/n^@)
FMT(klatt/n^)
VowelStart(klatt/n^@)
FMT(klatt/n^)
ENDIF ENDIF


NextVowelStarts NextVowelStarts
VowelStart(n^/n^@)
VowelStart(n^/n^a)
VowelStart(n^/n^e)
VowelStart(n^/n^i)
VowelStart(n^/n^o)
VowelStart(n^/n^u)
VowelStart(n^/n^@)
VowelStart(n^/n^a)
VowelStart(n^/n^e)
VowelStart(n^/n^i)
VowelStart(n^/n^o)
VowelStart(n^/n^u)
EndSwitch EndSwitch


IF prevPh(isPause) THEN IF prevPh(isPause) THEN
FMT(n^/_n^)
FMT(n^/_n^)
ELIF nextPh(isNotVowel) THEN ELIF nextPh(isNotVowel) THEN
IF nextPhW(n^) THEN
length 75
ELIF prevPhW(n^) THEN
length 100
ENDIF
FMT(n^/n^_)
IF nextPhW(n^) THEN
length 75
ELIF prevPhW(n^) THEN
length 100
ENDIF
FMT(n^/n^_)
ENDIF ENDIF
endphoneme endphoneme


endphoneme endphoneme





phoneme ts phoneme ts
import_phoneme consonants/ts import_phoneme consonants/ts
endphoneme endphoneme
Vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70 Vowelin f1=2 f2=2700 400 600 f3=300 80 rate len=70


IF PreVoicing THEN IF PreVoicing THEN
FMT(dzh/xdzh)
FMT(dzh/xdzh)
ENDIF ENDIF


IF nextPh(isPause2) THEN IF nextPh(isPause2) THEN
FMT(dzh/dzh_) addWav(x/dzh_)
FMT(dzh/dzh_) addWav(x/dzh_)
ENDIF ENDIF
endphoneme endphoneme


endphoneme endphoneme





// Palatalized versions of consonants // Palatalized versions of consonants


phoneme t phoneme t
import_phoneme pl/d; import_phoneme pl/d;
endphoneme endphoneme


//phoneme m;
// import_phoneme ro/m;
//endphoneme

phoneme m; phoneme m;
vcd blb nas vcd blb nas
Vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk Vowelout f1=2 f2=1000 -500 -350 f3=-200 80 brk
lengthmod 4 lengthmod 4
length 60


IF KlattSynth THEN IF KlattSynth THEN
Vowelin f1=0 f2=1000 -50 -200 f3=-200 80
IF nextPh(isPause2) THEN
FMT(klatt/m_)
ENDIF
FMT(klatt/m)
Vowelin f1=0 f2=1000 -50 -200 f3=-200 80
IF nextPh(isPause2) THEN
FMT(klatt/m_)
ENDIF
FMT(klatt/m)
ENDIF ENDIF
FMT(m/mj)

VowelStart(m/mi)

// NextVowelStarts
// VowelStart(m/m@)
// VowelStart(m/ma)
// VowelStart(m/me)
// VowelStart(m/mi)
// VowelStart(m/mo)
// VowelStart(m/mu)
// EndSwitch

// IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN
FMT(m/mj)
// ELIF prevPh(isPause) THEN
// FMT(m/_m)
// ELIF nextPh(isNotVowel) THEN
// FMT(m/m_)
// ENDIF
endphoneme endphoneme




phoneme I^ // "silent i", palatilizes the preceding consonant

phoneme I^ // "silent i", palatilizes the preceding consonant
vwl starttype #i endtype #i vwl starttype #i endtype #i
unstressed nsy unstressed nsy
length 70 length 70
IF nextPh(isVowel) THEN IF nextPh(isVowel) THEN
ChangePhoneme(;)
ChangePhoneme(;)
ENDIF ENDIF
IF prevPh(m;) THEN IF prevPh(m;) THEN
FMT(vwl_ro/mi)
FMT(vwl_ro/mi)
ENDIF ENDIF
FMT(vwl_ru/ii-) FMT(vwl_ru/ii-)
endphoneme endphoneme





//******************************************************************* //*******************************************************************
// VOWELS // VOWELS
//******************************************************************* //*******************************************************************


phoneme i phoneme i
IF prevPh(Z) THEN IF prevPh(Z) THEN
ChangePhoneme(y)
ChangePhoneme(y)
ENDIF ENDIF
vwl starttype #i endtype #i vwl starttype #i endtype #i
length 50 length 50
vwl starttype #i endtype #i vwl starttype #i endtype #i
length 80 length 80
IF nextVowel(isMaxStress) THEN IF nextVowel(isMaxStress) THEN
ChangePhoneme(I)
ChangePhoneme(I)
ENDIF ENDIF
IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
ChangePhoneme(i)
ChangePhoneme(i)
ENDIF ENDIF
FMT(vwl_ru/ii#) FMT(vwl_ru/ii#)
endphoneme endphoneme
length 80 length 80


IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
IF prevPhW(j) THEN
ChangePhoneme(a)
ELSE
ChangePhoneme(i)
ENDIF
IF prevPhW(j) THEN
ChangePhoneme(a)
ELSE
ChangePhoneme(i)
ENDIF
ENDIF ENDIF
FMT(vwl_ru/ii) FMT(vwl_ru/ii)
endphoneme endphoneme
vwl starttype #i endtype #i vwl starttype #i endtype #i
length 80 length 80
IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
ChangePhoneme(e)
ChangePhoneme(e)
ENDIF ENDIF
IF prevPhW(isPalatal) THEN IF prevPhW(isPalatal) THEN
ChangePhoneme(I)
ChangePhoneme(I)
ENDIF ENDIF
FMT(vwl_ru/ii) FMT(vwl_ru/ii)
endphoneme endphoneme
vwl starttype #i endtype #i vwl starttype #i endtype #i
length 80 length 80
IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
IF prevPhW(j) THEN
ChangePhoneme(e)
ELSE
ChangePhoneme(ja)
ENDIF
IF prevPhW(j) THEN
ChangePhoneme(e)
ELSE
ChangePhoneme(ja)
ENDIF
ENDIF ENDIF
IF prevPhW(isPalatal) THEN IF prevPhW(isPalatal) THEN
ChangePhoneme(I)
ChangePhoneme(I)
ENDIF ENDIF
FMT(vwl_ru/ii) FMT(vwl_ru/ii)
endphoneme endphoneme
vwl starttype #e endtype #e vwl starttype #e endtype #e
length 100 length 100
IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
IF prevPhW(j) THEN
ChangePhoneme(e)
ELSE
ChangePhoneme(E)
ENDIF
IF prevPhW(j) THEN
ChangePhoneme(e)
ELSE
ChangePhoneme(E)
ENDIF
ENDIF ENDIF
FMT(vwl_ru/E#) FMT(vwl_ru/E#)
endphoneme endphoneme
vwl starttype #e endtype #e vwl starttype #e endtype #e
length 80 length 80
IF nextVowel(isMaxStress) THEN IF nextVowel(isMaxStress) THEN
IF prevPh(j) THEN
ChangePhoneme(I3)
ELSE
ChangePhoneme(E#)
ENDIF
IF prevPh(j) THEN
ChangePhoneme(I3)
ELSE
ChangePhoneme(E#)
ENDIF
ENDIF ENDIF


IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
IF prevPhW(j) THEN
ChangePhoneme(e)
ELSE
ChangePhoneme(E)
ENDIF
IF prevPhW(j) THEN
ChangePhoneme(e)
ELSE
ChangePhoneme(E)
ENDIF
ENDIF ENDIF


FMT(vwl_ru/E@) FMT(vwl_ru/E@)
vwl starttype #e endtype #e vwl starttype #e endtype #e
length 80 length 80
IF nextVowel(isMaxStress) THEN IF nextVowel(isMaxStress) THEN
ChangePhoneme(I)
ChangePhoneme(I)
ENDIF ENDIF
IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
ChangePhoneme(e)
ChangePhoneme(e)
ENDIF ENDIF
IF prevPhW(isPalatal) THEN IF prevPhW(isPalatal) THEN
ChangePhoneme(E2)
ChangePhoneme(E2)
ENDIF ENDIF
FMT(vwl_ru/E@) FMT(vwl_ru/E@)
endphoneme endphoneme
vwl starttype #o endtype #o vwl starttype #o endtype #o
length 80 length 80
IF prevPhW(isPalatal) THEN IF prevPhW(isPalatal) THEN
ChangePhoneme(8)
ChangePhoneme(8)
ENDIF ENDIF
IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
ChangePhoneme(o)
ChangePhoneme(o)
ENDIF ENDIF
FMT(vwl_ru/oo) FMT(vwl_ru/oo)
endphoneme endphoneme
vwl starttype #e endtype #e vwl starttype #e endtype #e
length 100 length 100
IF prevPh(Z) THEN IF prevPh(Z) THEN
ChangeIfNotStressed(y)
ChangePhoneme(E)
ChangeIfNotStressed(y)
ChangePhoneme(E)
ENDIF ENDIF
IF prevPh(S) THEN IF prevPh(S) THEN
ChangeIfNotStressed(y)
ChangePhoneme(E)
ChangeIfNotStressed(y)
ChangePhoneme(E)
ENDIF ENDIF
IF prevPh(ts) THEN IF prevPh(ts) THEN
ChangeIfNotStressed(y)
ChangePhoneme(E)
ChangeIfNotStressed(y)
ChangePhoneme(E)
ENDIF ENDIF
ChangeIfNotStressed(i) ChangeIfNotStressed(i)
FMT(vwl_ru/ee) FMT(vwl_ru/ee)
phoneme ja phoneme ja
vwl starttype #i endtype #a vwl starttype #i endtype #a
IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
length 200
FMT(vwl_ru/ja)
length 200
FMT(vwl_ru/ja)
ELSE ELSE
FMT(vdiph2/ii@)
FMT(vdiph2/ii@)
ENDIF ENDIF
endphoneme endphoneme


phoneme ja# phoneme ja#
vwl starttype #i endtype #a vwl starttype #i endtype #a
IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
FMT(vowel/&)
// ChangePhoneme(A)
FMT(vowel/&)
// ChangePhoneme(A)
ELSE ELSE
IF prevPhW(isPalatal) THEN
ChangePhoneme(I)
ENDIF
IF prevPhW(isPalatal) THEN
ChangePhoneme(I)
ENDIF
ENDIF ENDIF


// length 200 // length 200
vwl starttype #a endtype #@ vwl starttype #a endtype #@
unstressed unstressed
length 80 length 80
// IF nextVowel(isMaxStress) THEN
// not needed? because V# is only used at end-of-word
// ChangePhoneme(I3)
// ENDIF


IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
IF prevPhW(j) THEN
ChangePhoneme(A)
ELSE
ChangePhoneme(ja)
ENDIF
IF prevPhW(j) THEN
ChangePhoneme(A)
ELSE
ChangePhoneme(ja)
ENDIF
ENDIF ENDIF


IF prevPhW(isPalatal) THEN IF prevPhW(isPalatal) THEN
ChangePhoneme(V)
ChangePhoneme(V)
ENDIF ENDIF


FMT(vowel/V_2) FMT(vowel/V_2)


IF prevPhW(j) THEN IF prevPhW(j) THEN
ELSE ELSE
IF thisPh(isMaxStress) THEN
IF prevPhW(isPalatal) THEN
ChangePhoneme(ja)
ELSE
ChangePhoneme(A)
ENDIF
ELSE
IF prevPhW(isPalatal) THEN
ChangePhoneme(I)
ENDIF
ENDIF
IF thisPh(isMaxStress) THEN
IF prevPhW(isPalatal) THEN
ChangePhoneme(ja)
ELSE
ChangePhoneme(A)
ENDIF
ELSE
IF prevPhW(isPalatal) THEN
ChangePhoneme(I)
ENDIF
ENDIF
ENDIF ENDIF


IF thisPh(isWordEnd) THEN IF thisPh(isWordEnd) THEN
FMT(vowel/a#_3)
FMT(vowel/a#_3)
ENDIF ENDIF
FMT(vwl_ru/aa) FMT(vwl_ru/aa)
endphoneme endphoneme




phoneme V phoneme V
vwl starttype #o endtype #o
length 100
vwl starttype #a endtype #@
length 80
unstressed unstressed


IF nextVowel(isMaxStress) THEN IF nextVowel(isMaxStress) THEN
ChangePhoneme(a)
ChangePhoneme(a)
ENDIF ENDIF


IF thisPh(isMaxStress) THEN IF thisPh(isMaxStress) THEN
IF prevPhW(j) THEN
ChangePhoneme(a)
ELSE
ChangePhoneme(A)
ENDIF
IF prevPhW(j) THEN
ChangePhoneme(a)
// ELIF prevPhW(isPalatal) THEN
// ChangePhoneme(ja)
ELSE
ChangePhoneme(A)
ENDIF
ENDIF ENDIF


FMT(vowel/V_2) FMT(vowel/V_2)
FMT(r3/r_ru2) addWav(r3/r_ru, 50) FMT(r3/r_ru2) addWav(r3/r_ru, 50)
endphoneme endphoneme




Loading…
Cancel
Save