ph_latin 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. //=========================================================
  2. // Latin
  3. //=========================================================
  4. phoneme a
  5. vwl starttype #a endtype #a
  6. length 170
  7. FMT(vowel/a_5)
  8. endphoneme
  9. phoneme E
  10. vwl starttype #e endtype #e
  11. length 170
  12. FMT(vowel/ee_1)
  13. endphoneme
  14. phoneme I
  15. vwl starttype #i endtype #i
  16. length 150
  17. IfNextVowelAppend(;)
  18. FMT(vowel/ii_5)
  19. endphoneme
  20. phoneme O
  21. vwl starttype #o endtype #o
  22. length 160
  23. FMT(vowel/o)
  24. endphoneme
  25. phoneme U
  26. vwl starttype #u endtype #u
  27. length 160
  28. FMT(vowel/u)
  29. endphoneme
  30. phoneme a:
  31. vwl starttype #a endtype #a
  32. length 270
  33. FMT(vowel/a_3)
  34. endphoneme
  35. phoneme e:
  36. vwl starttype #e endtype #e
  37. length 260
  38. FMT(vowel/e)
  39. endphoneme
  40. phoneme i:
  41. vwl starttype #i endtype #i
  42. length 240
  43. FMT(vowel/i_2)
  44. endphoneme
  45. phoneme o:
  46. vwl starttype #o endtype #o
  47. length 250
  48. FMT(vowel/o_2)
  49. endphoneme
  50. phoneme u:
  51. vwl starttype #u endtype #u
  52. length 250
  53. FMT(vowel/u_bck2)
  54. endphoneme
  55. phoneme y
  56. vwl starttype #i endtype #i
  57. length 150
  58. FMT(vowel/y)
  59. endphoneme
  60. phoneme y:
  61. vwl starttype #i endtype #i
  62. length 250
  63. FMT(vowel/y_2)
  64. endphoneme
  65. phoneme aU
  66. vwl starttype #a endtype #u
  67. length 270
  68. FMT(vdiph/aau_2)
  69. endphoneme
  70. phoneme aI
  71. vwl starttype #a endtype #i
  72. length 270
  73. FMT(vdiph/ae)
  74. endphoneme
  75. phoneme eI
  76. vwl starttype #e endtype #i
  77. length 270
  78. FMT(vdiph/ei)
  79. endphoneme
  80. phoneme EU
  81. vwl starttype #e endtype #u
  82. length 270
  83. FMT(vdiph/eeu_2)
  84. endphoneme
  85. phoneme OI
  86. vwl starttype #o endtype #i
  87. length 250
  88. FMT(vdiph/oi)
  89. endphoneme
  90. //===========
  91. // CONSONANTS
  92. //===========
  93. phoneme p // unaspirated
  94. import_phoneme consonants/p-
  95. voicingswitch b
  96. endphoneme
  97. // <h> should actually be a modifier of a phoneme, but we use a short /h/ here.
  98. phoneme <h>
  99. vls glt apr
  100. length 50
  101. lengthmod 3
  102. ipa ʰ
  103. IF nextPh(#@) THEN
  104. WAV(h/h@)
  105. ELIF nextPh(#a) THEN
  106. WAV(h/ha)
  107. ELIF nextPh(#e) THEN
  108. WAV(h/he)
  109. ELIF nextPh(#i) THEN
  110. WAV(h/hi)
  111. ELIF nextPh(#o) THEN
  112. WAV(h/ho)
  113. ELIF nextPh(#u) THEN
  114. WAV(h/hu)
  115. ENDIF
  116. WAV(h/h_, 70) // no vowel following
  117. endphoneme
  118. // Allen, Vox Latina, Chapter 1, Section v
  119. // Use 'dark' l (l/2) at the end of a word or another consonant
  120. phoneme l
  121. import_phoneme en/l
  122. endphoneme