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 1.8KB

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