// Phonemes for Tamil
// This inherits from ph_hindi


phoneme @
  vwl  starttype #@  endtype #@
  length 130
  FMT(vowel/V_2)
endphoneme

phoneme a
  vwl  starttype #a  endtype #a
  length 130
  ChangeIfNotStressed(V)
  FMT(vowel/a)
endphoneme

phoneme V
  vwl  starttype #@  endtype #@
  ipa ʌ
  length 130
  IF nextPh(isWordEnd) AND nextPh(m) THEN
    ChangePhoneme(@)
  ENDIF
  FMT(vowel/V_3)
endphoneme

phoneme V#    // omit if the next phoneme is a vowel
  vwl  starttype #@  endtype #@
  length 130
  IF nextPhW(isVowel) OR nextPhW(#) THEN
    ChangePhoneme(NULL)
  ENDIF
  ChangePhoneme(V)
endphoneme

phoneme a:
  vwl  starttype #a  endtype #a
  length 300
  FMT(vowel/a_5)
endphoneme


phoneme e
  vwl  starttype #e  endtype #e
  length 130
  FMT(vowel/e)
endphoneme


phoneme e:
  vwl  starttype #e  endtype #e
  length 250
  FMT(vowel/e)
endphoneme


phoneme i
  vwl  starttype #i  endtype #i
  length 130
  IF thisPh(isWordEnd) AND thisPh(isNotStressed) THEN
    FMT(vowel/ii_5)
  ENDIF
  FMT(vowel/i_6)
endphoneme


phoneme i:
  vwl  starttype #i  endtype #i
  length 270
  FMT(vowel/i)
endphoneme



phoneme o
  vwl  starttype #o  endtype #o
  length 130
  FMT(vowel/o)
endphoneme


phoneme o:
  vwl  starttype #o  endtype #o
  length 300
  FMT(vowel/o)
endphoneme


phoneme u
  vwl  starttype #u  endtype #u
  length 110
  ChangeIfNotStressed(U)
  FMT(vowel/u_6)
endphoneme

phoneme u2   // as [u] but don't reduce
  vwl  starttype #u  endtype #u
  length 110
  FMT(vowel/u_6)
endphoneme

phoneme U
  vwl  starttype #u  endtype #u
  ipa ʉ
  length 110
  FMT(vowel/u#_3)
endphoneme

phoneme u:
  vwl  starttype #u  endtype #u
  length 280
  IF prevPhW(isVelar) THEN
  ELSE
    ChangeIfNotStressed(U:)
  ENDIF
  FMT(vowel/u_6)
endphoneme

phoneme U:
  vwl  starttype #u  endtype #u
  ipa ʉ
  length 270
  FMT(vowel/u#_3)
endphoneme


phoneme aI
  vwl  starttype #a  endtype #i
  length 280
  FMT(vdiph/ai_8)
endphoneme

phoneme aU
  vwl  starttype #a  endtype #u
  length 270
  FMT(vdiph/au)
endphoneme



phoneme t
  import_phoneme base2/t    // dental
endphoneme

// ?? This is standard [v].  Should be it [v] without the fricative noise?
phoneme v
  import_phoneme base1/v
endphoneme

phoneme : //  Lengthen previous vowel by "length"
  virtual
  length 50
endphoneme

phoneme #    // a NULL phoneme for 'virama'
  virtual
  ChangePhoneme(NULL)
endphoneme

phoneme z.
  CALL base1/z.
  ipa U+027B
endphoneme

phoneme r
  import_phoneme base1/r
endphoneme