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.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  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. // turn k into c: both letters are equivalent in Tolkien’s languages,
  13. // with c usually reserved for Eldarin languages and k for others
  14. k c
  15. .group a
  16. a a
  17. ae (+ aE
  18. ai (+ aI
  19. au (+ aU
  20. // light penultimate syllable: put stress on antepenultimate
  21. a (L01X =a
  22. a (CL01X =a
  23. .group á
  24. á a:
  25. .group â
  26. â a::
  27. .group b
  28. b b
  29. bb b:
  30. .group c
  31. c k
  32. cc c:
  33. // recall that ch was replaced with x earlier
  34. .group x
  35. x X
  36. .group d
  37. d d
  38. dd d:
  39. // recall that dh was replaced with ð earlier
  40. .group ð
  41. ð D
  42. .group e
  43. e E
  44. ei (+ EI
  45. // light penultimate syllable: put stress on antepenultimate
  46. e (L01X =E
  47. e (CL01X =E
  48. .group é
  49. é E:
  50. .group ê
  51. ê E::
  52. .group f
  53. f f
  54. f (_ v
  55. .group g
  56. g g
  57. gg g:
  58. .group h
  59. h h
  60. hw w#
  61. .group i
  62. i I
  63. _) i (A+ j
  64. // light penultimate syllable: put stress on antepenultimate
  65. i (L01X =I
  66. i (CL01X =I
  67. .group í
  68. í i:
  69. .group î
  70. î i::
  71. // j does not occur in Sindarin
  72. // recall that k was replaced with c earlier
  73. .group l
  74. l l
  75. lh l#
  76. .group m
  77. m m
  78. .group n
  79. n n
  80. .group ng
  81. ng Ng
  82. ng (_ N
  83. .group o
  84. o O
  85. oe (+ OI
  86. // light penultimate syllable: put stress on antepenultimate
  87. o (L01X =O
  88. o (CL01X =O
  89. .group ó
  90. ó O:
  91. .group ô
  92. ô O::
  93. .group p
  94. p p
  95. pp p:
  96. .group ph
  97. ph f
  98. A) ph (A f:
  99. .group q
  100. q _^_qya // q does not occur in Sindarin
  101. .group r
  102. r R
  103. rh hR
  104. .group s
  105. s s
  106. .group t
  107. t t
  108. tt t:
  109. // recall that th was replaced with þ earlier
  110. .group þ
  111. þ T
  112. .group ty
  113. ty tj
  114. .group u
  115. u u
  116. ui (+ uI
  117. // light penultimate syllable: put stress on antepenultimate
  118. u (L01X =u
  119. u (CL01X =u
  120. .group û
  121. û u::
  122. .group ú
  123. ú u:
  124. .group v
  125. v v
  126. .group w
  127. w w
  128. // recall that x was replaced with cs earlier
  129. .group y
  130. y y
  131. // light penultimate syllable: put stress on antepenultimate
  132. y (L01X =y
  133. y (CL01X =y
  134. .group ý
  135. ý y:
  136. .group ŷ
  137. ŷ y::
  138. // z does not occur in Sindarin