diff --git a/dictsource/vi_rules b/dictsource/vi_rules index b4279e91..7e2ba50a 100644 --- a/dictsource/vi_rules +++ b/dictsource/vi_rules @@ -84,6 +84,7 @@ ỵ ỵ .L03 ch nh .L04 a u ă â o ô á à ả ã ạ ù ú ủ ũ ụ ắ ằ ẳ ẵ ặ ấ ầ ẩ ẫ ậ ó ò ỏ õ ọ ố ồ ổ ỗ ộ ư ứ ừ ử ữ ự ơ ớ ờ ở ỡ ợ .L05 o ó ò ỏ õ ọ ô ố ồ ộ ỗ ổ + .group b b b _) b _b @@ -267,7 +268,13 @@ ỵ ỵ .group q q k q (_ k - qu kw //kw + qu kw //kw + quô ku@ + quồ ku@2 + quố ku@3 + quổ ku@4 + quỗ ku@5 + quộ ku@6 @@ -1025,7 +1032,6 @@ ỵ ỵ u (@ _^_EN // ua (L01 _^_EN ?2 u u- - t) u (A u .group ù diff --git a/phsource/ph_vietnam b/phsource/ph_vietnam index 4d0b3ea3..68a17612 100644 --- a/phsource/ph_vietnam +++ b/phsource/ph_vietnam @@ -608,10 +608,36 @@ endphoneme phoneme w liquid - lengthmod 3 + lengthmod 7 starttype #u IF nextPh(isVowel) THEN - FMT(vnasal/u_n, 60) + NextVowelStarts + VowelStart(w/w@) + VowelStart(w/wa) + VowelStart(w/we) + VowelStart(w/wi) + VowelStart(w/wo) + VowelStart(w/wu) + EndSwitch + + VowelEnding(w/xw, -30) + IF nextPh(isVowel) AND prevPhW(t[) THEN + FMT(vnasal/u_n, 60) + ENDIF + IF prevPhW(isNasal) THEN + FMT(w/w) + ELSEIF prevPhW(h) THEN + // none, [hw] + ELSE + FMT(w/_w) + ENDIF + ELSE + // no vowel follows + Vowelout len=50 + IF prevPh(#i) THEN + FMT(w/iw_) + ENDIF + FMT(w/w_) ENDIF endphoneme \ No newline at end of file