Commit Graph
1551 Commits
Author SHA1 Message Date
Lucas Werkmeister 74ec56a192 Add Sindarin “muta cum liquida” words to sjn_list
According to the regular stress rules from Appendix E of The Lord of the
Rings, all three of these words should be stressed on the penultimate
(second) syllable, since that syllable is followed by two consonants;
however, the way they are used in poems suggests they should actually be
stressed on the antepenultimate (first) syllable (example: “in IMlaDRIS
it DWELLS”). According to Concerning Stress Placement In Sindarin [1],
this can be attributed to a hypothetical “muta cum liquida” rule like in
Latin, where some syllables count as light even if they’re followed by
two consonants, because both consonants belong to the following syllable
(e.g. IM-la-dris instead of im-LAD-ris). However, the rule is apparently
not applied systematically: according to [2], in another poem the word
“nogothrim”, which is quite similar in structure to “Nargothrond”, is
clearly stressed on the penultimate syllable. For this reason, we don’t
try to define the “muta cum liquida” rule in sjn_rules (or qya_rules),
but only add the three names Imladris, Menegroth and Nargothrond as
exceptions to the sjn_list.

[1]: https://menegroth.github.io/stress-in-sindarin.html
[2]: https://mildred-of-midgard.dreamwidth.org/158375.html#comment-cmt49575
2021-07-18 13:28:03 +02:00
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
Lucas Werkmeister 65d1ec7f1c Rearrange exception for Sindarin initial prevocalic ⟨i⟩
Using a + is simpler than an additional rule, and scales better if more
rules are introduced later. (A single + seems to be sufficient.)
2021-07-18 13:28:03 +02:00
Lucas Werkmeister ca2ca4c5cb Add Sindarin ⟨ae⟩, ⟨ai⟩, ⟨oe⟩, ⟨ui⟩ diphthongs
For ⟨ae⟩, we used to use the Latin [[aI]] phoneme, which sounds like
/ae/. Call that phoneme [[aE]] for us and introduce a separate [[aI]]
one, which sounds more like /ai/ (since Sindarin has both, and they’re
supposed to sound different, though Appendix E of The Lord of the Rings
notes that there is nothing closely corresponding to ⟨ae⟩ in English and
that it may be pronounced like ⟨ai⟩). Furthermore, for ⟨oe⟩, just remove
the TODO – the Latin phoneme is called [[OI]] but sounds more like /oe/
than /oi/, so it’s actually just fine for our purposes. Finally, the
⟨ui⟩ diphthong is copied from Finnish, just like in Quenya.
2021-07-18 13:28:02 +02:00
Lucas Werkmeister e8fb04bb44 Add Quenya ⟨iu⟩, ⟨ui⟩ diphthongs
Both are copied from the Finnish phonemes, since Finnish was a major
inspiration for Quenya. This means that the ⟨iu⟩ diphthong is a
“falling” one – according to Appendix E of The Lord of the Rings, this
is the original pronunciation, but by the Third Age (the time in which
The Lord of the Rings is set) it had become a “rising” one, so I may
change the phoneme later, not sure.
2021-07-18 13:27:37 +02:00
Lucas Werkmeister c6e6f60154 Make ph between vowels long in Elvish
According to Appendix E of The Lord of the Rings, ⟨ph⟩ stands for /f/
when final (because ⟨f⟩ is pronounced as /v/ in that position), and
otherwise is used instead of ⟨f⟩ either because it’s derived from ⟨p⟩
(in which case it’s presumably pronounced just like ⟨f⟩), or to
represent an especially long /f/. We can’t really tell which case we
have, but from the Omikhleia Sindarin dictionary [1], it appears that
all the long ⟨ph⟩’s are between two vowels, and all the short ones have
at least one adjacent consonant, so let’s use that as a rule and hope it
works out. (The Ambar Eldaron Quenya dictionary [2] is less easily
searchable, so I’m just hoping that this rule works reasonably well for
both languages.)

[1]: https://www.jrrvf.com/hisweloke/sindar/index.html
[2]: https://ambar-eldaron.com/telechargements/quenya-engl-A4.pdf
2021-07-18 13:27:26 +02:00
Lucas Werkmeister f25fda6cd8 Define some Elvish diphthongs
Not all of the diphthongs in Quenya and Sindarin are defined in the
Latin phonemes, and for now we’re sticking to those, so some diphthongs
just get TODOs for now. Also, we’re temporarily using the same phoneme
for ⟨ae⟩/⟨ai⟩ and ⟨oe⟩/⟨oi⟩, which should really be different (though
Appendix E of The Lord of the Rings notes that ⟨ae⟩ and ⟨oe⟩ don’t have
close English equivalents, and that they “may be pronounced as ai, oi”).
2021-07-18 13:27:26 +02:00
Lucas Werkmeister ee7e057821 Fix extra-long vowels in Elvish languages
A circumflex “specially prolonged” vowels; according to Appendix E of
The Lord of the Rings, only in Sindarin, but the Ambar Eldaron Quenya
Dictionary [1] also has some very few circumflex words (sû, lîs), so
let’s support the circumflex in Quenya as well. Marking extra-long
vowels with two colons seems to work well and is also done in several
other languages.

