| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 | 
//******************************
// Phonemes for Kinyarwanda (rw), inherits "base2"
//******************************
phoneme a
  vwl starttype #a endtype #a
  length 180
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  IF nextPh(isPause) THEN
    ChangePhoneme(a#)
  ENDIF
  ChangeIfNotStressed(a/)
  FMT(vowel/a_2)
endphoneme
phoneme a/
  vwl starttype #@ endtype #@
  length 180
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  IF nextPh(isPause) THEN
    ChangePhoneme(a#)
  ENDIF
  FMT(vowel/a#)
endphoneme
phoneme e
  vwl starttype #e endtype #e
  length 170
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  IF nextPh(isPause) THEN
    ChangePhoneme(e#)
  ENDIF
  FMT(vowel/e)
endphoneme
phoneme i
  vwl starttype #i endtype #i
  length 150
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  IF nextPh(isPause) THEN
    ChangePhoneme(i#)
  ENDIF
  FMT(vowel/i)
endphoneme
phoneme o
  vwl starttype #o endtype #o
  length 170
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  IF nextPh(isPause) THEN
    ChangePhoneme(o#)
  ENDIF
  FMT(vowel/o)
endphoneme
phoneme u
  vwl starttype #u endtype #u
  length 160
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  IF nextPh(isPause) THEN
    ChangePhoneme(u#)
  ENDIF
  FMT(vowel/u_bck)
endphoneme
phoneme a#
  vwl starttype #@ endtype #@
  length 100
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  FMT(vowel/a#)
endphoneme
phoneme e#
  vwl starttype #e endtype #e
  length 100
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  FMT(vowel/e)
endphoneme
phoneme i#
  vwl starttype #i endtype #i
  length 100
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  FMT(vowel/i)
endphoneme
phoneme o#
  vwl starttype #o endtype #o
  length 100
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  FMT(vowel/o)
endphoneme
phoneme u#
  vwl starttype #u endtype #u
  length 100
  IF nextPh(isVowel) THEN
    ChangePhoneme(NULL)
  ENDIF
  FMT(vowel/u_bck)
endphoneme
phoneme :   // Lengthen previous vowel by "length"
  virtual
  length 120
endphoneme
phoneme +   // high tone, use after a vowel
  stress
  Tone(0, 30, envelope/p_fall, NULL)
endphoneme
phoneme +2  // high tone, use after a vowel
  stress
  Tone(0, 30, envelope/i_risefall2, NULL)
endphoneme
 |