Files
espeak-ng/dictsource/sjn_rules
T
Lucas Werkmeister 9ac1a5bffb Fix treatment of diphthongs for stress in Elvish
Stress is determined based on the syllables, not the vowels, so the
diphthongs need to count as a single syllable. If there is a diphthong
at the end of a word, the penultimate syllable can still be unstressed
if it is light. (The name of Arvedui, last king of Arthedain, is one
example of this that I could think of, but I’m sure it’s not the only
one.)
2021-07-18 13:28:03 +02:00

172 lines
2.0 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// syllable nuclei: vowels (any length) and diphthongs
.L01 i e a o u y í é á ó ú ý î ê â ô û ŷ ae ai ei oe ui au
.replace
// turn x into cs, both because that’s how it’s pronounced
// (strictly speaking only in some Quenya, but let’s do it here too)
// 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
ae (+ aE
ai (+ aI
au (+ aU
// light penultimate syllable: put stress on antepenultimate
a (L01X =a
a (CL01X =a
.group á
á 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
ei (+ eI
// light penultimate syllable: put stress on antepenultimate
e (L01X =e
e (CL01X =e
.group é
é e:
.group ê
ê e::
.group f
f f
f (_ v
.group g
g g
.group h
h h
// TODO hw
.group i
i i
_) i (A+ j
// light penultimate syllable: put stress on antepenultimate
i (L01X =i
i (CL01X =i
.group í
í i:
.group î
î i::
// j and k do not occur in Sindarin
.group l
l l
// TODO lh
.group m
m m
.group n
n n
.group ng
ng Ng
ng (_ N
.group o
o o
oe (+ OI
// light penultimate syllable: put stress on antepenultimate
o (L01X =o
o (CL01X =o
.group ó
ó o:
.group ô
ô o::
.group p
p p
.group ph
ph f
A) ph (A f:
// q does not occur in Sindarin
.group r
r R
// TODO rh
.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
ui (+ ui
// light penultimate syllable: put stress on antepenultimate
u (L01X =u
u (CL01X =u
.group û
û u::
.group ú
ú u:
.group v
v v
.group w
w w
// recall that x was replaced with cs earlier
.group y
y y
// light penultimate syllable: put stress on antepenultimate
y (L01X =y
y (CL01X =y
.group ý
ý y:
.group ŷ
ŷ y::
// z does not occur in Sindarin