[1]: https://ambar-eldaron.com/telechargements/quenya-engl-A4.pdf
2021-07-18 13:27:26 +02:00
Lucas Werkmeister db971c8201 Fix long vowels in Elvish languages
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).
2021-07-18 13:27:26 +02:00
Lucas Werkmeister d201e17418 Fix stress of Elvish ⟨ch⟩, ⟨dh⟩, ⟨th⟩
In Elvish languages, ⟨ch⟩, ⟨dh⟩, and ⟨th⟩ count as single consonants for
the purposes of stress, since they represent single letters in the
original scripts. The easiest way to implement this is to replace them
with single letters at the beginning – ⟨ð⟩ for ⟨dh⟩ and ⟨þ⟩ for ⟨th⟩ are
natural, and ⟨x⟩ for ⟨ch⟩ also makes some sense, though it means we need
to replace real ⟨x⟩ first (it’s not mentioned in Appendix E of The Lord
of the Rings, but does occur in some Quenya words, notably Helcaraxë).
Real ⟨x⟩ is pronounced like /ks/, but of course we need to spell that as
⟨cs⟩, since ⟨k⟩ does not occur in Elvish languages.
2021-07-18 13:27:26 +02:00
Lucas Werkmeister 3fa62f0ee3 Add basic stress rules for Quenya and Sindarin
The Elvish languages have the same general stress rule as Latin [1]:
stress falls on the penultimate syllable if that is heavy (contains a
long vowel, a diphthong, or a vowel followed by two or more consonants),
otherwise on the antepenultimate syllable. For Latin, espeak-ng
implements this by declaring “penultimate syllable” as the general
stress rule in espeak-ng-data/, and then adding rules in dictsource/
that match light syllables and move the primary stress to the previous
syllable, i.e. the antepenultimate one. We use the same basic principle
for the Elvish languages here (but using the terms “heavy” and “light”
rather than “weak” and “strong” like in the Latin files).

Note that this doesn’t fully implement the stress rules yet: we have no
concept of diphthongs, long vowels aren’t really properly handled yet,
and we also still count ⟨ch⟩, ⟨dh⟩, ⟨th⟩ as two consonants rather than
one as it should be. This will be improved separately (I prefer doing
this in small incremental steps).

[1]: https://menegroth.github.io/stress-in-sindarin.html
2021-07-18 13:27:26 +02:00
Lucas Werkmeister 74985f570f Fix rule for Sindarin initial ⟨i⟩
Sindarin ⟨i⟩ is only pronounced like ⟨j⟩ before another vowel and *at
the beginning of a word*. “Galadriel” does not have a /j/ sound.
2021-07-18 13:27:26 +02:00
Lucas Werkmeister b892a8b8c3 Add basic Quenya rules
Copied from Sindarin with only a few changes so far: initial ⟨i⟩ is not
special, ⟨qu⟩ exists, and ⟨y⟩ is a consonant.
2021-07-18 13:27:26 +02:00
Lucas Werkmeister a1c79f4c72 Add basic Sindarin rules
Also, inherit the Elvish phonemes from Latin, because Esperanto doesn’t
have /y/. (Quenya doesn’t need that – ⟨y⟩ is a consonant there – so
maybe I’ll separate their phonemes at some point. For now, Latin works
well enough for both as far as I can tell.)
2021-07-18 13:27:26 +02:00
Lucas Werkmeister beeac74300 Initial setup for Elvish languages
This prepares the languages of Quenya and Sindarin, setting up their
infrastructure without declaring a lot of rules yet – just enough for
“Eä” (a Quenya word, but I can’t think of a similarly simple one for
Sindarin). Phonemes are inherited from Esperanto for now.
2021-07-18 13:27:26 +02:00
jaacoppi 4c7d8a013a Merge pull request #978
smj: cleaned commented lines

Also closes #927.
2021-07-12 18:37:34 +03:00
katrihiovain 45b7b8cc37 cleaned commented lines to help with debugging 2021-07-12 17:53:59 +03:00
Krzysztof Drewniak a8a804fc59 Add English pronounciation of "Krzysztof" to en_dict
This commit adds the usual English pronunciation of my name to the English dictionary.

We could, alternatively, add the native pronunciation, `kS'I2StOf` (or the closest approximation to it I could get out of the English synthesizer), but I'm not sure what the policy on that sort of thing is within the project.
2021-07-02 22:52:39 -05:00
agonzalezd fa476bb239 eu: Updated intervocalic j phoneme in Basque 2021-06-29 15:14:43 +03:00
agonzalezd 748ae2e69c eu: Updated rr and y for ES 2021-06-29 15:14:34 +03:00
agonzalezd 92c04bad3d eu: Added clarifying comment 2021-06-29 15:14:31 +03:00
agonzalezd 2fb981855b eu: Updated Basque phonetics and stress rule 2021-06-29 15:14:26 +03:00
SeanTolstoyevski 2fe8a1898f tr: Update tr_listx
Some words have been added to the dictionary for street language. But Espeak really mispronounced them.

