eSpeak NG is an open source speech synthesizer that supports more than hundred languages and accents.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

sjn_rules 2.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. // syllable nuclei: vowels (any length) and diphthongs
  2. .L01 i e a o u y í é á ó ú ý î ê â ô û ŷ ae ai ei oe ui au
  3. .replace
  4. // turn x into cs, both because that’s how it’s pronounced
  5. // (strictly speaking only in some Quenya, but let’s do it here too)
  6. // and to free up x as a single letter for ch (see immediately below)
  7. x cs
  8. // turn ch, dh, th into single consonants for stress purposes
  9. ch x
  10. dh ð
  11. th þ
  12. .group a
  13. a a
  14. ae (+ aE
  15. ai (+ aI
  16. au (+ aU
  17. // light penultimate syllable: put stress on antepenultimate
  18. a (L01X =a
  19. a (CL01X =a
  20. .group á
  21. á a:
  22. .group â
  23. â a::
  24. .group b
  25. b b
  26. .group c
  27. c k
  28. // recall that ch was replaced with x earlier
  29. .group x
  30. x X
  31. .group d
  32. d d
  33. // recall that dh was replaced with ð earlier
  34. .group ð
  35. ð D
  36. .group e
  37. e e
  38. ei (+ eI
  39. // light penultimate syllable: put stress on antepenultimate
  40. e (L01X =e
  41. e (CL01X =e
  42. .group é
  43. é e:
  44. .group ê
  45. ê e::
  46. .group f
  47. f f
  48. f (_ v
  49. .group g
  50. g g
  51. .group h
  52. h h
  53. hw w#
  54. .group i
  55. i I
  56. _) i (A+ j
  57. // light penultimate syllable: put stress on antepenultimate
  58. i (L01X =I
  59. i (CL01X =I
  60. .group í
  61. í i:
  62. .group î
  63. î i::
  64. // j and k do not occur in Sindarin
  65. .group l
  66. l l
  67. lh l#
  68. .group m
  69. m m
  70. .group n
  71. n n
  72. .group ng
  73. ng Ng
  74. ng (_ N
  75. .group o
  76. o o
  77. oe (+ OI
  78. // light penultimate syllable: put stress on antepenultimate
  79. o (L01X =o
  80. o (CL01X =o
  81. .group ó
  82. ó o:
  83. .group ô
  84. ô o::
  85. .group p
  86. p p
  87. .group ph
  88. ph f
  89. A) ph (A f:
  90. // q does not occur in Sindarin
  91. .group r
  92. r R
  93. rh hR
  94. .group s
  95. s s
  96. .group t
  97. t t
  98. // recall that th was replaced with þ earlier
  99. .group þ
  100. þ T
  101. .group ty
  102. ty tj
  103. .group u
  104. u u
  105. ui (+ uI
  106. // light penultimate syllable: put stress on antepenultimate
  107. u (L01X =u
  108. u (CL01X =u
  109. .group û
  110. û u::
  111. .group ú
  112. ú u:
  113. .group v
  114. v v
  115. .group w
  116. w w
  117. // recall that x was replaced with cs earlier
  118. .group y
  119. y y
  120. // light penultimate syllable: put stress on antepenultimate
  121. y (L01X =y
  122. y (CL01X =y
  123. .group ý
  124. ý y:
  125. .group ŷ
  126. ŷ y::
  127. // z does not occur in Sindarin