From d88e1a8fb655731714759c4a751803e441a384ce Mon Sep 17 00:00:00 2001 From: "Reece H. Dunn" Date: Sun, 1 Jan 2017 20:24:34 +0000 Subject: [PATCH] =?UTF-8?q?jp:=20support=20the=20allophones=20of=20?= =?UTF-8?q?=E3=82=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dictsource/jp_rules | 50 ++++++++++++++++++++++++++++++++++++++++- phsource/ph_ipa | 54 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 103 insertions(+), 1 deletion(-) diff --git a/dictsource/jp_rules b/dictsource/jp_rules index 967109e7..4f397d62 100644 --- a/dictsource/jp_rules +++ b/dictsource/jp_rules @@ -46,6 +46,27 @@ // Hiragana +.L01 か き く け こ // k +.L02 が ぎ ぐ げ ご // g +.L03 さ す せ そ // s +.L04 し // sh +.L05 ざ ず ぜ ぞ づ // z +.L06 じ ぢ // j +.L07 た て と // t +.L08 ち // ch +.L09 つ // ts +.L10 だ で ど // d +.L11 な に ぬ ね の // n +.L12 は ひ へ ほ // h +.L13 ふ // f +.L14 ば び ぶ べ ぼ // b +.L15 ぱ ぴ ぷ ぺ ぽ // p +.L16 ま み む め も // m +.L17 や ゆ よ // y +.L18 ら り る れ ろ // r +.L19 わ ゐ ゑ を // w +.L20 あ い う え お // vowel + .group あ あ a_" // a @@ -250,4 +271,31 @@ を o_o // wo .group ん - ん n // n + ん N\\ // n + ん (L01 N // n (k + ん (L02 N // n (g + ん (L03 u~ // n (s + い) ん (L03 i~ // i) n (s + ん (L04 u~ // n (sh + い) ん (L04 i~ // i) n (sh + ん (L05 n // n (z + ん (L06 n // n (j + ん (L07 n // n (t + ん (L08 n // n (ch + ん (L09 n // n (ts + ん (L10 n // n (d + ん (L11 n // n (n + ん (L12 u~ // n (h + い) ん (L12 i~ // i) n (h + ん (L13 u~ // n (f + い) ん (L13 i~ // i) n (f + ん (L14 m // n (b + ん (L15 m // n (p + ん (L16 m // n (m + ん (L17 u~ // n (y + い) ん (L17 i~ // i) n (y + ん (L18 n // n (r + ん (L19 u~ // n (w + い) ん (L19 i~ // i) n (w + ん (L20 u~ // n ([vowel] + い) ん (L20 i~ // i) n ([vowel] diff --git a/phsource/ph_ipa b/phsource/ph_ipa index 3578f697..688a9465 100644 --- a/phsource/ph_ipa +++ b/phsource/ph_ipa @@ -18,6 +18,11 @@ // This is using the X-SAMPA transcriptions // (http://www.phon.ucl.ac.uk/home/sampa/x-sampa.htm). +phoneme : + virtual + length 70 +endphoneme + phoneme _j liquid palatal starttype #i ipa ʲ @@ -44,6 +49,20 @@ phoneme i FMT(vowel/i) endphoneme +phoneme i~ + vowel long starttype #i endtype #i + ipa ĩ + length 220 + FMT(vnasal/i_n2) +endphoneme + +phoneme u~ + vowel starttype #u endtype #u + ipa ũ + length 220 + FMT(vnasal/u_n) +endphoneme + phoneme M_Bo // M_B_o vowel starttype #u endtype #u ipa ɯᵝ @@ -120,6 +139,41 @@ phoneme n ENDIF endphoneme +phoneme N + vcd vel nasal + ipa ŋ + Vowelout f1=3 f2=2300 300 400 f3=-200 80 len=40 rms=20 brk + lengthmod 3 + + NextVowelStarts + VowelStart(nn/nn@) + VowelStart(nn/nna) + VowelStart(nn/nne) + VowelStart(nn/nni) + VowelStart(nn/nno) + VowelStart(nn/nnu) + EndSwitch + + IF prevPh(#i) THEN + VowelEnding(nn/inn, -40) + ENDIF + + IF prevPh(isNotVowel) AND nextPhW(isLiquid) THEN + FMT(nn/nnj) + ELIF prevPh(isPause) THEN + FMT(nn/_nn) + ELIF nextPh(isNotVowel) THEN + FMT(nn/nn_) + ENDIF +endphoneme + +phoneme N\\ + vcd uvl nasal + ipa ɴ + // FIXME: Stub phoneme. + CALL ipa/n +endphoneme + // Plosives phoneme p