mirror of
https://github.com/rhasspy/espeak-ng.git
synced 2026-10-31 05:35:35 +00:00
Long vowels, marked with an acute accent or a circumflex, are longer than short vowels (duh) and always make a heavy syllable (i.e. we don’t include the rules to move stress to the previous syllable). In Quenya, ⟨é⟩ and ⟨ó⟩ are “tenser and ‘closer’” than the short vowels, according to Appendix E of The Lord of the Rings, while in Sindarin they’re supposed to be the same; the phonemes we inherit from Latin seem to reproduce this reasonably well for Quenya, and for now we use them for Sindarin too, which works nicely for the most common Sindarin word with a long o, “Lothlórien” (because Lórien is actually a Quenya name, and therefore I assume *that* ⟨ó⟩ should actually be /o/ and not /ɔ/). I might adjust the phonemes later (at which point Lothlórien will presumably have to go in sjn_list).
135 lines
1.4 KiB
Plaintext
135 lines
1.4 KiB
Plaintext
.replace
|
||
// turn x into cs, both because that’s how it’s pronounced
|
||
// and to free up x as a single letter for ch (see immediately below)
|
||
x cs
|
||
// turn ch, dh, th into single consonants for stress purposes
|
||
ch x
|
||
dh ð
|
||
th þ
|
||
|
||
.group a
|
||
a a
|
||
// light penultimate syllable: put stress on antepenultimate
|
||
a (AX =a
|
||
a (CAX =a
|
||
|
||
.group á
|
||
á a:
|
||
|
||
.group b
|
||
b b
|
||
|
||
.group c
|
||
c k
|
||
// recall that ch was replaced with x earlier
|
||
|
||
.group x
|
||
x x
|
||
|
||
.group d
|
||
d d
|
||
// recall that dh was replaced with ð earlier
|
||
|
||
.group ð
|
||
ð D
|
||
|
||
.group e
|
||
e e
|
||
// light penultimate syllable: put stress on antepenultimate
|
||
e (AX =e
|
||
e (CAX =e
|
||
|
||
.group é
|
||
é e:
|
||
|
||
.group f
|
||
f f
|
||
f (_ v
|
||
|
||
.group g
|
||
g g
|
||
|
||
.group h
|
||
h h
|
||
// TODO ht, hl, hr, hw, hy
|
||
|
||
.group i
|
||
i i
|
||
// light penultimate syllable: put stress on antepenultimate
|
||
i (AX =i
|
||
i (CAX =i
|
||
|
||
.group í
|
||
í i:
|
||
|
||
// j and k do not occur in Quenya
|
||
|
||
.group l
|
||
l l
|
||
|
||
.group m
|
||
m m
|
||
|
||
.group n
|
||
n n
|
||
|
||
.group ng
|
||
ng Ng
|
||
ng (_ N
|
||
|
||
.group o
|
||
o o
|
||
// light penultimate syllable: put stress on antepenultimate
|
||
o (AX =o
|
||
o (CAX =o
|
||
|
||
.group ó
|
||
ó o:
|
||
|
||
.group p
|
||
p p
|
||
|
||
.group ph
|
||
ph f
|
||
|
||
.group qu
|
||
qu kw
|
||
|
||
.group r
|
||
r R
|
||
|
||
.group s
|
||
s s
|
||
|
||
.group t
|
||
t t
|
||
// recall that th was replaced with þ earlier
|
||
|
||
.group þ
|
||
þ T
|
||
|
||
.group ty
|
||
ty tj
|
||
|
||
.group u
|
||
u u
|
||
// light penultimate syllable: put stress on antepenultimate
|
||
u (AX =u
|
||
u (CAX =u
|
||
|
||
.group ú
|
||
ú u:
|
||
|
||
.group v
|
||
v v
|
||
|
||
.group w
|
||
w w
|
||
|
||
// recall that x was replaced with cs earlier
|
||
|
||
.group y
|
||
y j
|
||
|
||
// z does not occur in Quenya
|