]> Git — Sourcephile - julm/worksheets.git/blob - src/Language/English.hs
update
[julm/worksheets.git] / src / Language / English.hs
1 {-# LANGUAGE OverloadedLists #-}
2 {-# LANGUAGE OverloadedStrings #-}
3
4 module Language.English where
5
6 import Data.Map.Strict qualified as Map
7 import Language.Pronunciation as Pron
8 import Worksheets.Utils.Prelude
9
10 {-
11 -- data/langs/english/syllabification-by-analogy/Preprocessing/Out/output_c_2023-11-11-09-08-47.txt
12 pronunciation = Pron.pronunciation pronunciationDict
13
14 pronunciationDict = lexerDict pronunciationMap
15
16 -- , inf "ara" := single "æɹə" ["ara" & occurence, "b"]
17 -- , inf "arum" := single "ɑɹum" ["S", "arum" & occurence, "an"]
18 -- , inf "ea" := single "ə" ["t", "ea" & occurence, "cher"]
19 -- , inf "ve" := single "vɜ" ["ve" & occurence, "ry"]
20 -- , suf "ed" := single "ɪd" ["", "ter" & occurence]
21 -- , inf "oo" := single "ʊ" ["b", "oo" & occurence, "k"]
22 -- , pre "the" := single "ðiː" ["the t" & occurence, "able"] -- /ðiː
23 -- , pre ("the"<>borderInnerText<>"a") := single "ðiː" ["the a" & occurence, "pple"] -- also stress form
24 -- , inf "alad" := single "ælˈ.əd" ["s", "alad" & occurence]
25
26 -- https://www.phonemicchart.com/
27 pronunciationMap :: Map Text (Map PronContext LexemePron)
28 pronunciationMap =
29 & list
30 & foldMap (\(ks, v) -> [(k, v) | k <- ks])
31 & mapFromListCheckingDuplicates
32 where
33 single pron exs =
34 Map.singleton PronContextBeforeAny $ LexemePron{lexemePronunciation = pron, lexemeExample = exs}
35 multi l =
36 l
37 & list
38 & foldMap (\(ks, v) -> [(k, v) | k <- ks])
39 & mapFromListCheckingDuplicates
40 -}
41 {-
42 pronunciationRules :: Table
43 pronunciationRules =
44 [ "0" := Rule{rulePron = "zɪəɹəʊ", ruleExamples = [["0" & occurence]]}
45 , "1" := Rule{rulePron = "wʌn", ruleExamples = [["1" & occurence]]}
46 , "2" := Rule{rulePron = "tu", ruleExamples = [["2" & occurence]]}
47 , "3" := Rule{rulePron = "θɹiː", ruleExamples = [["3" & occurence]]}
48 , "4" := Rule{rulePron = "fɔː", ruleExamples = [["4" & occurence]]}
49 , "5" := Rule{rulePron = "faɪv", ruleExamples = [["5" & occurence]]}
50 , "6" := Rule{rulePron = "sɪks", ruleExamples = [["6" & occurence]]}
51 , "7" := Rule{rulePron = "sɛvən", ruleExamples = [["7" & occurence]]}
52 , "8" := Rule{rulePron = "eɪt", ruleExamples = [["8" & occurence]]}
53 , "9" := Rule{rulePron = "naɪn", ruleExamples = [["9" & occurence]]}
54 --, "B" := Rule{rulePron = "biː", ruleExamples = [["B" & occurence]]}
55 --, "M" := Rule{rulePron = "ɛm", ruleExamples = [["M" & occurence]]}
56 --, "X" := Rule{rulePron = "ɛks", ruleExamples = [["X" & occurence]]}
57 , word "a" := Rule{rulePron = "ə", ruleExamples = [["a" & occurence]]}
58 , "alf" := Rule{rulePron = "ɑlf", ruleExamples = [["c", "alf" & occurence]]}
59 , begining "ad" := Rule{rulePron = "əd", ruleExamples = [["ad" & occurence, "venture"]]}
60 , "ai" := Rule{rulePron = "eɪ", ruleExamples = [["w", "ai" & occurence, "t"]]}
61 , "air" := Rule{rulePron = "ɛː", ruleExamples = [["h", "air" & occurence]]}
62 , "a" := Rule{rulePron = "æ", ruleExamples = [["a" & occurence, "n"]]}
63 , "ay" := Rule{rulePron = "eɪ", ruleExamples = [["d", "ay" & occurence]]}
64 , "gon" := Rule{rulePron = "gən", ruleExamples = [["dra", "gon" & occurence]]}
65 , "anga" := Rule{rulePron = "æŋə", ruleExamples = [["m", "anga" & occurence]]}
66 , "kanga" := Rule{rulePron = "kæŋgə", ruleExamples = [["kanga" & occurence, "roo"]]}
67 {-
68 , "ack" := Rule{rulePron = "æk", ruleExamples = [["b", "ack" & occurence]]}
69 , "al" := Rule{rulePron = "æl", ruleExamples = [["p", "al" & occurence, "antir"]]}
70 , "am" := Rule{rulePron = "æm", ruleExamples = [["am" & occurence, "bulance"]]}
71 , "an" := Rule{rulePron = "æn", ruleExamples = [["an" & occurence]]}
72 , "ang" := Rule{rulePron = "æŋ", ruleExamples = [["k", "ang" & occurence, "aroo"]]}
73 , "apple" := Rule{rulePron = "æpl", ruleExamples = [["apple" & occurence]]}
74 , "at" := Rule{rulePron = "æt", ruleExamples = [["h", "at" & occurence]]}
75 , "ax" := Rule{rulePron = "æks", ruleExamples = [["ax" & occurence, "is"]]}
76 , "az" := Rule{rulePron = "æz", ruleExamples = [["az" & occurence, "ote"]]}
77 , "dragon" := Rule{rulePron = "dɹægən", ruleExamples = [["dragon" & occurence]]}
78 , "fax" := Rule{rulePron = "fæks", ruleExamples = [["fax" & occurence]]}
79 , "ga" := Rule{rulePron = "gæ", ruleExamples = [["ga" & occurence, "rage"]]}
80 , "lam" := Rule{rulePron = "læm", ruleExamples = [["lam" & occurence, "p"]]}
81 , "camel" := Rule{rulePron = "kæml", ruleExamples = [["camel" & occurence]]}
82 , "wagon" := Rule{rulePron = "wægən", ruleExamples = [["wagon" & occurence]]}
83 -}
84 , "ant" := Rule{rulePron = "ənt", ruleExamples = [["dist" & occurence, "ant"]]}
85 --, "pan" <> [LexemeConsonant] := Rule{rulePron = "pən", ruleExamples = [["" & occurence, "ant"]]}
86 , "wan" := Rule{rulePron = "wɒn", ruleExamples = [["wan" & occurence], ["s", "wan" & occurence]]}
87 , begining "anger" := Rule{rulePron = "aŋgə", ruleExamples = [["d", "anger" & occurence]]}
88 , begining "gam" := Rule{rulePron = "geɪm", ruleExamples = [["gam" & occurence, "ing"]]}
89 , begining "game" := Rule{rulePron = "geɪm", ruleExamples = [["game" & occurence]]}
90 , "hanger" := Rule{rulePron = "haŋgə", ruleExamples = [["hanger" & occurence]]}
91 , "anger" := Rule{rulePron = "eɪnd͡ʒə", ruleExamples = [["d", "anger" & occurence]]}
92 , ending "burger" := Rule{rulePron = "bɜːgə", ruleExamples = [["burger" & occurence]]}
93 , "ange" := Rule{rulePron = "eɪnd͡ʒ", ruleExamples = [["or", "ange" & occurence]]}
94 , "tiger" := Rule{rulePron = "taɪgə", ruleExamples = [["tiger" & occurence]]}
95 , "leph" := Rule{rulePron = "lɪf", ruleExamples = [["t", "ele" & occurence, "phone"], ["ele" & occurence, "phant"]]}
96 , "alarm" := Rule{rulePron = "əlɑːm", ruleExamples = [["alarm" & occurence]]}
97 , ending "da" := Rule{rulePron = "də", ruleExamples = [["agen", "da" & occurence]]}
98 , "ock" := Rule{rulePron = "ɒk", ruleExamples = [["cl", "ock" & occurence], ["c", "ock" & occurence]]}
99 , "ar" := Rule{rulePron = "ɑː", ruleExamples = [["c", "ar" & occurence], ["sh", "ar" & occurence,"k"]]}
100 , "ast" := Rule{rulePron = "ast", ruleExamples = [["m", "ast" & occurence, "er"]]}
101 , "au" := Rule{rulePron = "ɔː", ruleExamples = [["s", "au" & occurence, "ron"]]}
102 , "aw" := Rule{rulePron = "ɔː", ruleExamples = [["dr", "aw" & occurence]]}
103 , begining "and" := Rule{rulePron = "ænd", ruleExamples = [["and" & occurence]]}
104 , "b" := Rule{rulePron = "b", ruleExamples = [["b" & occurence, "oat"]]}
105 -- , "ba" := Rule{rulePron = "bæ", ruleExamples = [["ba" & occurence, "lance"]]}
106 , "ath" := Rule {rulePron = "ɑːð", ruleExamples = [["b", "ath" & occurence]]}
107 , "bed" := Rule{rulePron = "bɜd", ruleExamples = [["bed" & occurence]]}
108 , "body" := Rule{rulePron = "bɑdi", ruleExamples = [["body" & occurence]]}
109 , "bomb" := Rule{rulePron = "bɒm", ruleExamples = [["bomb" & occurence]]}
110 , "bombs" := Rule{rulePron = "bɒmz", ruleExamples = [["bombs" & occurence]]}
111 , "break" := Rule{rulePron = "bɹeɪk", ruleExamples = [["break" & occurence]]}
112 , "brown" := Rule{rulePron = "bɹaʊn", ruleExamples = [["brown" & occurence]]}
113 , "c" := Rule{rulePron = "k", ruleExamples = [["c" & occurence, "at"]]}
114 , "ch" := Rule{rulePron = "t͡ʃ", ruleExamples = [["ch" & occurence, "eese"]]} -- ʧ
115 , "chr" := Rule{rulePron = "kɹ", ruleExamples = [["chr" & occurence, "omosome"]]}
116 , "ck" := Rule{rulePron = "k", ruleExamples = [["lo", "ck" & occurence]]}
117 , "ce" := Rule{rulePron = "sə", ruleExamples = [["ce" & occurence, "ment"]]}
118 , "cell" := Rule{rulePron = "sɛl", ruleExamples = [["cell" & occurence]]}
119 , "cereal" := Rule{rulePron = "sɪəɹɪəl", ruleExamples = [["cereal" & occurence]]}
120 , "cen" := Rule{rulePron = "sɛn", ruleExamples = [["cen" & occurence, "t"]]}
121 , "ci" := Rule{rulePron = "sɪ", ruleExamples = [["ci" & occurence, "ty"]]}
122 , ending "co" := Rule{rulePron = "kəʊ", ruleExamples = [["mexi", "co" & occurence]]}
123 , "cir" := Rule{rulePron = "sɜː", ruleExamples = [["cir" & occurence, "cle"]]}
124 , "cy" := Rule{rulePron = "saɪ", ruleExamples = [["cy" & occurence, "borg"]]}
125 , "cile" := Rule{rulePron = "saɪl", ruleExamples = [["domi", "cile" & occurence]]}
126 , "cious" := Rule{rulePron = "ʃəs", ruleExamples = [["pre", "cious" & occurence]]}
127 , "crown" := Rule{rulePron = "kɹaʊn", ruleExamples = [["krown" & occurence]]}
128 , "cage" := Rule{rulePron = "keɪd͡ʒ", ruleExamples = [["cage" & occurence]]}
129 , "ctu" := Rule{rulePron = "kt͡ʃu", ruleExamples = [["san", "ctu" & occurence, "ary"]]}
130 , "d" := Rule{rulePron = "d", ruleExamples = [["d" & occurence, "og"]]}
131 , "dge" := Rule{rulePron = "d͡ʒ", ruleExamples = [["he","dge" & occurence, "hog"]]}
132 , "badger" := Rule{rulePron = "bæd͡ʒə", ruleExamples = [["badger" & occurence]]}
133 , "finger" := Rule{rulePron = "fɪŋgə", ruleExamples = [["finger" & occurence]]}
134 , "linger" := Rule{rulePron = "lɪŋgə", ruleExamples = [["linger" & occurence]]}
135 , "dinger" := Rule{rulePron = "dɪŋgə", ruleExamples = [["dinger" & occurence]]}
136 , "whinger" := Rule{rulePron = "ʍɪŋgə", ruleExamples = [["whinger" & occurence]]}
137 , ending "ger" := Rule{rulePron = "ʒə", ruleExamples = [["bad","ger" & occurence]]}
138 , "down" := Rule{rulePron = "daʊn", ruleExamples = [["down" & occurence]]}
139 , "dom" := Rule{rulePron = "dɒm", ruleExamples = [["dom" & occurence, "icile"]]}
140 , "drown" := Rule{rulePron = "dɹaʊn", ruleExamples = [["drown" & occurence]]}
141 , "e" := Rule{rulePron = "ɛ", ruleExamples = [["l", "e" & occurence, "ft"]]}
142 , "ea" := Rule{rulePron = "iː", ruleExamples = [["s", "ea" & occurence, "t"]]}
143 , "ead" := Rule{rulePron = "ɛd", ruleExamples = [["h", "ead" & occurence]]}
144 , "eady" := Rule{rulePron = "ɛdi", ruleExamples = [["r", "eady" & occurence]]}
145 , "eer" := Rule{rulePron = "ɪə", ruleExamples = [["b", "eer" & occurence]]}
146 , "bear" := Rule{rulePron = "bɛə", ruleExamples = [["bear" & occurence]]}
147 , "rear" := Rule{rulePron = "ɹɪə̯", ruleExamples = [["rear" & occurence]]}
148 , "tear" <> [LexemeMeaning "noun"] := Rule{rulePron = "tɛə", ruleExamples = [["tear" & occurence]]}
149 , "tear" <> [LexemeMeaning "verb"] := Rule{rulePron = "tɪə", ruleExamples = [["tear" & occurence]]}
150 , "earth" := Rule{rulePron = "ɜːθ", ruleExamples = [["earth" & occurence]]}
151 , "ecei" := Rule{rulePron = "ɪsi", ruleExamples = [["r", "ecei" & occurence, "ve"]]}
152 , "ee" := Rule{rulePron = "iː", ruleExamples = [["sh", "ee" & occurence, "p"]]}
153 , "eye" := Rule{rulePron = "aɪ", ruleExamples = [["eye" & occurence]]}
154 , "f" := Rule{rulePron = "f", ruleExamples = [["f" & occurence, "ree"]]}
155 , "fa" := Rule{rulePron = "fɑː", ruleExamples = [["fa" & occurence, "ther"]]}
156 , "fe" := Rule{rulePron = "f", ruleExamples = [["li", "fe" & occurence]]}
157 , "ff" := Rule{rulePron = "f", ruleExamples = [["pu", "ff" & occurence]]}
158 , "fox" := Rule{rulePron = "fɒks", ruleExamples = [["fox" & occurence]]}
159 , "fly" := Rule{rulePron = "flaɪ", ruleExamples = [["fly" & occurence]]}
160 , "flam" := Rule{rulePron = "fleɪ", ruleExamples = [["flam" & occurence, "e"]]}
161 , "ish" := Rule{rulePron = "ɪʃ", ruleExamples = [["d", "ish" & occurence]]}
162 , "isher" := Rule{rulePron = "ɪʃə", ruleExamples = [["f", "isher" & occurence]]}
163 , "flamingo" := Rule{rulePron = "fləmɪŋgoʊ", ruleExamples = [["flamingo" & occurence]]}
164 , "g" := Rule{rulePron = "g", ruleExamples = [["g" & occurence, "o"]]}
165 --, "g" <> [LexemeVowel] := Rule{rulePron = "g", ruleExamples = [["han", "g" & occurence, "er"]]}
166 , "ge" := Rule{rulePron = "d͡ʒ", ruleExamples = [["sled", "ge" & occurence]]}
167 , "gg" := Rule{rulePron = "g", ruleExamples = [["be", "gg" & occurence, "ing"]]}
168 , "gwai" := Rule{rulePron = "gwaɪ̯", ruleExamples = [["Gwai" & occurence, "hir"]]}
169 , "ghy" := Rule{rulePron = "i", ruleExamples = [["din", "ghy" & occurence]]}
170 , "h" := Rule{rulePron = "h", ruleExamples = [["h" & occurence, "ope"]]}
171 , "hippopo" := Rule{rulePron = "hɪpəpɒ", ruleExamples = [["hippopo" & occurence, "tamus"]]}
172 , "i" := Rule{rulePron = "ɪ", ruleExamples = [["sh", "i" & occurence, "p"]]}
173 , "ight" := Rule{rulePron = "aɪt", ruleExamples = [["f", "ight" & occurence]]}
174 , "ike" := Rule{rulePron = "aɪk", ruleExamples = [["str", "ike" & occurence]]}
175 , "id" := Rule{rulePron = "aɪd", ruleExamples = [["sp", "id" & occurence, "er"]]}
176 , "idiot" := Rule{rulePron = "ɪdiət", ruleExamples = [["idiot" & occurence]]}
177 , "ine" := Rule{rulePron = "aɪn", ruleExamples = [["p", "ine" & occurence]]}
178 , "ird" := Rule{rulePron = "ɜːd", ruleExamples = [["b", "ird" & occurence]]}
179 , "ire" := Rule{rulePron = "aɪə", ruleExamples = [["f", "ire" & occurence]]}
180 , "j" := Rule{rulePron = "d͡ʒ", ruleExamples = [["j" & occurence, "oke"]]}
181 , "k" := Rule{rulePron = "k", ruleExamples = [["k" & occurence, "oala"]]}
182 , "key" := Rule{rulePron = "kiː", ruleExamples = [["key" & occurence], ["mon", "key" & occurence]]}
183 , "ks" := Rule{rulePron = "ks", ruleExamples = [[]]}
184 , "l" := Rule{rulePron = "l", ruleExamples = [["l" & occurence, "ove"]]}
185 , "L" := Rule{rulePron = "l", ruleExamples = [["l" & occurence, "ove"]]}
186 , "la" := Rule{rulePron = "la", ruleExamples = [[]]}
187 , "lar" := Rule{rulePron = "laː", ruleExamples = [["lar"&occurence, "k"]]}
188 , "choco" <> [LexemeConsonant] := Rule{rulePron = "t͡ʃɒk", ruleExamples = [["choco" & occurence, "late"]]}
189 , word "late" := Rule{rulePron = "leɪt", ruleExamples = [["late" & occurence]]}
190 , ending "late" := Rule{rulePron = "let", ruleExamples = [["choco", "late" & occurence]]}
191 , ending "lates" := Rule{rulePron = "letiːz", ruleExamples = [["choco", "lates" & occurence]]}
192 , "llar" := Rule{rulePron = "lə", ruleExamples = [["do", "llar"&occurence]]}
193 , "llars" := Rule{rulePron = "ləz", ruleExamples = [["do", "llars"&occurence]]}
194 , "lady" := Rule{rulePron = "leɪdi", ruleExamples = [["lady" & occurence]]}
195 , "laun" := Rule{rulePron = "lɔːn", ruleExamples = [["laun" & occurence, "dry"]]}
196 , "lif" := Rule{rulePron = "laɪf", ruleExamples = [["lif" & occurence, "e"]]}
197 , "lik" := Rule{rulePron = "laɪk", ruleExamples = [["lik" & occurence, "e"]]}
198 , "lin" := Rule{rulePron = "lɪŋ", ruleExamples = [["lin" & occurence, "k"]]}
199 , ending "ling" := Rule{rulePron = "lɪŋ", ruleExamples = [["bow", "ling" & occurence]]}
200 --, ending "lican" := Rule{rulePron = "lɪkən", ruleExamples = [["pe", "lican" & occurence]]}
201 , ending "can" := Rule{rulePron = "kən", ruleExamples = [["peli", "can" & occurence]]}
202 , ending "cans" := Rule{rulePron = "kənz", ruleExamples = [["peli", "cans" & occurence]]}
203 , "linear" := Rule{rulePron = "lɪniə", ruleExamples = [["linear" & occurence]]}
204 , "list" := Rule{rulePron = "lɪs", ruleExamples = [["list" & occurence, "en"]]}
205 , "lit" := Rule{rulePron = "lɪt", ruleExamples = [["lit" & occurence, "eral"]]}
206 , "ll" := Rule{rulePron = "l", ruleExamples = [["sme", "ll" & occurence]]}
207 , "ller" := Rule{rulePron = "lə", ruleExamples = [["ki", "ller" & occurence]]}
208 , "lly" := Rule{rulePron = "li", ruleExamples = [["je", "lly" & occurence]]}
209 , "m" := Rule{rulePron = "m", ruleExamples = [["m" & occurence, "ouse"]]}
210 , "moria" := Rule{rulePron = "mɔɹia", ruleExamples = [["moria" & occurence]]}
211 , "mole" := Rule{rulePron = "məʊl", ruleExamples = [["mole" & occurence]]}
212 , "lion" := Rule{rulePron = "laɪən", ruleExamples = [["lion" & occurence]]}
213 , "n" := Rule{rulePron = "n", ruleExamples = [["n" & occurence, "ow"]]}
214 , "o" := Rule{rulePron = "o", ruleExamples = [["o" & occurence, "k"]]}
215 , "oa" := Rule{rulePron = "əʊ", ruleExamples = [["b", "oa" & occurence, "t"]]}
216 , "oad" := Rule{rulePron = "oʊd", ruleExamples = [["t", "oad" & occurence]]}
217 , "oi" := Rule{rulePron = "ɔɪ", ruleExamples = [["s", "oi" & occurence, "l"]]}
218 , "tortoise" := Rule{rulePron = "tɔːtəs", ruleExamples = [["tortoise" & occurence]]}
219 , "old" := Rule{rulePron = "əʊld", ruleExamples = [["h", "old" & occurence]]}
220 , "olds" := Rule{rulePron = "əʊldz", ruleExamples = [["h", "olds" & occurence]]}
221 , "ouse" := Rule{rulePron = "aʊs", ruleExamples = [["m", "ouse" & occurence]]}
222 , "ouses" := Rule{rulePron = "aʊsɪz", ruleExamples = [["m", "ouses" & occurence]]}
223 , "onkey" := Rule{rulePron = "ʌŋki", ruleExamples = [["m", "onkey" & occurence]]}
224 , "ron" := Rule{rulePron = "rən", ruleExamples = [["he", "ron" & occurence]]}
225 , "on" := Rule{rulePron = "ɒ", ruleExamples = [["on" & occurence]]}
226 , "one" := Rule{rulePron = "oʊn", ruleExamples = [["c", "one" & occurence]]}
227 , "oo" := Rule{rulePron = "uː", ruleExamples = [["sh", "oo" & occurence, "t"]]}
228 , "wood" := Rule{rulePron = "wʊd", ruleExamples = [["wood" & occurence]]}
229 , "wool" := Rule{rulePron = "wʊl", ruleExamples = [["wool" & occurence]]}
230 , "foot" := Rule{rulePron = "fʊt", ruleExamples = [["foot" & occurence]]}
231 , "oor" := Rule{rulePron = "ɔː", ruleExamples = [["d", "oor" & occurence]]}
232 , "wasp" := Rule{rulePron = "wɒsp", ruleExamples = [["wasp" & occurence]]}
233 , "or" := Rule{rulePron = "ɔː", ruleExamples = [["h", "or" & occurence, "se"]]}
234 , "ore" := Rule{rulePron = "ɔː", ruleExamples = [["ch", "ore" & occurence]]}
235 , "orn" := Rule{rulePron = "ɔɹn", ruleExamples = [["c", "orn" & occurence]]}
236 , "orse" := Rule{rulePron = "ɔːs", ruleExamples = [["h", "orse" & occurence]]}
237 , "ost" := Rule{rulePron = "əʊst", ruleExamples = [["h", "ost" & occurence]]}
238 , "ou" := Rule{rulePron = "aʊ", ruleExamples = [["m", "ou" & occurence, "se"]]}
239 , "our" := Rule{rulePron = "ɔː", ruleExamples = [["t", "our" & occurence, "ist"]]}
240 , "outh" := Rule{rulePron = "aʊθ", ruleExamples = [["m", "outh" & occurence]]}
241 , "ow" := Rule{rulePron = "əʊ", ruleExamples = [["sh", "ow" & occurence]]}
242 , "own" := Rule{rulePron = "əʊn", ruleExamples = [["own" & occurence]]}
243 , "p" := Rule{rulePron = "p", ruleExamples = [["p" & occurence, "ea"]]}
244 , "paper" := Rule{rulePron = "peːpə", ruleExamples = [["paper" & occurence]]}
245 , ending "pede" := Rule{rulePron = "piːd", ruleExamples = [["centi", "pede" & occurence]]}
246 , ending "pedes" := Rule{rulePron = "piːdz", ruleExamples = [["pedes" & occurence]]}
247 , "ph" := Rule{rulePron = "f", ruleExamples = [["dol", "ph" & occurence, "in"]]}
248 , "pollu" := Rule{rulePron = "pəlu", ruleExamples = [["tomb" & occurence]]}
249 , "pow" := Rule{rulePron = "paʊ̯", ruleExamples = [["pow" & occurence, "er"]]}
250 , "pp" := Rule{rulePron = "p", ruleExamples = [["a", "pp" & occurence, "le"]]}
251 , "q" := Rule{rulePron = "k", ruleExamples = [[]]}
252 , "qu" := Rule{rulePron = "kw", ruleExamples = [["qu" & occurence, "een"]]}
253 , "r" := Rule{rulePron = "ɹ", ruleExamples = [["r" & occurence, "un"]]}
254 , "rhi" := Rule{rulePron = "ɹaɪ", ruleExamples = [["rhi" & occurence, "noceros"]]}
255 , "rr" := Rule{rulePron = "ɹ", ruleExamples = [["squi", "rr" & occurence, "el"]]}
256 , "rad" := Rule{rulePron = "ɹeɪd", ruleExamples = [["rad" & occurence, "io"]]}
257 , "rrel" := Rule{rulePron = "ɹəl", ruleExamples = [["squi", "rrel" & occurence]]}
258 , "s" := Rule{rulePron = "s", ruleExamples = [["s" & occurence, "ee"]]}
259 , ending "ese" := Rule{rulePron = "iz", ruleExamples = [["chin", "ese" & occurence]]}
260 , ending "eese" := Rule{rulePron = "iz", ruleExamples = [["ch", "eese" & occurence]]}
261 , ending "eeses" := Rule{rulePron = "iːzɪz", ruleExamples = [["ch", "eeses" & occurence]]}
262 , [LexemeVowel] <> "s" <> [LexemeVowel] := Rule{rulePron = "z", ruleExamples = [["n", "asa" & occurence, "l"]]}
263 , [LexemeVowel] <> "se" := Rule{rulePron = "s", ruleExamples = [["tortoi", "se" & occurence]]}
264 , "sh" := Rule{rulePron = "ʃ", ruleExamples = [["sh" & occurence, "eep"]]}
265 , "ga" <> [LexemeConsonant] := Rule{rulePron = "geɪ", ruleExamples = [["ga" & occurence, "te"]]}
266 , "gecko" := Rule{rulePron = "ɡɛkəʊ", ruleExamples = [["gecko" & occurence]]}
267 , "coral" := Rule{rulePron = "kɒɹəl", ruleExamples = [["coral" & occurence]]}
268 , ending "al" := Rule{rulePron = "əl", ruleExamples = [["tot", "al" & occurence]]}
269 , "nake" := Rule{rulePron = "neɪk", ruleExamples = [["s", "nake" & occurence]]}
270 , "naked" := Rule{rulePron = "neɪkɪd", ruleExamples = [["naked" & occurence]]}
271 , "snaked" := Rule{rulePron = "neɪkt", ruleExamples = [["snaked" & occurence]]}
272 , "new" := Rule{rulePron = "njuː", ruleExamples = [["new" & occurence]]}
273 , ending "cko" := Rule{rulePron = "kəʊ", ruleExamples = [["wa", "cko" & occurence]]}
274 , "sion" := Rule{rulePron = "ʒən", ruleExamples = [["televi", "sion" & occurence]]}
275 , "sci" := Rule{rulePron = "saɪ", ruleExamples = [["sci" & occurence, "ence"]]}
276 , "sci" <> [LexemeConsonant] := Rule{rulePron = "sɪ", ruleExamples = [["sci" & occurence, "ssor"]]}
277 , "scin" := Rule{rulePron = "sɪn", ruleExamples = [["scin" & occurence, "tillate"]]}
278 , "specie" := Rule{rulePron = "spiːʃi", ruleExamples = [["specie" & occurence]]}
279 , "skit" := Rule{rulePron = "skɪt", ruleExamples = [["ba", "sket" & occurence]]}
280 , "bask" := Rule{rulePron = "bɑːsk", ruleExamples = [["bask" & occurence, "et"]]}
281 , "basket" := Rule{rulePron = "bɑːskɪt", ruleExamples = [["basket" & occurence]]}
282 , "species" := Rule{rulePron = "spiːʃiːz", ruleExamples = [["species" & occurence]]}
283 , "ss" := Rule{rulePron = "s", ruleExamples = [["a", "ss" & occurence, "ault"]]}
284 , "sh" := Rule{rulePron = "ʃ", ruleExamples = [["thru", "sh" & occurence]]}
285 , "sure" := Rule{rulePron = "ʃʊɹ", ruleExamples = [["mea", "sure" & occurence]]}
286 , "t" := Rule{rulePron = "t", ruleExamples = [["t" & occurence, "ree"]]}
287 , "tt" := Rule{rulePron = "t", ruleExamples = [["bu", "tt" & occurence, "on"]]}
288 , "ta" <> [LexemeConsonant] := Rule{rulePron = "teɪ", ruleExamples = [["ta" & occurence, "ble"]]}
289 , "tar" := Rule{rulePron = "tɑː", ruleExamples = [["tar" & occurence], ["s", "tar" & occurence]]}
290 , "tain" := Rule{rulePron = "ten", ruleExamples = [["moun", "tain" & occurence]]}
291 , "tal" := Rule{rulePron = "tɔː", ruleExamples = [["tal" & occurence, "k"]]}
292 , "tch" := Rule{rulePron = "t͡ʃ", ruleExamples = [["wi", "tch" & occurence]]} -- ʧ
293 , "terres" := Rule{rulePron = "tɪɹɛs", ruleExamples = [["terres" & occurence, "trial"]]}
294 , "ter" := Rule{rulePron = "tə", ruleExamples = [["win", "ter" & occurence], ["cat", "ter" & occurence, "pillar"]]}
295 , ending "ters" := Rule{rulePron = "təz", ruleExamples = [["win", "ters" & occurence]]}
296 , "tter" := Rule{rulePron = "tə", ruleExamples = [["bu", "tter" & occurence]]}
297 , ending "tters" := Rule{rulePron = "təz", ruleExamples = [["bu", "tterz" & occurence]]}
298 , "tering" := Rule{rulePron = "təɹɪŋ", ruleExamples = [["wa", "tering" & occurence]]}
299 , "ttering" := Rule{rulePron = "təɹɪŋ", ruleExamples = [["fla", "ttering" & occurence]]}
300 , "tech" := Rule{rulePron = "tɛk", ruleExamples = [["tech" & occurence, "nic"]]}
301 , "th" := Rule{rulePron = "θ", ruleExamples = [["th" & occurence, "ing"]]}
302 , "toge" := Rule{rulePron = "tʊgɛ", ruleExamples = [["toge" & occurence, "ther"]]}
303 , "tomb" := Rule{rulePron = "tuːm", ruleExamples = [["tomb" & occurence]]}
304 , "top" := Rule{rulePron = "tɒp", ruleExamples = [["top" & occurence]]}
305 , "tradi" := Rule{rulePron = "tɹədɪ", ruleExamples = [["trad" & occurence, "ition"]]}
306 , ending "ture" := Rule{rulePron = "tʃə", ruleExamples = [["vul", "ture" & occurence]]}
307 , "u" := Rule{rulePron = "ʌ", ruleExamples = [["u" & occurence, "p"]]}
308 , "ur" <> [LexemeVowel] := Rule{rulePron = "jʊɹ", ruleExamples = [["ur" & occurence, "ea"]]}
309 , "ur" := Rule{rulePron = "ɜː", ruleExamples = [["ur" & occurence, "gence"]]}
310 , "use" := Rule{rulePron = "juːz", ruleExamples = [["use" & occurence]]}
311 , "uses" := Rule{rulePron = "juːzɪz", ruleExamples = [["uses" & occurence]]}
312 , "uit" := Rule{rulePron = "uːt", ruleExamples = [["fr", "uit" & occurence]]}
313 , "uice" := Rule{rulePron = "uːs", ruleExamples = [["j", "uice" & occurence]]}
314 , "v" := Rule{rulePron = "v", ruleExamples = [["v" & occurence, "ideo"]]}
315 , "w" := Rule{rulePron = "w", ruleExamples = [["w" & occurence, "e"]]}
316 , "wh" := Rule{rulePron = "w", ruleExamples = [["wh" & occurence, "ale"]]}
317 , "wa" := Rule{rulePron = "wɔː", ruleExamples = [["wa" & occurence, "ter"]]}
318 , "wal" := Rule{rulePron = "wɔː", ruleExamples = [["wal" & occurence, "k"]]}
319 , "way" := Rule{rulePron = "weɪ", ruleExamples = [["way" & occurence]]}
320 , "white" := Rule{rulePron = "waɪt", ruleExamples = [["white" & occurence]]}
321 , "wor" := Rule{rulePron = "wɜː", ruleExamples = [["wor" & occurence, "ks"]]}
322 , "wolf" := Rule{rulePron = "wʊlf", ruleExamples = [["wolf" & occurence]]}
323 , "golf" := Rule{rulePron = "gɒlf", ruleExamples = [["golf" & occurence]]}
324 , "x" := Rule{rulePron = "", ruleExamples = [[]]}
325 , "y" := Rule{rulePron = "j", ruleExamples = [["y" & occurence, "ou"]]}
326 , "Y" := Rule{rulePron = "j", ruleExamples = [["y" & occurence, "ou"]]}
327 , "yre" := Rule{rulePron = "aɪə", ruleExamples = [["t", "yre" & occurence]]}
328 , "z" := Rule{rulePron = "z", ruleExamples = [["z" & occurence, "oo"]]}
329 , "zz" := Rule{rulePron = "z", ruleExamples = [["pu", "zz" & occurence, "le"]]}
330 , "zzy" := Rule{rulePron = "zi", ruleExamples = [["di", "zzy" & occurence]]}
331 , "ove" := Rule{rulePron = "əʊv", ruleExamples = [["d", "ove" & occurence]]}
332 , "oar" := Rule{rulePron = "ɔː", ruleExamples = [["b", "oar" & occurence, "d"]]}
333 , "zzard" := Rule{rulePron = "zəd", ruleExamples = [["bu", "zzard" & occurence]]}
334 , "zzards" := Rule{rulePron = "zədz", ruleExamples = [["bu", "zzardz" & occurence]]}
335 , "zard" := Rule{rulePron = "zəd", ruleExamples = [["li", "zard" & occurence]]}
336 , "zards" := Rule{rulePron = "zədz", ruleExamples = [["li", "zardz" & occurence]]}
337 , "ing" := Rule{rulePron = "ɪŋ", ruleExamples = [["th", "ing" & occurence], ["flam", "ing" & occurence, "o"]]}
338 , "ink" := Rule{rulePron = "ɪŋk", ruleExamples = [["ink" & occurence], ["dr", "ink" & occurence]]}
339 , "eng" := Rule{rulePron = "ɪŋ", ruleExamples = [["p", "eng" & occurence, "uin"]]}
340 , "uin" := Rule{rulePron = "wɪn", ruleExamples = [["peng", "uin" & occurence]]}
341 , "most" := Rule{rulePron = "məʊst", ruleExamples = [["most" & occurence]]}
342 , "post" := Rule{rulePron = "məʊst", ruleExamples = [["post" & occurence]]}
343 , "mosquito" := Rule{rulePron = "məskitoʊ", ruleExamples = [["mosquito" & occurence]]}
344 , ending "ane" := Rule{rulePron = "eɪn", ruleExamples = [["cr", "ane" & occurence]]}
345 , ending "anes" := Rule{rulePron = "eɪnz", ruleExamples = [["cr", "anez" & occurence]]}
346 , begining "air" := Rule{rulePron = "ɛə", ruleExamples = [["air" & occurence]]}
347 , begining "great" := Rule{rulePron = "gɹeɪt", ruleExamples = [["great" & occurence]]}
348 , begining "oft" := Rule{rulePron = "ɔːf", ruleExamples = [["oft" & occurence, "en"]]}
349 , begining "saur" := Rule{rulePron = "saʊɹ", ruleExamples = [["saur" & occurence, "on"]]}
350 , begining "there" := Rule{rulePron = "ðɛə", ruleExamples = [["there" & occurence]]}
351 , begining "threat" := Rule{rulePron = "θɹɛt", ruleExamples = [["threat" & occurence]]}
352 , begining "ukulele" := Rule{rulePron = "juːkəleɪli", ruleExamples = [["ukulele" & occurence]]}
353 , ending "ale" := Rule{rulePron = "eɪl", ruleExamples = [["p", "ale" & occurence]]}
354 , word "are" := Rule{rulePron = "ɑː", ruleExamples = [["are" & occurence]]}
355 , ending "are" := Rule{rulePron = "ɛː", ruleExamples = [["h", "are" & occurence]]}
356 , ending "ares" := Rule{rulePron = "əːz", ruleExamples = [["sc", "ares" & occurence]]}
357 , ending "ary" := Rule{rulePron = "əɹi", ruleExamples = [["can" & occurence, "ary"]]}
358 , ending "ble" := Rule{rulePron = "bl̩", ruleExamples = [["a", "ble" & occurence]]}
359 , ending "bove" := Rule{rulePron = "bʌv", ruleExamples = [["a", "bove" & occurence]]}
360 , ending "by" := Rule{rulePron = "bɪ", ruleExamples = [["ba", "by" & occurence]]}
361 , ending "der" := Rule{rulePron = "də", ruleExamples = [["un", "der" & occurence]]}
362 , ending "dle" := Rule{rulePron = "dəl", ruleExamples = [["nee", "dle" & occurence]]}
363 , ending "dles" := Rule{rulePron = "dəls", ruleExamples = [["nee", "dles" & occurence]]}
364 , ending "dy" := Rule{rulePron = "di", ruleExamples = [["han", "dy" & occurence]]}
365 , ending "er" := Rule{rulePron = "ɜː", ruleExamples = [["h", "er" & occurence]]}
366 , ending "en" := Rule{rulePron = "ən", ruleExamples = [["kitch", "en" & occurence]]}
367 , ending "ens" := Rule{rulePron = "ənz", ruleExamples = [["kitch", "enz" & occurence]]}
368 , ending "ere" := Rule{rulePron = "ɛː", ruleExamples = [["ere" & occurence]]}
369 , ending "ern" := Rule{rulePron = "n", ruleExamples = [["cav", "ern" & occurence]]}
370 , ending "erns" := Rule{rulePron = "ənz", ruleExamples = [["cav", "erns" & occurence]]}
371 , ending "es" := Rule{rulePron = "ɪz", ruleExamples = [["kiss", "es" & occurence]]}
372 , ending "ey" := Rule{rulePron = "eɪ", ruleExamples = [["gr", "ey" & occurence]]}
373 , ending "ery" := Rule{rulePron = "ɹɪ", ruleExamples = [["pott", "ery" & occurence]]}
374 , ending "eries" := Rule{rulePron = "ɹɪz", ruleExamples = [["groc", "eries" & occurence]]}
375 , ending "ceros" := Rule{rulePron = "səɹəs", ruleExamples = [["rhino", "ceros" & occurence]]}
376 , ending "far" := Rule{rulePron = "fɑː", ruleExamples = [["far" & occurence]]}
377 , ending "geon" := Rule{rulePron = "d͡ʒən", ruleExamples = [["pi", "geon" & occurence]]}
378 , ending "geons" := Rule{rulePron = "d͡ʒəns", ruleExamples = [["pi", "geons" & occurence]]}
379 , ending "ging" := Rule{rulePron = "d͡ʒɪŋ", ruleExamples = [["chan", "ging" & occurence]]}
380 , ending "gle" := Rule{rulePron = "gəl", ruleExamples = [["ea", "gle" & occurence]]}
381 , ending "eagle" := Rule{rulePron = "iːɡɫ̩", ruleExamples = [["eagle" & occurence]]}
382 , ending "ieve" := Rule{rulePron = "iːv", ruleExamples = [["s", "ieve" & occurence]]}
383 , ending "ieves" := Rule{rulePron = "iːvz", ruleExamples = [["s", "ieves" & occurence]]}
384 , ending "ie" := Rule{rulePron = "i", ruleExamples = [["talk", "ie" & occurence]]}
385 , ending "ies" := Rule{rulePron = "iːz", ruleExamples = [["ba", "bies" & occurence]]}
386 , ending "is" := Rule{rulePron = "ɪz", ruleExamples = [["is" & occurence]]}
387 , ending "li" := Rule{rulePron = "li", ruleExamples = [["gim", "li" & occurence]]}
388 , ending "list" := Rule{rulePron = "lɪst", ruleExamples = [["list" & occurence]]}
389 , ending "ls" := Rule{rulePron = "lz", ruleExamples = [["fai", "lz" & occurence]]}
390 , ending "ns" := Rule{rulePron = "nz", ruleExamples = [["rai", "ns" & occurence]]}
391 , ending "mus" := Rule{rulePron = "məs", ruleExamples = [["hippopota", "mus" & occurence]]}
392 , ending "tamus" := Rule{rulePron = "təməs", ruleExamples = [["hippopo", "tamus" & occurence]]}
393 , ending "og" := Rule{rulePron = "ɒg", ruleExamples = [["d", "og" & occurence]]}
394 , ending "ound" := Rule{rulePron = "aʊnd", ruleExamples = [["ar", "ound" & occurence]]}
395 , ending "pe" := Rule{rulePron = "p", ruleExamples = [["ta", "pe" & occurence]]}
396 , ending "pes" := Rule{rulePron = "ps", ruleExamples = [["ta", "pes" & occurence]]}
397 , ending "ply" := Rule{rulePron = "plaɪ", ruleExamples = [["re", "ply" & occurence]]}
398 , ending "raffe" := Rule{rulePron = "ɹɑːf", ruleExamples = [["gi", "raffe" & occurence]]}
399 , ending "rry" := Rule{rulePron = "ɹi", ruleExamples = [["sca", "rry" & occurence]]}
400 , ending "ppy" := Rule{rulePron = "pi", ruleExamples = [["pu", "ppy" & occurence]]}
401 , ending "ry" := Rule{rulePron = "ɹi", ruleExamples = [["inju", "ry" & occurence]]}
402 , ending "ttle" := Rule{rulePron = "təl", ruleExamples = [["bo", "ttle" & occurence]]}
403 , ending "tle" := Rule{rulePron = "əl", ruleExamples = [["bee", "tle" & occurence]]}
404 , ending "urtle" := Rule{rulePron = "ɜːtl̩", ruleExamples = [["tu", "rtle" & occurence]]}
405 , ending "urtles" := Rule{rulePron = "ɜːtl̩z", ruleExamples = [["tu", "rtles" & occurence]]}
406 , ending "stle" := Rule{rulePron = "səl", ruleExamples = [["pe", "stle" & occurence]]}
407 , ending "stles" := Rule{rulePron = "səls", ruleExamples = [["pe", "stles" & occurence]]}
408 , ending "te" := Rule{rulePron = "t", ruleExamples = [["crea", "te" & occurence]]}
409 , ending "ted" := Rule{rulePron = "tɪd", ruleExamples = [["enchan", "ted" & occurence]]}
410 , ending "ter" := Rule{rulePron = "tə", ruleExamples = [["af", "ter" & occurence]]}
411 , ending "ther" := Rule{rulePron = "ðə", ruleExamples = [["o", "ther" & occurence]]}
412 , ending "thered" := Rule{rulePron = "ðəd", ruleExamples = [["ga", "thered" & occurence]]}
413 , ending "tion" := Rule{rulePron = "ʃən", ruleExamples = [["sta", "tion" & occurence]]}
414 , ending "tions" := Rule{rulePron = "ʃənz", ruleExamples = [["sta", "tions" & occurence]]}
415 , ending "ty" := Rule{rulePron = "ti", ruleExamples = [["mis", "ty" & occurence]]}
416 , ending "vel" := Rule{rulePron = "vəl", ruleExamples = [["sho", "vel" & occurence]]}
417 , ending "vels" := Rule{rulePron = "vəls", ruleExamples = [["sho", "vels" & occurence]]}
418 , ending "ves" := Rule{rulePron = "vz", ruleExamples = [["bra", "vs" & occurence]]}
419 , ending "z" := Rule{rulePron = "z", ruleExamples = [["s" & occurence, "ee"]]}
420 , word "a" := Rule{rulePron = "eː", ruleExamples = [["a" & occurence]]}
421 , word "by" := Rule{rulePron = "baɪ", ruleExamples = [["by" & occurence]]}
422 , word "bye" := Rule{rulePron = "baɪ", ruleExamples = [["bye" & occurence]]}
423 , word "die" := Rule{rulePron = "daɪ", ruleExamples = [["die" & occurence]]}
424 , word "eon" := Rule{rulePron = "eɪɑn", ruleExamples = [["eon" & occurence]]}
425 , word "from" := Rule{rulePron = "fɹɒm", ruleExamples = [["from" & occurence]]}
426 , word "lie" := Rule{rulePron = "laɪ", ruleExamples = [["lie" & occurence]]}
427 , word "lullaby" := Rule{rulePron = "lʌləbaɪ", ruleExamples = [["lullaby" & occurence]]}
428 , word "my" := Rule{rulePron = "maɪ", ruleExamples = [["my" & occurence]]}
429 , word "nearby" := Rule{rulePron = "nɪəbaɪ", ruleExamples = [["nearby" & occurence]]}
430 , word "of" := Rule{rulePron = "ɒv", ruleExamples = [["of" & occurence]]}
431 , word "on" := Rule{rulePron = "ɒn", ruleExamples = [["on" & occurence]]}
432 , word "pie" := Rule{rulePron = "paɪ", ruleExamples = [["pie" & occurence]]}
433 , word "q" := Rule{rulePron = "kjuː", ruleExamples = [["q" & occurence]]}
434 , word "standby" := Rule{rulePron = "stændbaɪ", ruleExamples = [["standby" & occurence]]}
435 , word "thereby" := Rule{rulePron = "ðɛəbaɪ", ruleExamples = [["thereby" & occurence]]}
436 , word "this" := Rule{rulePron = "ðɪs", ruleExamples = [["this" & occurence]]}
437 , word "tie" := Rule{rulePron = "taɪ", ruleExamples = [["tie" & occurence]]}
438 , word "to" := Rule{rulePron = "tuː", ruleExamples = [["to" & occurence]]}
439 , word "we" := Rule{rulePron = "wiː", ruleExamples = [["we" & occurence]]}
440 , word "whereby" := Rule{rulePron = "wɛəbaɪ", ruleExamples = [["whereby" & occurence]]}
441 , word "lady" := Rule{rulePron = "leɪdi", ruleExamples = [["lady" & occurence]]}
442 , word "the" := Rule{rulePron = "ðə", ruleExamples = [["the" & occurence]]}
443 , word "the" <> [LexemeVowel] := Rule{rulePron = "ði", ruleExamples = [["the" & occurence]]}
444 ]
445 -}
446
447 {-
448 , pre "isildur" := single "isildur" ["isildur" & occurence]
449 , inf "radagast" := single "tɹədɪ" ["trad" & occurence, "ition"]
450 , inf "dawn" := single "dɔːn" ["dawn" & occurence]
451 , inf "ar" :=
452 multi
453 [ [PronContextBeforeAnyVowel] :=
454 LexemePron
455 { lexemePronunciation = "ɑɹ"
456 , lexemeExample = ["ar" & occurence, "ab"]
457 }
458 , [PronContextBeforeAny] :=
459 LexemePron
460 { lexemePronunciation = "ɑː"
461 , lexemeExample = ["f", "ar" & occurence, "t"]
462 }
463 ]
464 -}