UNPKG

arpabet-and-ipa-convertor-ts

Version:

Typescript code to convert between Arpabet and IPA phonetic transcriptions

121 lines (120 loc) 8.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.consonants = exports.vowels = void 0; /* 参考 https://en.wikipedia.org/wiki/ARPABET*/ /* ARPABET IPA Example(s) 1-letter2-letter 修正 (美| 英) 音标 ARPAbet a AA ɑ balm, AA ɑ | ɒ ɑ: 英 [bɑ:m] 美 [bɑm] B AA1 M bot 英 [bɒt] 美 [bɑt] B AA1 T @ AE æ bat AE æ 英 [bæt] 美 [bæt] B AE1 T A AH ʌ butt AH ʌ 英 [bʌt] 美 [bʌt] B AH1 T c AO ɔ bought AO ɔ | ɔ: 英 [bɔ:t] 美 [bɔt] B AO1 T W AW aʊ bout AW aʊ 英 [baʊt] 美 [baʊt] B AW1 T x AX ə about AX ə 英 [əˈbaʊt] 美 [əˈbaʊt] AH0 B AW1 T N/A AXR[4] ɚ letter ER ɚ 英 [ˈletə(r)] 美 [ˈlɛtɚ] L EH1 T ER0 Y AY aɪ bite AY aɪ 英 [baɪt] 美 [baɪt] B AY1 T E EH ɛ bet EH ɛ | e 英 [bet] 美 [bet] B EH1 T R ER ɝ bird ER ɜr | ɜ: 英 [bɜ:d] 美 [bɜrd] B ER1 D e EY eɪ bait EY eɪ 英 [beɪt] 美 [beɪt] B EH1 T I IH ɪ bit IH ɪ 英 [bɪt] 美 [bɪt B IH1 T X IX ɨ roses IX ɨ 英 ['rəʊzɪz] 美 ['roʊzɪz] R OW1 Z rabbit 英 [ˈræbɪt] 美 [ˈræbɪt] R AE1 B AH0 T i IY i beat IY i | i: 英 [bi:t] 美 [bit] B IY1 T o OW oʊ boat OW oʊ | əʊ 英 [bəʊt] 美 [boʊt] B OW1 T O OY ɔɪ boy OY ɔɪ 英 [bɔɪ] 美 [bɔɪ] B OY1 U UH ʊ book UH ʊ 英 [bʊk] 美 [bʊk] B UH1 K u UW u boot UW u | u: 英 [bu:t] 美 [but] B UW1 T N/A UX[4] ʉ dude UW ʉ 英 [du:d] 美 [dud, djud] D UW1 D*/ var phoneme_1 = require("./model/phoneme"); exports.vowels = [ new phoneme_1.Phoneme("AA", "\u0251", "\u0251:", "\u0251", true), new phoneme_1.Phoneme("AE", "\u00e6", "\u00e6", "\u00e6", true), new phoneme_1.Phoneme("AH", "\u028c", "\u028c", "\u028c", true), new phoneme_1.Phoneme("AO", "\u0254", "\u0254:", "\u0254", true), new phoneme_1.Phoneme("AW", "a\u028a", "a\u028a", "a\u028a", true), new phoneme_1.Phoneme("AX", "\u0259", "\u0259", "\u0259", true), new phoneme_1.Phoneme("ER", "\u025a", "\u0259r", "\u0259r", true), new phoneme_1.Phoneme("AY", "a\u026a", "a\u026a", "a\u026a", true), new phoneme_1.Phoneme("EH", "\u025b", "e", "e", true), new phoneme_1.Phoneme("ER", "\u025d", "\u025c:", "\u025cr", true), new phoneme_1.Phoneme("EY", "e", "e\u026a", "e\u026a", true), new phoneme_1.Phoneme("IH", "\u026a", "\u026a", "\u026a", true), new phoneme_1.Phoneme("IX", "\u0268", "\u0268", "\u0268", true), new phoneme_1.Phoneme("IY", "i", "i:", "i:", true), new phoneme_1.Phoneme("OW", "o", "\u0259\u028a", "o\u028a", true), new phoneme_1.Phoneme("OY", "\u0254\u026a", "\u0254\u026a", "\u0254\u026a", true), new phoneme_1.Phoneme("UH", "\u028a", "\u028a", "\u028a", true), new phoneme_1.Phoneme("UW", "u", "u:", "u", true), new phoneme_1.Phoneme("UX", "\u0289", "\u0289", "\u0289", true), ]; /* Consonants[3] ARPABET IPA Example 1-letter 2-letter 修正 b B b buy B b 英 [baɪ] 美 [baɪ] B AY1 C CH tʃ China CH tʃ 英 ['tʃaɪnə] 美 [ˈtʃaɪnə] CH AY1 N AH0 d D d die D d 英 [daɪ] 美 [daɪ] D AY1 D DH ð thy DH ð 英 [ðaɪ] 美 [ðaɪ] DH AY1 F DX ɾ butter T t | ɾ 英 [ˈbʌtə(r)] 美 [ˈbʌtɚ] B AH1 T ER0 L EL l̩ bottle L l 英 [ˈbɒtl] 美 [ˈbɑtl] B AA1 T AH0 L M EM m̩ rhythm M m 英 [ˈrɪðəm] 美 [ˈrɪðəm] R IH1 DH AH0 M N EN n̩ button N n 英 [ˈbʌtn] 美 [ˈbʌtn] B AH1 T AH0 N f F f fight F f 英 [faɪt] 美 [faɪt] F AY1 T g G ɡ guy G g 英 [gaɪ] 美 [ɡaɪ] G AY1 h HH or H[4] h high HH h 英 [haɪ] 美 [haɪ] HH AY1 J JH dʒ jive JH dʒ 英 [dʒaɪv] 美 [dʒaɪv] JH AY1 V k K k kite K k 英 [kaɪt] 美 [kaɪt] K AY1 T l L l lie L l 英 [laɪ] 美 [lai] L AY1 m M m my M m 英 [maɪ] 美 [maɪ] M AY1 n N n nigh N n 英 [naɪ] 美 [naɪ] N AY1 G NX or NG[4] ŋ sing NG ŋ 英 [sɪŋ] 美 [sɪŋ] S IH1 NG N/A NX[4] ɾ̃ winner 英 [ˈwɪnə(r)] 美 [ˈwɪnɚ] W IH1 N ER0 p P p pie P p 英 [paɪ] 美 [paɪ] P AY1 Q Q ʔ uh-oh Q ʔ 英 [ˈʌˈəu] 美 [ˈʌˌo] r R ɹ rye R r or ɹ 英 [raɪ] 美 [raɪ] R AY1 s S s sigh S s 英 [saɪ] 美 [saɪ] S AY1 S SH ʃ shy SH ʃ 英 [ʃaɪ] 美 [ʃaɪ] SH AY1 t T t tie T t 英 [taɪ] 美 [taɪ] T AY1 T TH θ thigh TH θ 英 [θaɪ] 美 [θaɪ] TH AY1 v V v vie V v 英 [vaɪ] 美 [vaɪ] V AY1 w W w wise W w 英 [waɪz] 美 [waɪz] W AY1 Z H WH ʍ why WH ʍ 英 [waɪ] 美 [hwaɪ, waɪ] HH W AY1, W AY1 y Y j yachting Y j 英 [ˈjɒtɪŋ] 美 [ˈjɑtɪŋ] Y AA1 T IH0 NG z Z z zoo Z z 英 [zu:] 美 [zu] Z UW1 Z ZH ʒ pleasure ZH ʒ 英 [ˈpleʒə(r)] 美 [ˈplɛʒɚ] P L EH1 ZH ER0*/ /* 在英语中,在一个单词的结尾音节中如果无发音的元音字母,或有元音字母也不发音而由l、m或n来充当元音字母, 那么该音节就叫做成音节(syllabic consonant)。在一些英文词典中,常在成音节中的/l/、/m/、/n/下方加上一点(.),写成/l̩/、/n̩/、/m̩/, 用来表示成音节辅音。例如:noodle/'nu:dl̩/、traveler/ˈtrævl̩ɚ/。*/ exports.consonants = [ new phoneme_1.Phoneme("B", "b", "b", "b", false), new phoneme_1.Phoneme("CH", "t\u0283", "t\u0283", "t\u0283", false), new phoneme_1.Phoneme("D", "d", "d", "d", false), new phoneme_1.Phoneme("DH", "\u00f0", "\u00f0", "\u00f0", false), new phoneme_1.Phoneme("DX", "\u027e", "\u027e", "\u027e", false), new phoneme_1.Phoneme("F", "f", "f", "f", false), new phoneme_1.Phoneme("G", "g", "g", "\u0261", false), new phoneme_1.Phoneme("HH", "h", "h", "h", false), new phoneme_1.Phoneme("JH", "d\u0292", "d\u0292", "d\u0292", false), new phoneme_1.Phoneme("K", "k", "k", "k", false), new phoneme_1.Phoneme("L", "l", "l", "l", false), new phoneme_1.Phoneme("M", "m", "m", "m", false), new phoneme_1.Phoneme("N", "n", "n", "n", false), new phoneme_1.Phoneme("NG", "\u014b", "\u014b", "\u014b", false), new phoneme_1.Phoneme("P", "p", "p", "p", false), new phoneme_1.Phoneme("Q", "\u0294", "\u0294", "\u0294", false), new phoneme_1.Phoneme("R", "r", "r", "\u0279", false), new phoneme_1.Phoneme("S", "s", "s", "s", false), new phoneme_1.Phoneme("SH", "\u0283", "\u0283", "\u0283", false), new phoneme_1.Phoneme("T", "t", "t", "t", false), new phoneme_1.Phoneme("TH", "\u03b8", "\u03b8", "\u03b8", false), new phoneme_1.Phoneme("V", "v", "v", "v", false), new phoneme_1.Phoneme("W", "w", "w", "w", false), new phoneme_1.Phoneme("WH", "\u028d", "\u028d", "\u028d", false), new phoneme_1.Phoneme("Y", "j", "j", "j", false), new phoneme_1.Phoneme("Z", "z", "z", "z", false), new phoneme_1.Phoneme("ZH", "\u0292", "\u0292", "\u0292", false), ];