{-# LANGUAGE OverloadedLists #-} module Language.EnglishSpec where import Data.ByteString.Builder qualified as ByteString.Builder import Data.GenValidity.Map () import Data.GenValidity.Sequence () import Data.GenValidity.Set () import Data.GenValidity.Text () import Data.List qualified as List import Data.Map.Strict qualified as Map import Data.Set qualified as Set import Data.Text qualified as Text import Data.Text.Encoding qualified as Text import Data.Text.Lazy.Encoding qualified as Text.Lazy import Data.Text.Short qualified as ShortText import Data.Validity.Map () import Data.Validity.Set () import Data.Validity.Text () import Language import Language.English hiding (pronunciationRules) import Language.English qualified as English import Language.Pronunciation (ExampleLiteral (..), Lexeme (..), Rule (..), RuleLexemes, after, before, begining, ending, meaning, occurence, rule, silent, word) import Language.Pronunciation qualified as Pron import Paths_worksheets qualified as Self import System.Directory qualified as IO import System.FilePath (joinPath, pathSeparator, (<.>), ()) import System.FilePath.Posix qualified as File import System.IO qualified as IO import Test.Syd import Text.Blaze.Html5.Attributes qualified as HA import Utils.Pronunciation qualified as Pron import Utils.Tests import Wiktionary qualified import Worksheets.Utils.HTML (Html, className, classes, cm, styles, (!)) import Worksheets.Utils.HTML qualified as HTML import Worksheets.Utils.IPA qualified as IPA import Worksheets.Utils.Paper qualified as Paper import Worksheets.Utils.Prelude import Worksheets.Utils.SQL qualified as SQL import Prelude (error, even, mod) spec :: HasCallStack => Spec spec = do -- Pron.lexerRender $ English.pronunciationDict describe "pronunciation" do describe "parser" do Pron.pronunciationParserTest pronunciationRules sentences {- mangleSupraSegmentalFeatures :: [IPA.Syllable []] -> [[IPA.Segment]] mangleSupraSegmentalFeatures = \case [] -> [] IPA.Syllable syl : ts -> syl : mangleSupraSegmentalFeatures ts IPA.WithSuprasegmentalFeature IPA.Linking syl : ts -> case mangleSupraSegmentalFeatures ts of [] -> [dropSupraSegmentalFeatures syl] x : xs -> (dropSupraSegmentalFeatures syl <> x) : xs IPA.WithSuprasegmentalFeature _feat syl : xs -> mangleSupraSegmentalFeatures (syl : xs) -} -- cardsHtml "syllabes" $ English.syllablesTable & English.syllablesTableToHTML sentences :: Map Pron.InputLexemes Pron.Pronunciation sentences = [ pronunciationRules & Pron.examples ] & list & Map.unionsWith (curry errorShow) -- -- , [LexemeVowel] <> ending "sy" := Rule{rulePron = [[LexemeVowel] <> ending "sy" := "zi"], ruleExamples = []} pronunciationRules :: Pron.Table pronunciationRules = [ "chrysanthemum" := Rule{rulePron = ["chry" := "kɹɪ", "san" := "ˈsæn", "the" := "θə", "mum" := "məm"], ruleExamples = ["chrysanthemum" := "kɹɪ.ˈsæn.θə.məm"]} , "Andúril" := Rule{rulePron = ["An" := "æn", "dú" := "dy", "ril" := "ɹil"], ruleExamples = ["Andúril" := "æn.dy.ɹil"]} , "Angmar" := Rule{rulePron = ["Ang" := "ˈæng", "mar" := "maɹ"], ruleExamples = ["Angmar" := "ˈæng.maɹ"]} , "Aragorn" := Rule{rulePron = ["A" := "ˈa", "ra" := "ra", "gorn" := "ɡɔrn"], ruleExamples = ["Aragorn" := "ˈa.ra.ɡɔrn"]} , "Arwen" := Rule{rulePron = ["Ar" := "ɑɹ", "wen" := "wɛn"], ruleExamples = ["Arwen" := "ɑɹ.wɛn"]} , "Barad-dûr" := Rule{rulePron = ["Ba" := "ba", "rad" := "ɹad", "-" := [], "dûr" := "dyɹ"], ruleExamples = ["Barad-dûr" := "ba.ɹad.dyɹ"]} , "Boromir" := Rule{rulePron = ["Bo" := "bo", "ro" := "ɹəʊ", "mir" := "miɹ"], ruleExamples = ["Boromir" := "bo.ɹəʊ.miɹ"]} , "Elendil" := Rule{rulePron = ["E" := "ɛ", "len" := "ˈlen", "dil" := "dil"], ruleExamples = ["Elendil" := "ɛ.ˈlen.dil"]} , "Escherichia" := Rule{rulePron = ["E" := "ˌɛ", "sche" := "ʃə", "ri" := "ˈɹɪ", "chia" := "kiə"], ruleExamples = ["Escherichia" := "ˌɛ.ʃə.ˈɹɪ.kiə"]} , "Frodo" := Rule{rulePron = ["Fro" := "ˈfɹɒd", "do" := "dəʊ"], ruleExamples = ["Frodo" := "ˈfɹɒd.dəʊ"]} , "Galadriel" := Rule{rulePron = ["Ga" := "ɡa", "la" := "ˈla", "dri" := "dri", "el" := "ɛl"], ruleExamples = ["Galadriel" := "ɡa.ˈla.dri.ɛl"]} , "Gandalf" := Rule{rulePron = ["gand" := "ˈgænd", "alf" := "ɑlf"], ruleExamples = ["Gandalf" := "ˈgænd.ɑlf"]} , "Gimli" := Rule{rulePron = ["Gim" := "ˈgɪm", "li" := "liː"], ruleExamples = ["Gimli" := "ˈgɪm.liː"]} , "Gollum" := Rule{rulePron = ["Go" := "ˈgɑ", "llum" := "ləm"], ruleExamples = ["Gollum" := "ˈgɑ.ləm"]} , "Gondor" := Rule{rulePron = ["gon" := "ɡɒn", "dor" := "dɔɹ"], ruleExamples = ["Gondor" := "ɡɒn.dɔɹ"]} , "Gwaihir" := Rule{rulePron = ["gwai" := "gwaɪ", "hir" := "hɪɹ"], ruleExamples = ["Gwaihir" := "gwaɪ.hɪɹ"]} , "Isildur" := Rule{rulePron = ["I" := "i", "sil" := "ˈsil", "dur" := "duɹ"], ruleExamples = ["Isildur" := "i.ˈsil.duɹ"]} , "Khazad-dûm" := Rule{rulePron = ["Kha" := "kə", "zad" := "ˈzɑd", "-" := [], "dûm" := "dum"], ruleExamples = ["Khazad-dûm" := "kə.ˈzɑd.dum"]} , "Legolas" := Rule{rulePron = ["Le" := "ˈlɛ", "go" := "ɡɔ", "las" := "las"], ruleExamples = ["Legolas" := "ˈlɛ.ɡɔ.las"]} , "Lindon" := Rule{rulePron = ["Lin" := "ˈlɪn", "don" := "dɒn"], ruleExamples = ["Lindon" := "ˈlɪn.dɒn"]} , "Mordor" := Rule{rulePron = ["Mor" := "ˈmɔɹ", "dor" := "dɔɹ"], ruleExamples = ["Mordor" := "ˈmɔɹ.dɔɹ"]} , "Moria" := Rule{rulePron = ["Mo" := "mɔ", "ria" := "ʁja"], ruleExamples = ["Moria" := "mɔ.ʁja"]} , "Narsil" := Rule{rulePron = ["Nar" := "naɹ", "sil" := "sil"], ruleExamples = ["Narsil" := "naɹ.sil"]} , "Pippin" := Rule{rulePron = ["pi" := "ˈpɪ", "ppin" := "pɪn"], ruleExamples = ["Pippin" := "ˈpɪ.pɪn"]} , "Sam" := Rule{rulePron = ["Sam" := "ˈsæm"], ruleExamples = ["Sam" := "ˈsæm"]} , "Saruman" := Rule{rulePron = ["sa" := "ˈsɑ", "ru" := "ru", "man" := "mɑn"], ruleExamples = ["Saruman" := "ˈsɑ.ru.mɑn"]} , "Sauron" := Rule{rulePron = ["Sau" := "ˈsaʊ", "ron" := "ɹɒn"], ruleExamples = ["Sauron" := "ˈsaʊ.ɹɒn"]} , "Shelob" := Rule{rulePron = ["she" := "ʃiː", "lob" := "lɒb"], ruleExamples = ["Shelob" := "ʃiː.lɒb"]} , "Smaug" := Rule{rulePron = ["Smaug" := "smaʊɡ"], ruleExamples = ["Smaug" := "smaʊɡ"]} , "Thorin" := Rule{rulePron = ["Tho" := "θɔː", "rin" := "ɹɪn"], ruleExamples = ["Thorin" := "θɔː.ɹɪn"]} , "Thranduil" := Rule{rulePron = ["Thran" := "θɹæn", "duil" := "dyil"], ruleExamples = ["Thranduil" := "θɹæn.dyil"]} , "Uruk-hai" := Rule{rulePron = ["U" := "u", "ruk" := "ɹuk", "-" := [], "hai" := "aj"], ruleExamples = ["Uruk-hai" := "u.ɹuk.aj"]} , "Valinor" := Rule{rulePron = ["Va" := "va", "li" := "lɪ", "nor" := "nɔɹ"], ruleExamples = ["Valinor" := "va.lɪ.nɔɹ"]} , "above" := Rule{rulePron = ["a" := "ə", "bove" := "ˈbʌv"], ruleExamples = ["above" := "ə.ˈbʌv"]} , "adventure" := Rule{rulePron = ["ad" := "əd", "ven" := "ˈvɛn", "ture" := "t͡ʃə"], ruleExamples = ["adventure" := "əd.ˈvɛn.t͡ʃə"]} , "against" := Rule{rulePron = ["a" := "ə", "gainst" := "ˈɡɛnst"], ruleExamples = ["against" := "ə.ˈɡɛnst"]} , "alligator" := Rule{rulePron = ["all" := "ˈæl", "i" := "ɪ", "ga" := "geɪ", "tor" := "tə"], ruleExamples = ["alligator" := "ˈæl.ɪ.geɪ.tə"]} , "an" := Rule{rulePron = ["an" := "ˈæn"], ruleExamples = ["an" := "ˈæn"]} , "anchor" := Rule{rulePron = ["an" := "ˈæŋ", "kor" := "kə"], ruleExamples = ["anchor" := "ˈæŋ.kə"]} , "ant" := Rule{rulePron = ["ant" := "ænt"], ruleExamples = ["ant" := "ænt"]} , "ants" := Rule{rulePron = ["ants" := "ænts"], ruleExamples = ["ants" := "ænts"]} , "are" := Rule{rulePron = ["are" := "ɑː"], ruleExamples = ["are" := "ɑː"]} , "around" := Rule{rulePron = ["a" := "ə", "round" := "ˈɹaʊnd"], ruleExamples = ["around" := "ə.ˈɹaʊnd"]} , "assault" := Rule{rulePron = ["a" := "ə", "ssault" := "ˈsɒlt"], ruleExamples = ["assault" := "ə.ˈsɒlt"]} , "assaults" := Rule{rulePron = ["a" := "ə", "ssaults" := "ˈsɒlts"], ruleExamples = ["assaults" := "ə.ˈsɒlts"]} , "at" := Rule{rulePron = ["at" := "æt"], ruleExamples = ["at" := "æt"]} , "axe" := Rule{rulePron = ["axe" := "æks"], ruleExamples = ["axe" := "æks"]} , "back" := Rule{rulePron = ["back" := "bæk"], ruleExamples = ["back" := "bæk"]} , "baggins" := Rule{rulePron = ["ba" := "ˈbæ", "ggins" := "gɪnz"], ruleExamples = ["baggins" := "ˈbæ.gɪnz"]} , "balrog" := Rule{rulePron = ["bal" := "ˈbal", "rog" := "ɹɑg"], ruleExamples = ["balrog" := "ˈbal.ɹɑg"]} , "bat" := Rule{rulePron = ["bat" := "bæt"], ruleExamples = ["bat" := "bæt"]} , "be" := Rule{rulePron = ["be" := "biː"], ruleExamples = ["be" := "biː"]} , "bee" := Rule{rulePron = ["bee" := "ˈbiː"], ruleExamples = ["beeing" := "ˈbiː.ɪŋ"]} , "before" := Rule{rulePron = ["be" := "bɪ", "fore" := "ˈfɔː"], ruleExamples = ["before" := "bɪ.ˈfɔː"]} , "big" := Rule{rulePron = ["big" := "bɪg"], ruleExamples = ["big" := "bɪg"]} , "bilbo" := Rule{rulePron = ["bil" := "ˈbɪl", "bo" := "bəʊ"], ruleExamples = ["bilbo" := "ˈbɪl.bəʊ"]} , "bird" := Rule{rulePron = ["bird" := "bəːd"], ruleExamples = ["blackbird" := "blak.bəːd"]} , "black" := Rule{rulePron = ["black" := "blak"], ruleExamples = ["blackbird" := "blak.bəːd"]} , "blade" := Rule{rulePron = ["blade" := "bleɪd"], ruleExamples = ["blade" := "bleɪd"]} , "bladed" := Rule{rulePron = ["bla" := "ˈbleɪ", "ded" := "dɪd"], ruleExamples = ["bladed" := "ˈbleɪ.dɪd"]} , "blocks" := Rule{rulePron = ["blocks" := "blɒks"], ruleExamples = ["blocks" := "blɒks"]} , "board" := Rule{rulePron = ["board" := "bɔːd"], ruleExamples = ["board" := "bɔːd"]} , "boat" := Rule{rulePron = ["boat" := "bəʊt"], ruleExamples = ["boat" := "bəʊt"]} , "body" := Rule{rulePron = ["bod" := "ˈbɒd", "y" := "i"], ruleExamples = ["body" := "ˈbɒd.i"]} , "both" := Rule{rulePron = ["both" := "bəʊθ"], ruleExamples = ["both" := "bəʊθ"]} , "breath" := Rule{rulePron = ["breath" := "ˈbɹiːð"], ruleExamples = ["breath" := "ˈbɹiːð"]} , "bridge" := Rule{rulePron = ["bridge" := "bɹɪd͡ʒ"], ruleExamples = ["bridge" := "bɹɪd͡ʒ"]} , "bright" := Rule{rulePron = ["bright" := "bɹaɪt"], ruleExamples = ["bright" := "bɹaɪt"]} , "buoy" := Rule{rulePron = ["buoy" := "ˈbɔɪ"], ruleExamples = ["buoy" := "ˈbɔɪ"]} , "busy" := Rule{rulePron = ["bu" := "ˈbɪ", "sy" := "zi"], ruleExamples = ["busy" := "ˈbɪ.zi"]} , "buzzard" := Rule{rulePron = ["buzz" := "ˈbʌz", "ard" := "əɹd"], ruleExamples = ["buzzard" := "ˈbʌz.əɹd"]} , "by" := Rule{rulePron = ["by" := "baɪ"], ruleExamples = ["by" := "baɪ"]} , "calla" := Rule{rulePron = ["ca" := "kæ", "lla" := "lə"], ruleExamples = ["calla" := "kæ.lə"]} , "can" := Rule{rulePron = ["can" := "ˈkæn"], ruleExamples = ["can" := "ˈkæn"]} , "canal" := Rule{rulePron = ["ca" := "kə", "nal" := "ˈnæl"], ruleExamples = ["canal" := "kə.ˈnæl"]} , "canoe" := Rule{rulePron = ["ca" := "kə", "noe" := "ˈnu"], ruleExamples = ["canoeing" := "kə.ˈnu.ɪŋ"]} , "cap" := Rule{rulePron = ["cap" := "kæp"], ruleExamples = ["cap" := "kæp"]} , "car" := Rule{rulePron = ["car" := "kɑː"], ruleExamples = ["car" := "kɑː"]} , "carnation" := Rule{rulePron = ["car" := "kɑː", "na" := "ˈneɪ", "tion" := "ʃən"], ruleExamples = ["carnation" := "kɑː.ˈneɪ.ʃən"]} , "cast" := Rule{rulePron = ["cast" := "kɑːst"], ruleExamples = ["cast" := "kɑːst"]} , "castle" := Rule{rulePron = ["castle" := "kɑːsl̩"], ruleExamples = ["castle" := "kɑːsl̩"]} , "casts" := Rule{rulePron = ["casts" := "kɑːsts"], ruleExamples = ["casts" := "kɑːsts"]} , "cat" := Rule{rulePron = ["cat" := "kæt"], ruleExamples = ["cat" := "kæt"]} , "close" := Rule{rulePron = ["close" := "kləʊz"], ruleExamples = ["close" := "kləʊz"]} , "coli" := Rule{rulePron = ["co" := "ˈkoʊ", "li" := "laɪ"], ruleExamples = ["Escherichia coli" := "ˌɛ.ʃə.ˈɹɪ.kiə.ˈkoʊ.laɪ"]} , "command" := Rule{rulePron = ["co" := "kə", "mmand" := "ˈmɑːnd"], ruleExamples = ["command" := "kə.ˈmɑːnd"]} , "control" := Rule{rulePron = ["con" := "kən", "trol" := "ˈtɹəʊl"], ruleExamples = ["control" := "kən.ˈtɹəʊl"]} , "crane" := Rule{rulePron = ["crane" := "kɹeɪn"], ruleExamples = ["crane" := "kɹeɪn"]} , "crow" := Rule{rulePron = ["crow" := "kɹəʊ"], ruleExamples = ["crow" := "kɹəʊ"]} , "crown" := Rule{rulePron = ["crown" := "kɹaʊn"], ruleExamples = ["crown" := "kɹaʊn"]} , "cub" := Rule{rulePron = ["cub" := "kʌb"], ruleExamples = ["cub" := "kʌb"]} , "cut" := Rule{rulePron = ["cut" := "kʌt"], ruleExamples = ["cut" := "kʌt"]} , "daffodil" := Rule{rulePron = ["da" := "ˈdæ", "ffo" := "fə", "dil" := "ˌdɪl"], ruleExamples = ["daffodil" := "ˈdæ.fə.ˌdɪl"]} , "dagger" := Rule{rulePron = ["da" := "ˈdæ", "gger" := "gə"], ruleExamples = ["dagger" := "ˈdæ.gə"]} , "daisy" := Rule{rulePron = ["dai" := "ˈdeɪ", "sy" := "zi"], ruleExamples = ["daisy" := "ˈdeɪ.zi"]} , "dandelion" := Rule{rulePron = ["dan" := "ˈdæn", "de" := "dɪ", "li" := "ˌlaɪ", "on" := "ən"], ruleExamples = ["dandelion" := "ˈdæn.dɪ.ˌlaɪ.ən"]} , "dark" := Rule{rulePron = ["dark" := "dɑːk"], ruleExamples = ["dark" := "dɑːk"]} , "dead" := Rule{rulePron = ["dead" := "dɛd"], ruleExamples = ["dead" := "dɛd"]} , "death" := Rule{rulePron = ["death" := "dɛθ"], ruleExamples = ["death" := "dɛθ"]} , "deceiver" := Rule{rulePron = ["de" := "dɪ", "cei" := "ˈsiː", "ver" := "və"], ruleExamples = ["deceiver" := "dɪ.ˈsiː.və"]} , "dinghy" := Rule{rulePron = ["dingh" := "ˈdɪŋ", "y" := "i"], ruleExamples = ["dinghy" := "ˈdɪŋ.i"]} , "diving" := Rule{rulePron = ["di" := "ˈdaɪ", "ving" := "vɪŋ"], ruleExamples = ["diving" := "ˈdaɪ.vɪŋ"]} , "doom" := Rule{rulePron = ["doom" := "duːm"], ruleExamples = ["doom" := "duːm"]} , "door" := Rule{rulePron = ["door" := "dɔː"], ruleExamples = ["door" := "dɔː"]} , "doors" := Rule{rulePron = ["doors" := "dɔːz"], ruleExamples = ["doors" := "dɔːz"]} , "double" := Rule{rulePron = ["dou" := "ˈdʌ", "ble" := "bl"], ruleExamples = ["double" := "ˈdʌ.bl"]} , "dove" := Rule{rulePron = ["dove" := "dʌv"], ruleExamples = ["dove" := "dʌv"]} , "dragon" := Rule{rulePron = ["dra" := "ˈdɹæ", "gon" := "ɡən"], ruleExamples = ["dragon" := "ˈdɹæ.ɡən"]} , "drive" := Rule{rulePron = ["drive" := "dɹaɪv"], ruleExamples = ["drive" := "dɹaɪv"]} , "drives" := Rule{rulePron = ["drives" := "dɹaɪvs"], ruleExamples = ["drives" := "dɹaɪvs"]} , "dwarf" := Rule{rulePron = ["dwarf" := "dwɔɹf"], ruleExamples = ["dwarf" := "dwɔɹf"]} , "dwarves" := Rule{rulePron = ["dwarves" := "dwɔːvz"], ruleExamples = ["dwarves" := "dwɔːvz"]} , "eagle" := Rule{rulePron = ["ea" := "ˈiː", "gle" := "gɫ̩"], ruleExamples = ["eagle" := "ˈiː.gɫ̩"]} , "earth" := Rule{rulePron = ["earth" := "ɜːθ"], ruleExamples = ["earth" := "ɜːθ"]} , "eight" := Rule{rulePron = ["eight" := "eɪt"], ruleExamples = ["eight" := "eɪt"]} , "elf" := Rule{rulePron = ["elf" := "ɛlf"], ruleExamples = ["elf" := "ɛlf"]} , "elven" := Rule{rulePron = ["el" := "ˈɛl", "ven" := "vn"], ruleExamples = ["elven" := "ˈɛl.vn"]} , "elves" := Rule{rulePron = ["elves" := "elvz"], ruleExamples = ["elves" := "elvz"]} , "en" := Rule{rulePron = ["en" := "ɛn"], ruleExamples = ["golden" := "gəʊld.ɛn"]} , "exhausted" := Rule{rulePron = ["e" := "ɪ", "x" := ["g", "ˈz"], "haus" := "ɔːs", "ted" := "tɪd"], ruleExamples = ["exhausted" := "ɪg.ˈzɔːs.tɪd"]} , "eye" := Rule{rulePron = ["eye" := "aɪ"], ruleExamples = ["eye" := "aɪ"]} , "face" := Rule{rulePron = ["face" := "feɪs"], ruleExamples = ["face" := "feɪs"]} , "faces" := Rule{rulePron = ["fa" := "ˈfeɪ", "ses" := "ɪz"], ruleExamples = ["faces" := "ˈfeɪ.sɪz"]} , "family" := Rule{rulePron = ["fa" := "ˈfæ", "mi" := "mɪ", "ly" := "li"], ruleExamples = ["family" := "ˈfæ.mɪ.li"]} , "fatally" := Rule{rulePron = ["fa" := "ˈfeɪ", "ta" := "tə", "lly" := "li"], ruleExamples = ["fatally" := "ˈfeɪ.tə.li"]} , "fax" := Rule{rulePron = ["fax" := "fæks"], ruleExamples = ["fax" := "fæks"]} , "fellow" := Rule{rulePron = ["fe" := "ˈfɛ", "llow" := "ləʊ"], ruleExamples = ["fellow" := "ˈfɛ.ləʊ"]} , "fight" := Rule{rulePron = ["fight" := "faɪt"], ruleExamples = ["fight" := "faɪt"]} , "fights" := Rule{rulePron = ["fights" := "faɪts"], ruleExamples = ["fights" := "faɪts"]} , "filled" := Rule{rulePron = ["filled" := "fɪld"], ruleExamples = ["filled" := "fɪld"]} , "finger" := Rule{rulePron = ["fin" := "ˈfɪŋ", "ger" := "gə"], ruleExamples = ["finger" := "ˈfɪŋ.gə"]} , "fire" := Rule{rulePron = ["fi" := "ˈfaɪ", "re" := "ə"], ruleExamples = ["fire" := "ˈfaɪ.ə"]} , "flail" := Rule{rulePron = ["flail" := "fleɪl"], ruleExamples = ["flail" := "fleɪl"]} , "flaming" := Rule{rulePron = ["fla" := "ˈfleɪ", "ming" := "mɪŋ"], ruleExamples = ["flaming" := "ˈfleɪ.mɪŋ"]} , "flies" := Rule{rulePron = ["flies" := "flaɪz"], ruleExamples = ["flies" := "flaɪz"]} , "friends" := Rule{rulePron = ["friends" := "fɹɛndz"], ruleExamples = ["friends" := "fɹɛndz"]} , "frighten" := Rule{rulePron = ["frigh" := "ˈfɹaɪ", "ten" := "tən"], ruleExamples = ["frighten" := "ˈfɹaɪ.tən"]} , "frightened" := Rule{rulePron = ["frigh" := "ˈfɹaɪ", "tened" := "tn̩d"], ruleExamples = ["frightened" := "ˈfɹaɪ.tn̩d"]} , "frightens" := Rule{rulePron = ["frigh" := "ˈfɹaɪ", "tens" := "təns"], ruleExamples = ["frightens" := "ˈfɹaɪ.təns"]} , "gangway" := Rule{rulePron = ["gang" := "ˈgæŋ", "way" := "weɪ"], ruleExamples = ["gangway" := "ˈgæŋ.weɪ"]} , "giant" := Rule{rulePron = ["gi" := "ˈd͡ʒaɪ", "ant" := "ənt"], ruleExamples = ["giant" := "ˈd͡ʒaɪ.ənt"]} , "gifts" := Rule{rulePron = ["gifts" := "gɪfts"], ruleExamples = ["gifts" := "gɪfts"]} , "giraffe" := Rule{rulePron = ["gi" := "dʒɪ", "raffe" := "ˈɹɑːf"], ruleExamples = ["giraffe" := "dʒɪ.ˈɹɑːf"]} , "goggles" := Rule{rulePron = ["go" := "ˈgɑ", "ggles" := "gəlz"], ruleExamples = ["goggles" := "ˈgɑ.gəlz"]} , "gold" := Rule{rulePron = ["gold" := "gəʊld"], ruleExamples = ["gold" := "gəʊld"]} , "grab" := Rule{rulePron = ["grab" := "gɹæb"], ruleExamples = ["grab" := "gɹæb"]} , "grabs" := Rule{rulePron = ["grabs" := "gɹæbs"], ruleExamples = ["grabs" := "gɹæbs"]} , "great" := Rule{rulePron = ["great" := "ˈgɹeɪt"], ruleExamples = ["great" := "ˈgɹeɪt"]} , "grey" := Rule{rulePron = ["grey" := "gɹeɪ"], ruleExamples = ["grey" := "gɹeɪ"]} , "hand" := Rule{rulePron = ["hand" := "hænd"], ruleExamples = ["hand" := "hænd"]} , "hands" := Rule{rulePron = ["hands" := "hænds"], ruleExamples = ["hands" := "hænds"]} , "has" := Rule{rulePron = ["has" := "hæz"], ruleExamples = ["has" := "hæz"]} , "head" := Rule{rulePron = ["head" := "ˈhɛd"], ruleExamples = ["head" := "ˈhɛd"]} , "her" := Rule{rulePron = ["her" := "ˈhɜː"], ruleExamples = ["her" := "ˈhɜː"]} -- stressed , "hippopotamus" := Rule{rulePron = ["hippo" := "ˌhɪpə", "pot" := "ˈpɒt", "a" := "ə", "mus" := "məs"], ruleExamples = ["hippopotamus" := "ˌhɪpə.ˈpɒt.ə.məs"]} , "his" := Rule{rulePron = ["his" := "ˈhɪz"], ruleExamples = ["his" := "ˈhɪz"]} , "hobbit" := Rule{rulePron = ["ho" := "ˈhɒ", "bbit" := "bɪt"], ruleExamples = ["hobbit" := "ˈhɒ.bɪt"]} , "hobbits" := Rule{rulePron = ["ho" := "ˈhɒ", "bbits" := "bɪts"], ruleExamples = ["hobbits" := "ˈhɒ.bɪts"]} , "hold" := Rule{rulePron = ["hold" := "həʊld"], ruleExamples = ["hold" := "həʊld"]} , "holds" := Rule{rulePron = ["holds" := "həʊldz"], ruleExamples = ["holds" := "həʊldz"]} , "honey" := Rule{rulePron = ["ho" := "ˈhʌ", "ney" := "ni"], ruleExamples = ["honey" := "ˈhʌ.ni"]} , "hood" := Rule{rulePron = ["hood" := "hʊd"], ruleExamples = ["hood" := "hʊd"]} , "horse" := Rule{rulePron = ["horse" := "hɔːs"], ruleExamples = ["horse" := "hɔːs"]} , "hyacinth" := Rule{rulePron = ["hy" := "ˈhaɪ", "a" := "ə", "cinth" := "sɪnθ"], ruleExamples = ["hyacinth" := "ˈhaɪ.ə.sɪnθ"]} , "index" := Rule{rulePron = ["in" := "ˈɪn", "dex" := "dɛks"], ruleExamples = ["index" := "ˈɪn.dɛks"]} , "inflatable" := Rule{rulePron = ["in" := "ɪn", "fla" := "ˈfleɪ", "ta" := "tə", "ble" := "bəl"], ruleExamples = ["inflatable" := "ɪn.ˈfleɪ.tə.bəl"]} , "iris" := Rule{rulePron = ["i" := "ˈaɪ", "ris" := "ɹɪs"], ruleExamples = ["iris" := "ˈaɪ.ɹɪs"]} , "is" := Rule{rulePron = ["is" := "ɪz"], ruleExamples = ["is" := "ɪz"]} , "jacket" := Rule{rulePron = ["jack" := "ˈd͡ʒæk", "et" := "ɪt"], ruleExamples = ["jacket" := "ˈd͡ʒæk.ɪt"]} , "jasmine" := Rule{rulePron = ["jas" := "d͡ʒæz", "mine" := "ˈmɪn"], ruleExamples = ["jasmine" := "d͡ʒæz.ˈmɪn"]} , "jet" := Rule{rulePron = ["jet" := "d͡ʒɛt"], ruleExamples = ["jet" := "d͡ʒɛt"]} , "jetty" := Rule{rulePron = ["jett" := "d͡ʒɛt", "y" := "i"], ruleExamples = ["jetty" := "d͡ʒɛt.i"]} , "journey" := Rule{rulePron = ["jour" := "ˈd͡ʒɜː", "ney" := "ni"], ruleExamples = ["journey" := "ˈd͡ʒɜː.ni"]} , "kangaroo" := Rule{rulePron = ["kan" := "ˌkæŋ", "ga" := "gə", "roo" := "ˈɹu"], ruleExamples = ["kangaroo" := "ˌkæŋ.gə.ˈɹu"]} , "kid" := Rule{rulePron = ["kid" := "kɪd"], ruleExamples = ["kid" := "kɪd"]} , "king" := Rule{rulePron = ["king" := "kɪŋ"], ruleExamples = ["king" := "kɪŋ"]} , "kneel" := Rule{rulePron = ["kneel" := "niːl"], ruleExamples = ["kneel" := "niːl"]} , "kneels" := Rule{rulePron = ["kneels" := "niːlz"], ruleExamples = ["kneels" := "niːlz"]} , "knight" := Rule{rulePron = ["knight" := "naɪt"], ruleExamples = ["knight" := "naɪt"]} , "life" := Rule{rulePron = ["life" := "laɪf"], ruleExamples = ["life" := "laɪf"]} , "light" := Rule{rulePron = ["light" := "laɪt"], ruleExamples = ["light" := "laɪt"]} , "lilly" := Rule{rulePron = ["lill" := "ˈlɪl", "y" := "i"], ruleExamples = ["lilly" := "ˈlɪl.i"]} , "lily" := Rule{rulePron = ["lil" := "ˈlɪ", "ly" := "li"], ruleExamples = ["lily" := "ˈlɪ.li"]} , "liner" := Rule{rulePron = ["li" := "ˈlaɪ", "ner" := "nə"], ruleExamples = ["liner" := "ˈlaɪ.nə"]} , "lion" := Rule{rulePron = ["lion" := "ˈlaɪən"], ruleExamples = ["lion" := "ˈlaɪən"]} , "lioness" := Rule{rulePron = ["li" := "ˈlaɪ", "o" := "ə", "ness" := "nɪs"], ruleExamples = ["lioness" := "ˈlaɪ.ə.nɪs"]} , "little" := Rule{rulePron = ["li" := "ˈlɪ", "ttle" := "tl"], ruleExamples = ["little" := "ˈlɪ.tl"]} , "long" := Rule{rulePron = ["long" := "lɔːŋ"], ruleExamples = ["long" := "lɔːŋ"]} , "look" := Rule{rulePron = ["look" := "ˈlʊk"], ruleExamples = ["look" := "ˈlʊk"]} , "looks" := Rule{rulePron = ["looks" := "ˈlʊks"], ruleExamples = ["looks" := "ˈlʊks"]} , "lord" := Rule{rulePron = ["lord" := "lɔːd"], ruleExamples = ["lord" := "lɔːd"]} , "mace" := Rule{rulePron = ["mace" := "meɪs"], ruleExamples = ["mace" := "meɪs"]} , "magic" := Rule{rulePron = ["ma" := "ˈma", "gic" := "d͡ʒɪk"], ruleExamples = ["magic" := "ˈma.d͡ʒɪk"]} , "master" := Rule{rulePron = ["mas" := "ˈmɑːs", "ter" := "tə"], ruleExamples = ["master" := "ˈmɑːs.tə"]} , "men" := Rule{rulePron = ["men" := "mɛn"], ruleExamples = ["men" := "mɛn"]} , "middle" := Rule{rulePron = ["mi" := "ˈmɪ", "ddle" := "dəl"], ruleExamples = ["middle" := "ˈmɪ.dəl"]} , "mines" := Rule{rulePron = ["mines" := "maɪnz"], ruleExamples = ["mines" := "maɪnz"]} , "misty" := Rule{rulePron = ["mis" := "ˈmɪs", "ty" := "ti"], ruleExamples = ["misty" := "ˈmɪs.ti"]} , "monkey" := Rule{rulePron = ["monk" := "ˈmʌŋk", "ey" := "i"], ruleExamples = ["monkey" := "ˈmʌŋk.i"]} , "mount" := Rule{rulePron = ["mount" := "maʊnt"], ruleExamples = ["mount" := "maʊnt"]} , "mountain" := Rule{rulePron = ["moun" := "maʊn", "tain" := "tɪn"], ruleExamples = ["mountain" := "maʊn.tɪn"]} , "nazgûl" := Rule{rulePron = ["naz" := "ˈnæz", "gûl" := "gul"], ruleExamples = ["nazgûl" := "ˈnæz.gul"]} , "nazgûls" := Rule{rulePron = ["naz" := "ˈnæz", "gûls" := "guls"], ruleExamples = ["nazgûls" := "ˈnæz.guls"]} , "necromancer" := Rule{rulePron = ["ne" := "ˈnɛ", "cro" := "kɹəʊ", "man" := "ˌmæn", "cer" := "sə"], ruleExamples = ["necromancer" := "ˈnɛ.kɹəʊ.ˌmæn.sə"]} , "ness" := Rule{rulePron = ["ness" := "nɛs"], ruleExamples = ["ness" := "nɛs"]} , "next" := Rule{rulePron = ["next" := "nɛkst"], ruleExamples = ["next" := "nɛkst"]} , "north" := Rule{rulePron = ["north" := "nɔːθ"], ruleExamples = ["north" := "nɔːθ"]} , "on" := Rule{rulePron = ["on" := "ɒn"], ruleExamples = ["on" := "ɒn"]} , "open" := Rule{rulePron = ["o" := "ˈəʊ", "pen" := "pn"], ruleExamples = ["open" := "ˈəʊ.pn"]} , "orc" := Rule{rulePron = ["orc" := "ɔːk"], ruleExamples = ["orc" := "ɔːk"]} , "orcs" := Rule{rulePron = ["orcs" := "ɔːks"], ruleExamples = ["orcs" := "ɔːks"]} , "out" := Rule{rulePron = ["out" := "aʊt"], ruleExamples = ["out" := "aʊt"]} , "paddle" := Rule{rulePron = ["pa" := "ˈpæ", "ddle" := "dəl"], ruleExamples = ["paddle" := "ˈpæ.dəl"]} , "palantír" := Rule{rulePron = ["pa" := "pa", "lan" := "ˈlan", "tír" := "ˌtiːr"], ruleExamples = ["palantír" := "pa.ˈlan.ˌtiːr"]} , "phial" := Rule{rulePron = ["phial" := "ˈfaɪəl"], ruleExamples = ["phial" := "ˈfaɪəl"]} , "picture" := Rule{rulePron = ["pic" := "ˈpɪk", "ture" := "ʃə"], ruleExamples = ["picture" := "ˈpɪk.ʃə"]} , "pipe" := Rule{rulePron = ["pipe" := "ˈpaɪp"], ruleExamples = ["pipe" := "ˈpaɪp"]} , "pointy" := Rule{rulePron = ["poin" := "pɔɪn", "ty" := "ti"], ruleExamples = ["pointy" := "pɔɪn.ti"]} , "polo" := Rule{rulePron = ["po" := "ˈpəʊ", "lo" := "ləʊ"], ruleExamples = ["polo" := "ˈpəʊ.ləʊ"]} , "pool" := Rule{rulePron = ["pool" := "pul"], ruleExamples = ["pool" := "pul"]} , "power" := Rule{rulePron = ["power" := "ˈpaʊ̯ə̯"], ruleExamples = ["power" := "ˈpaʊ̯ə̯"]} , "powers" := Rule{rulePron = ["powers" := "ˈpaʊəz"], ruleExamples = ["powers" := "ˈpaʊəz"]} , "queen" := Rule{rulePron = ["queen" := "kwiːn"], ruleExamples = ["queen" := "kwiːn"]} , "raft" := Rule{rulePron = ["raft" := "ɹɑːft"], ruleExamples = ["raft" := "ɹɑːft"]} , "ranger" := Rule{rulePron = ["ran" := "ˈɹeɪn", "ger" := "d͡ʒə"], ruleExamples = ["ranger" := "ˈɹeɪn.d͡ʒə"]} , "real" := Rule{rulePron = ["real" := "ˈɹiːəl"], ruleExamples = ["real" := "ˈɹiːəl"]} , "really" := Rule{rulePron = ["rea" := "ˈɹɪə", "lly" := "li"], ruleExamples = ["really" := "ˈɹɪə.li"]} , "realm" := Rule{rulePron = ["realm" := "ɹɛlm"], ruleExamples = ["realm" := "ɹɛlm"]} , "red" := Rule{rulePron = ["red" := "ɹɛd"], ruleExamples = ["red" := "ɹɛd"]} , "rhinoceros" := Rule{rulePron = ["rhi" := "ɹaɪ", "noc" <> [LexemeVowel] := "ˈnɒs", "e" := "ə", "ros" := "ɹəs"], ruleExamples = ["rhinoceros" := "ɹaɪ.ˈnɒs.ə.ɹəs"]} , "riding" := Rule{rulePron = ["ri" := "ˈɹaɪ", "ding" := "dɪŋ"], ruleExamples = ["riding" := "ˈɹaɪ.dɪŋ"]} , "ring" := Rule{rulePron = ["ring" := "ɹɪŋ"], ruleExamples = ["ring" := "ɹɪŋ"]} , "rings" := Rule{rulePron = ["rings" := "ɹɪŋz"], ruleExamples = ["rings" := "ɹɪŋz"]} , "run" := Rule{rulePron = ["run" := "ɹʌn"], ruleExamples = ["run" := "ɹʌn"]} , "runs" := Rule{rulePron = ["runs" := "ɹʌns"], ruleExamples = ["runs" := "ɹʌns"]} , "sailing" := Rule{rulePron = ["sai" := "ˈseɪ", "ling" := "lɪŋ"], ruleExamples = ["sailing" := "ˈseɪ.lɪŋ"]} , "scare" := Rule{rulePron = ["scare" := "skɛə"], ruleExamples = ["scare" := "skɛə"]} , "scares" := Rule{rulePron = ["scares" := "skɛɹz"], ruleExamples = ["scares" := "skɛɹz"]} , "scary" := Rule{rulePron = ["sca" := "ˈskɛə", "ry" := "ɹi"], ruleExamples = ["scary" := "ˈskɛə.ɹi"]} , "scuba" := Rule{rulePron = ["scu" := "ˈskuː", "ba" := "bə"], ruleExamples = ["scuba" := "ˈskuː.bə"]} , "seek" := Rule{rulePron = ["seek" := "siːk"], ruleExamples = ["seek" := "siːk"]} , "shadow" := Rule{rulePron = ["sha" := "ˈʃæ", "dow" := "dəʊ"], ruleExamples = ["shadow" := "ˈʃæ.dəʊ"]} , "ship" := Rule{rulePron = ["ship" := "ʃɪp"], ruleExamples = ["ship" := "ʃɪp"]} , "shoot" := Rule{rulePron = ["shoot" := "ʃuːt"], ruleExamples = ["shoot" := "ʃuːt"]} , "shoots" := Rule{rulePron = ["shoots" := "ʃuːts"], ruleExamples = ["shoots" := "ʃuːts"]} , "short" := Rule{rulePron = ["short" := "ʃɔːt"], ruleExamples = ["short" := "ʃɔːt"]} , "sick" := Rule{rulePron = ["sick" := "sɪk"], ruleExamples = ["sick" := "sɪk"]} , "sit" := Rule{rulePron = ["sit" := "ˈsɪt"], ruleExamples = ["sit" := "ˈsɪt"]} , "skeleton" := Rule{rulePron = ["ske" := "ˈskɛ", "le" := "lɪ", "ton" := "tn"], ruleExamples = ["skeleton" := "ˈskɛ.lɪ.tn"]} , "ski" := Rule{rulePron = ["ski" := "skiː"], ruleExamples = ["ski" := "skiː"]} , "smoke" := Rule{rulePron = ["smoke" := "sməʊk"], ruleExamples = ["smoke" := "sməʊk"]} , "smokes" := Rule{rulePron = ["smokes" := "sməʊks"], ruleExamples = ["smokes" := "sməʊks"]} , "snorkel" := Rule{rulePron = ["snor" := "ˈsnɔː", "kel" := "kəl"], ruleExamples = ["snorkel" := "ˈsnɔː.kəl"]} , "stab" := Rule{rulePron = ["stab" := "stæb"], ruleExamples = ["stab" := "stæb"]} , "stabs" := Rule{rulePron = ["stabs" := "stæbs"], ruleExamples = ["stabs" := "stæbs"]} , "staff" := Rule{rulePron = ["staff" := "stɑːf"], ruleExamples = ["staff" := "stɑːf"]} , "stand" := Rule{rulePron = ["stand" := "stænd"], ruleExamples = ["stand" := "stænd"]} , "get" := Rule{rulePron = ["get" := "gɛt"], ruleExamples = ["get" := "gɛt"]} , "stealthy" := Rule{rulePron = ["steal" := "ˈstɛl", "thy" := "θɪ"], ruleExamples = ["stealthy" := "ˈstɛl.θɪ"]} , "suit" := Rule{rulePron = ["suit" := "suːt"], ruleExamples = ["suit" := "suːt"]} , "swim" := Rule{rulePron = ["swim" := "swɪm"], ruleExamples = ["swim" := "swɪm"]} , "swimmer" := Rule{rulePron = ["swi" := "ˈswɪ", "mmer" := "mə"], ruleExamples = ["swimmer" := "ˈswɪ.mə"]} , "swimming" := Rule{rulePron = ["swi" := "ˈswɪ", "mming" := "mɪŋ"], ruleExamples = ["swimming" := "ˈswɪ.mɪŋ"]} , "sword" := Rule{rulePron = ["sword" := "sɔːd"], ruleExamples = ["sword" := "sɔːd"]} , "teeth" := Rule{rulePron = ["teeth" := "ˈtiːθ"], ruleExamples = ["teeth" := "ˈtiːθ"]} , "terrifying" := Rule{rulePron = ["te" := "ˈtɛ", "rri" := "ɹɪ", "fy" := "faɪ", "ing" := "ɪŋ"], ruleExamples = ["terrifying" := "ˈtɛ.ɹɪ.faɪ.ɪŋ"]} , "tiara" := Rule{rulePron = ["ti" := "ti", "ra" := "ˈɑːɹə"], ruleExamples = ["tiara" := "ti.ˈɑːɹə"]} , "tiger" := Rule{rulePron = ["ti" := "ˈtaɪ", "ger" := "gə"], ruleExamples = ["tiger" := "ˈtaɪ.gə"]} , "tigress" := Rule{rulePron = ["ti" := "ˈtaɪ", "gress" := "gɹɪs"], ruleExamples = ["tigress" := "ˈtaɪ.gɹɪs"]} , "together" := Rule{rulePron = ["to" := "tʊ", "geth" := "ˈgɛð", "er" := "ə"], ruleExamples = ["together" := "tʊ.ˈgɛð.ə"]} , "top" := Rule{rulePron = ["top" := "tɒp"], ruleExamples = ["top" := "tɒp"]} , "touches" := Rule{rulePron = ["tou" := "ˈtʌ", "ches" := "t͡ʃɪz"], ruleExamples = ["touches" := "ˈtʌ.t͡ʃɪz"]} , "track" := Rule{rulePron = ["track" := "tɹæk"], ruleExamples = ["track" := "tɹæk"]} , "trawler" := Rule{rulePron = ["traw" := "ˈtrɔː", "ler" := "lə"], ruleExamples = ["trawler" := "ˈtrɔː.lə"]} , "tree" := Rule{rulePron = ["tree" := "tɹiː"], ruleExamples = ["tree" := "tɹiː"]} , "trees" := Rule{rulePron = ["trees" := "tɹiːs"], ruleExamples = ["trees" := "tɹiːs"]} , "tries" := Rule{rulePron = ["tries" := "tɹaɪz"], ruleExamples = ["tries" := "tɹaɪz"]} , "trunks" := Rule{rulePron = ["trunks" := "tɹʌŋks"], ruleExamples = ["trunks" := "tɹʌŋks"]} , "two" := Rule{rulePron = ["two" := "tu"], ruleExamples = ["two" := "tu"]} , "under" := Rule{rulePron = ["un" := "ˈʌn", "der" := "də"], ruleExamples = ["under" := "ˈʌn.də"]} , "unexpected" := Rule{rulePron = ["un" := "ʌn", "e" := "ɪ", "x" := ["k", "ˈs"], "pec" := "pɛk", "ted" := "tɪd"], ruleExamples = ["unexpected" := "ʌn.ɪk.ˈspɛk.tɪd"]} , "up" := Rule{rulePron = ["up" := "ʌp"], ruleExamples = ["up" := "ʌp"]} , "wait" := Rule{rulePron = ["wait" := "weɪt"], ruleExamples = ["wait" := "weɪt"]} , "waits" := Rule{rulePron = ["waits" := "weɪts"], ruleExamples = ["waits" := "weɪts"]} , "walk" := Rule{rulePron = ["walk" := "wɔːk"], ruleExamples = ["walk" := "wɔːk"]} , "walks" := Rule{rulePron = ["walks" := "wɔːks"], ruleExamples = ["walks" := "wɔːks"]} , "war" := Rule{rulePron = ["war" := "wɔː"], ruleExamples = ["war" := "wɔː"]} , "wars" := Rule{rulePron = ["wars" := "wɔːz"], ruleExamples = ["wars" := "wɔːz"]} , "water" := Rule{rulePron = ["wa" := "ˈwɔː", "ter" := "tə"], ruleExamples = ["water" := "ˈwɔː.tə"]} , "wears" := Rule{rulePron = ["wears" := "wɛəz"], ruleExamples = ["wears" := "wɛəz"]} , "white" := Rule{rulePron = ["white" := "waɪt"], ruleExamples = ["white" := "waɪt"]} , "wield" := Rule{rulePron = ["wield" := "wiːld"], ruleExamples = ["wield" := "wiːld"]} , "wields" := Rule{rulePron = ["wields" := "wiːlds"], ruleExamples = ["wields" := "wiːlds"]} , "witch" := Rule{rulePron = ["witch" := "wɪt͡ʃ"], ruleExamples = ["witch" := "wɪt͡ʃ"]} , "women" := Rule{rulePron = ["wom" := "ˈwɪm", "en" := "ɪn"], ruleExamples = ["women" := "ˈwɪm.ɪn"]} , "wood" := Rule{rulePron = ["wood" := "wʊd"], ruleExamples = ["wood" := "wʊd"]} , "wraith" := Rule{rulePron = ["wraith" := "ɹeɪθ"], ruleExamples = ["wraith" := "ɹeɪθ"]} , "yacht" := Rule{rulePron = ["yacht" := "jɒt"], ruleExamples = ["yacht" := "jɒt"]} , "cherry" := Rule{rulePron = ["che" := "ˈt͡ʃɛ", "rry" := "ɹi"], ruleExamples = ["cherry" := "ˈt͡ʃɛ.ɹi"]} , "blue" := Rule{rulePron = ["blue" := "ˈbluː"], ruleExamples = ["blue" := "ˈbluː"]} , "peach" := Rule{rulePron = ["peach" := "piːt͡ʃ"], ruleExamples = ["peach" := "piːt͡ʃ"]} , "wild" := Rule{rulePron = ["wild" := "waɪld"], ruleExamples = ["wild" := "waɪld"]} , "straw" := Rule{rulePron = ["straw" := "stɹɔː"], ruleExamples = ["straw" := "stɹɔː"]} , "green" := Rule{rulePron = ["green" := "gɹiːn"], ruleExamples = ["green" := "gɹiːn"]} , "syrup" := Rule{rulePron = ["sy" := "sɪ", "rup" := "ɹəp"], ruleExamples = ["syrup" := "sɪ.ɹəp"]} , "berry" := Rule{rulePron = ["be" := "ˈbɛ", "rry" := "ɹi"], ruleExamples = ["blueberry" := "ˈbluː.ˈbɛ.ɹi"]} , "cantaloupe" := Rule{rulePron = ["can" := "ˈkæn", "ta" := "tə", "loupe" := "luːp"], ruleExamples = ["cantaloupe" := "ˈkæn.tə.luːp"]} , "zombie" := Rule{rulePron = ["zom" := "zɒm", "bie" := "bi"], ruleExamples = ["zombie" := "zɒm.bi"]} , "must" := Rule{rulePron = ["must" := "mʌst"], ruleExamples = ["must" := "mʌst"]} , "mustang" := Rule{rulePron = ["mus" := "ˈmʌs", "tang" := "ˌtæŋ"], ruleExamples = ["mustang" := "ˈmʌs.ˌtæŋ"]} , "leans" := Rule{rulePron = ["leans" := "liːnz"], ruleExamples = ["leans" := "liːnz"]} , "apple" := Rule{rulePron = ["a" := "ˈæ", "pple" := "pl"], ruleExamples = ["apple" := "ˈæ.pl"]} , "orange" := Rule{rulePron = ["o" := "ˈɒ", "range" := "ɹɪnd͡ʒ"], ruleExamples = ["orange" := "ˈɒ.ɹɪnd͡ʒ"]} , "banana" := Rule{rulePron = ["ba" := "bə", "na" := "ˈnɑː", "na" := "nə"], ruleExamples = ["banana" := "bə.ˈnɑː.nə"]} , "ananas" := Rule{rulePron = ["a" := "ə", "na" := "ˈneɪ", "nas" := "nəs"], ruleExamples = ["ananas" := "ə.ˈneɪ.nəs"]} , "apricot" := Rule{rulePron = ["a" := "ˈeɪ", "pri" := "pɹɪ", "cot" := "kɒt"], ruleExamples = ["apricot" := "ˈeɪ.pɹɪ.kɒt"]} , "lemon" := Rule{rulePron = ["lem" := "ˈlɛm", "on" := "ən"], ruleExamples = ["lemon" := "ˈlɛm.ən"]} , "sweet" := Rule{rulePron = ["sweet" := "swiːt"], ruleExamples = ["sweet" := "swiːt"]} , "lime" := Rule{rulePron = ["lime" := "laɪm"], ruleExamples = ["lime" := "laɪm"]} , "ginger" := Rule{rulePron = ["gin" := "ˈdʒɪn", "ger" := "dʒə"], ruleExamples = ["ginger" := "ˈdʒɪn.dʒə"]} , "raspberry" := Rule{rulePron = ["ras" := "ˈɹɑːz", "be" := "bə", "rry" := "ɹi"], ruleExamples = ["raspberry" := "ˈɹɑːz.bə.ɹi"]} , "hibiscus" := Rule{rulePron = ["hi" := "hɪ", "bis" := "ˈbɪs", "cus" := "kəs"], ruleExamples = ["hibiscus" := "hɪ.ˈbɪs.kəs"]} , "mandarin" := Rule{rulePron = ["man" := "ˈmæn", "da" := "də", "rin" := "ɹɪn"], ruleExamples = ["mandarin" := "ˈmæn.də.ɹɪn"]} , "party" := Rule{rulePron = ["par" := "ˈpɑː", "ty" := "ti"], ruleExamples = ["party" := "ˈpɑː.ti"]} , "greetings" := Rule{rulePron = ["gree" := "ˈgɹiː", "tings" := "tɪŋz"], ruleExamples = ["greetings" := "ˈgɹiː.tɪŋz"]} , "decorations" := Rule{rulePron = ["de" := "ˌdɛ", "co" := "kə", "ra" := "ˈɹeɪ", "tions" := "ʃənz"], ruleExamples = ["decorations" := "ˌdɛ.kə.ˈɹeɪ.ʃənz"]} , "tart" := Rule{rulePron = ["tart" := "tɑːt"], ruleExamples = ["tart" := "tɑːt"]} , "cake" := Rule{rulePron = ["cake" := "keɪk"], ruleExamples = ["cake" := "keɪk"]} , "fruit" := Rule{rulePron = ["fruit" := "fɹuːt"], ruleExamples = ["fruit" := "fɹuːt"]} , "gift" := Rule{rulePron = ["gift" := "gɪft"], ruleExamples = ["gift" := "gɪft"]} , "juice" := Rule{rulePron = ["juice" := "d͡ʒuːs"], ruleExamples = ["juice" := "d͡ʒuːs"]} , "works" := Rule{rulePron = ["works" := "wɜːks"], ruleExamples = ["fireworks" := "ˈfaɪ.ə.wɜːks"]} , "drink" := Rule{rulePron = ["drink" := "dɹɪŋk"], ruleExamples = ["drink" := "dɹɪŋk"]} , "fizzy" := Rule{rulePron = ["fi" := "ˈfɪ", "zzy" := "zi"], ruleExamples = ["fizzy" := "ˈfɪ.zi"]} , "Éowyn" := Rule{rulePron = ["Eo" := "ˈeɪoʊ", "wyn" := "wɪn"], ruleExamples = ["Éowyn" := "ˈeɪoʊ.wɪn"]} , -- , "her" := Rule{rulePron = ["her" := "ə"], ruleExamples = ["her" := "ə"]} -- unstressed ending "'s" := Rule{rulePron = ["'" := [], ending "s" := "s"], ruleExamples = ["tiger's" := "ˈtaɪ.gə.s"]} , ending "for" := Rule{rulePron = [word "for" := "fɔː"], ruleExamples = ["for" := "fɔː"]} , ending "ing" := Rule{rulePron = [ending "ing" := "ɪŋ"], ruleExamples = ["beeing" := "ˈbiː.ɪŋ"]} , ending "ling" := Rule{rulePron = [ending "ling" := "lɪŋ"], ruleExamples = ["snorkelling" := "ˈsnɔː.kəl.lɪŋ"]} , ending "with" := Rule{rulePron = [ending "with" := "wɪθ"], ruleExamples = ["with" := "wɪθ"]} , ending "with" <> " " <> begining [LexemeSemiVowel] := Rule{rulePron = [ending "with" <> " " <> begining [LexemeSemiVowel] := "wɪð"], ruleExamples = ["with you" := "wɪð.ju"]} , ending "with" <> " " <> begining [LexemeSemiVowel] := Rule{rulePron = [ending "with" <> " " <> begining [LexemeSemiVowel] := "wɪð"], ruleExamples = ["with you" := "wɪð.ju"]} , -- , ending "with" <> " " <> [LexemeVowel] := Rule{rulePron = [ending "with" <> " " <> [LexemeVowel] := "wɪð"], ruleExamples = ["with you" := "wɪð.ju"]} word "a" := Rule{rulePron = [word "a" := "ə"], ruleExamples = ["a" := "ə"]} , word "and" := Rule{rulePron = [word "and" := "ænd"], ruleExamples = ["and" := "ænd"]} , word "end" := Rule{rulePron = ["end" := "ɛnd"], ruleExamples = ["end" := "ɛnd"]} , word "in" := Rule{rulePron = [word "in" := "ɪn"], ruleExamples = ["in" := "ɪn"]} , word "its" := Rule{rulePron = [word "its" := "ɪts"], ruleExamples = ["its" := "ɪts"]} , word "of" := Rule{rulePron = [word "of" := "ɒv"], ruleExamples = ["of" := "ɒv"]} , word "the" := Rule{rulePron = [word "the" := "ðə"], ruleExamples = ["the" := "ðə"]} , word "the" <> " " <> [LexemeBorder, LexemeVowel] := Rule{rulePron = [word "the" <> " " <> [LexemeBorder, LexemeVowel] := "ði"], ruleExamples = ["the eye" := "ði.aɪ"]} , word "the" <> " " <> [LexemeVowel] := Rule{rulePron = [word "the" <> " " <> [LexemeVowel] := "ði"], ruleExamples = ["the end" := "ði.ɛnd"]} , word "to" := Rule{rulePron = [word "to" := "tuː"], ruleExamples = ["to" := "tuː"]} , word "you" := Rule{rulePron = [word "you" := "ju"], ruleExamples = ["you" := "ju"]} -- , "with" := Rule{rulePron = ["with" := ""], ruleExamples = ["with" := ""]} -- , ending "s" := Rule{rulePron = [[LexemeConsonant] <> "s" := "ɪŋ"], ruleExamples = ["beeing" := "ˈbiː.ɪŋ"]} ] -- , "" := Rule{rulePron = ["" := ""], ruleExamples = ["" := ""]} & Pron.withCapital & fromList