diff --git a/docs/languages/gmw/en.md b/docs/languages/gmw/en.md index c278ea21..69b2b918 100644 --- a/docs/languages/gmw/en.md +++ b/docs/languages/gmw/en.md @@ -15,60 +15,66 @@ Sets\[1\]. These were created by Wells in 1982 by comparing the Received Pronunciation British (RP) and General American (GenAm) accents in use at that time. +The `en` transcriptions listed below are the phonemes used by eSpeak NG to +transcribe the different lexical sets. + ## Short Vowels -| Lexical Set | RP | GenAm | -|-------------|-------|-------| -| KIT | ɪ | ɪ | -| DRESS | e | ɛ | -| TRAP | æ | æ | -| LOT | ɒ | ɑ | -| STRUT | ʌ | ʌ | -| FOOT | ʊ | ʊ | +| Lexical Set | en | RP | GenAm | +|-------------|-------|-------|-------| +| KIT | `I` | ɪ | ɪ | +| DRESS | `E` | e | ɛ | +| TRAP | `a` | æ | æ | +| LOT | `0` | ɒ | ɑ | +| STRUT | `V` | ʌ | ʌ | +| FOOT | `U` | ʊ | ʊ | ## Long Vowels -| Lexical Set | RP | GenAm | -|-------------|-------|-------| -| FLEECE | iː | i | -| PALM | ɑː | ɑ | -| THOUGHT | ɔː | ɔ | -| GOOSE | uː | u | +| Lexical Set | en | RP | GenAm | +|-------------|-------|-------|-------| +| FLEECE | `i:` | iː | i | +| PALM | `A:` | ɑː | ɑ | +| THOUGHT | `O:` | ɔː | ɔ | +| GOOSE | `u:` | uː | u | ## Rhotic Vowels These are vowels that are followed by an `r` that is not part of the next syllable when considering the root form of the word containing that vowel. -| Lexical Set | RP | GenAm | -|-------------|-------|-------| -| NURSE | ɜː | ɝ | -| START | ɑː | ɑɹ | -| NORTH | ɔː | ɔɹ | -| FORCE | ɔː | oɹ | -| CURE | ʊə̯ | ʊɹ | -| NEAR | ɪə̯ | ɪɹ | -| SQUARE | eə̯ | ɛɹ | +| Lexical Set | en | RP | GenAm | +|-------------|-------|-------|-------| +| NURSE | `3:` | ɜː | ɝ | +| START | `A@` | ɑː | ɑɹ | +| NORTH | `O@` | ɔː | ɔɹ | +| FORCE | `o@` | ɔː | oɹ | +| CURE | `U@` | ʊə̯ | ʊɹ | +| NEAR | `i@3` | ɪə̯ | ɪɹ | +| SQUARE | `e@` | eə̯ | ɛɹ | + +__NOTE:__ `/i@3/` is used for the NEAR lexical set to differentiate it from +`/i@/` used in words like `million`. ## Reduced Vowels These are unstressed vowels that differ from the vowels in the main lexical sets. -| Lexical Set | RP | GenAm | -|-------------|-------|-------| -| HAPPY | ɪ | i | -| COMMA | ə | ə | -| LETTER | ə | ɚ | +| Lexical Set | en | RP | GenAm | +|-------------|-------|-------|-------| +| HAPPY | `i` | ɪ | i | +| COMMA | `@` | ə | ə | +| LETTER | `3` | ə | ɚ | ## Diphthongs -| Lexical Set | RP | GenAm | -|-------------|-------|-------| -| FACE | eɪ̯ | eɪ̯ | -| PRICE | aɪ̯ | aɪ̯ | -| CHOICE | ɔɪ̯ | ɔɪ̯ | -| GOAT | əʊ̯ | oʊ̯ | -| MOUTH | aʊ̯ | aʊ̯ | +| Lexical Set | en | RP | GenAm | +|-------------|-------|-------|-------| +| FACE | `eI` | eɪ̯ | eɪ̯ | +| PRICE | `aI` | aɪ̯ | aɪ̯ | +| CHOICE | `OI` | ɔɪ̯ | ɔɪ̯ | +| GOAT | `oU` | əʊ̯ | oʊ̯ | +| MOUTH | `aU` | aʊ̯ | aʊ̯ | ## Split Vowels @@ -76,10 +82,15 @@ These are lexical sets defined by John Wells that are merged with other lexical sets in both RP and GenAm, so have split from one of those lexical sets and merged with the other. -| Lexical Set | RP | GenAm | -|-------------|-------|-------| -| BATH | ɑː | æ | -| CLOTH | ɒ | ɔ | +| Lexical Set | en | RP | GenAm | +|-------------|-------|-------|-------| +| BATH | `aa` | ɑː | æ | +| CLOTH | `0` | ɒ | ɔ | + +__NOTE:__ eSpeak NG does not have a distinct transcription for the CLOTH lexical +set. As such, it can only represent American English accents with the COT-CAUGHT +merger where COT is the American PALM-LOT merger and CAUGHT is the American +THOUGHT-CLOTH merger. ## References diff --git a/phsource/ph_english b/phsource/ph_english index 80f9b21b..76386758 100644 --- a/phsource/ph_english +++ b/phsource/ph_english @@ -97,7 +97,7 @@ endphoneme // VOWELS //******************************************************************* -phoneme @ // Schwa +phoneme @ vwl starttype #@ endtype #@ unstressed length 140 @@ -109,7 +109,7 @@ phoneme @ // Schwa endphoneme -phoneme 3 // Schwa, used for rhotic schwa in American, e.g. bett**er** +phoneme 3 CALL @ ipa ə endphoneme @@ -178,7 +178,7 @@ phoneme a# // **a**bout. This may be \[@\] or may be a more open schwa. endphoneme -phoneme aa // 'b**a**th' etc. This is \[a\] in some accents, \[A:\] in others. +phoneme aa vwl starttype #a endtype #a ipa a length 200 @@ -192,7 +192,7 @@ phoneme aa // 'b**a**th' etc. This is \[a\] in some accents, \[A:\] in other endphoneme -phoneme E // dr**e**ss +phoneme E vwl starttype #e endtype #e length 140 IF nextPhW(n) THEN @@ -223,7 +223,7 @@ endphoneme -phoneme I // k**i**t +phoneme I vwl starttype #i endtype #i length 130 IfNextVowelAppend(;) @@ -263,7 +263,7 @@ phoneme I# // used for [I] which may be [@] in some accents endphoneme -phoneme i // happ**y**. optional variant of [I] for end of words +phoneme i vwl starttype #i endtype #i unstressed ipa i @@ -278,7 +278,7 @@ phoneme i // happ**y**. optional variant of [I] for end of words endphoneme -phoneme 0 // l**o**t +phoneme 0 vwl starttype #o endtype #o length 140 ChangeIfDiminished(@) @@ -304,7 +304,7 @@ phoneme 02 // becomes V in en-us endphoneme -phoneme V // str**u**t +phoneme V vwl starttype #a endtype #@ length 140 @@ -313,7 +313,7 @@ phoneme V // str**u**t endphoneme -phoneme U // f**oo**t +phoneme U vwl starttype #o endtype #o length 150 @@ -327,7 +327,7 @@ endphoneme -phoneme A: // p**al**m +phoneme A: vwl starttype #a endtype #a length 230 IfNextVowelAppend(r-) @@ -335,7 +335,7 @@ phoneme A: // p**al**m endphoneme -phoneme A@ // st**ar**t. Used for [A:] when followed by 'r'. +phoneme A@ vwl starttype #a endtype #a ipa ɑː length 230 @@ -352,7 +352,7 @@ endphoneme -phoneme 3: // n**ur**se +phoneme 3: vwl starttype #@ endtype #@ length 210 IfNextVowelAppend(r-) @@ -361,7 +361,7 @@ phoneme 3: // n**ur**se endphoneme -phoneme i: // fl**ee**ce +phoneme i: vwl starttype #i endtype #i length 175 IfNextVowelAppend(;) @@ -372,7 +372,7 @@ phoneme i: // fl**ee**ce endphoneme -phoneme O: // th**ou**ght +phoneme O: vwl starttype #o endtype #o length 230 ChangeIfDiminished(@) @@ -388,7 +388,7 @@ phoneme O endphoneme -phoneme O@ // n**or**th +phoneme O@ vwl starttype #o endtype #o ipa ɔː length 240 @@ -397,7 +397,7 @@ phoneme O@ // n**or**th endphoneme -phoneme o@ // f**or**ce +phoneme o@ vwl starttype #o endtype #o ipa ɔː length 250 @@ -411,7 +411,7 @@ phoneme o@ // f**or**ce endphoneme -phoneme u: // g**oo**se +phoneme u: vwl starttype #u endtype #u length 210 IF nextPh(l/2) THEN @@ -424,14 +424,14 @@ phoneme u: // g**oo**se endphoneme -phoneme aU // m**ou**th +phoneme aU vwl starttype #a endtype #u length 230 FMT(vdiph/au) endphoneme -phoneme oU // g**oa**t +phoneme oU vwl starttype #@ endtype #u ipa əʊ length 220 @@ -453,7 +453,7 @@ phoneme oU# endphoneme -phoneme aI // pr**i**ce +phoneme aI vwl starttype #a endtype #i length 240 IF nextPh(#a) THEN @@ -463,21 +463,21 @@ phoneme aI // pr**i**ce endphoneme -phoneme eI // f**a**ce +phoneme eI vwl starttype #e endtype #i length 210 FMT(vdiph/eei) endphoneme -phoneme OI // ch**oi**ce +phoneme OI vwl starttype #o endtype #i length 230 FMT(vdiph/ooi) endphoneme -phoneme e@ // squ**are** +phoneme e@ vwl starttype #e endtype #@ length 230 IfNextVowelAppend(r-) @@ -485,7 +485,7 @@ phoneme e@ // squ**are** endphoneme -phoneme i@ // mill**io**n +phoneme i@ vwl starttype #i endtype #@ length 250 IfNextVowelAppend(r-) @@ -493,7 +493,7 @@ phoneme i@ // mill**io**n endphoneme -phoneme i@3 // n**ear** +phoneme i@3 vwl starttype #i endtype #@ length 250 @@ -506,7 +506,7 @@ phoneme i@3 // n**ear** endphoneme -phoneme U@ // c**ure** +phoneme U@ vwl starttype #u endtype #@ length 200 IfNextVowelAppend(r-)