I removed the mispronounced words.
And I wrote a better pronunciation rule for the following words:
* bağışlamak ba:@@Sla'mak
* bağışlayın ba:@@S'laj@n

These words should be lengthened by 1.5 in the first letter "i", in a subtle tone. (letter "ğ" is the reason for this. Normally there is no such rule.)
Previously, the letter "ı" (305) here was ignored.
Although the street language for Turkish looks like this, it is not. Since we have a dynamic language, it is not possible to implement all of them.

Therefore, I request you to accept these changes.
The tests were done on Windows. Pronunciations improved.
2021-06-12 13:06:47 +03:00
Juho Hiltunen 16f30f6522 fi: small changes 2021-06-06 16:30:41 +03:00
Juho Hiltunen 92b797a0e1 fi: changes to abbreviations 2021-06-06 16:30:10 +03:00
Juho Hiltunen 67086dc1da fi: add exceptions to doubling with -sti 2021-06-06 16:18:10 +03:00
Juho Hiltunen b513534995 fi: remove the english pronunciation of some loan words 2021-06-06 16:18:10 +03:00
ronaldaug 1df852a1ae add 'aWi' into vowels group 2021-05-28 14:43:42 +06:30
Juho Hiltunen 4825905835 cmn: handle latin characters as English text.
cmn now handles all latin characters as English.

The old functionality of assuming latin characters are pinyin can be
achieved with new language cmn-Latn-pinyin.
2021-05-16 19:23:34 +03:00
Valdis Vitolins 68518a6cc9 Merge pull request #940 2021-05-16 14:59:59 +03:00
Juho Hiltunen 4c7c68d5fe Merge pull request 936 2021-05-15 20:54:23 +03:00
Henry Krumb 8b29985256 de: add 'Ingenieurin', 'Ingenieurinnen' to German exception list & don't pronounce asterisk (gender star) in German text 2021-05-15 20:53:23 +03:00
Juho Hiltunen d91b7cf288 Rename zh (Mandarin) to cmn across the codebase.
See discussion in #933.
2021-05-11 20:14:54 +03:00
Juho Hiltunen 875174c3e9 Rename zhy (Cantonese) to yue across the codebase.
See discussion in #933.
2021-05-11 19:19:55 +03:00
Christianlm 6972465bf9 Updates italian source dictionaries 2021-05-10 11:23:28 +02:00
katrihiovain bffcd54356 cleaned duplicate rows from smj_list 2021-04-23 14:40:12 +03:00
katrihiovainandSebastien Le Maguer 93d3c67df6 smj: Support for new language Lule Saami
Co-authored-by: Sebastien Le Maguer <lemagues@tcd.ie>
2021-04-10 13:54:41 +03:00
Shadyar Khodayari 4967418a5c several exception words and an unknown charactor added. 2021-03-28 13:04:51 +04:30
Juho Hiltunen 1432684245 en: fix dengler and binghamton.
Pronounce dengler and binghamton the same way with and without a capital
letter.

Closes #895.
2021-03-23 18:01:32 +02:00
Juho Hiltunen f9b52b092a tr: temporarily disable a prefix and suffix rule '.
See issue #875. Words with two ' cause the first part of the word to be
lost.
2021-03-02 18:39:52 +02:00
Juho Hiltunen b9eb212217 Temporary workaround for #874
The phonSWITCH bug still exists and needs fixing.
2021-02-22 16:39:45 +02:00
Da Def 9fc1400c14 Updated with feedback from The Expanse's speech coach. 2021-02-20 12:56:21 +01:00
Ejaz Shah 9d1ad2bff6 ur: update list and rules 2021-02-17 16:39:38 +02:00
Chen, Chien-ting 9498e2a3e3 ga: add demostrate pronouns in Munster dialect 2021-02-17 16:29:57 +02:00
Valdis Vitolins 3e0254949b Fix issue #868: add initial support for Klingon 2021-01-05 20:17:51 +02:00
Valdis Vitolins 7fcd74e741 Merge pull request #858 2020-12-28 18:07:20 +02:00
Da Def cfb5a41748 Lang Belta (conlang from The Expanse) 2020-12-28 15:58:09 +02:00
Juho Hiltunen 597a8a4555 jbo: Multiple pronunciation fixes.
Thanks to xunsku @ irc.freenode.org
2020-12-26 20:06:45 +02:00
Valdis Vitolins 9e9c0a042b Fix issue #854: Some French diacritics are explicitly spelled out 2020-12-15 15:58:16 +02:00
Valdis Vitolins f0a12ee833 Fix issue #848: Māori improvements 2020-12-06 13:52:45 +02:00