eSpeak NG is an open source speech synthesizer that supports more than hundred languages and accents.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

vi_rules 22KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121
  1. // replace combining (tone) accents with single characters
  2. .replace
  3. à à
  4. á á
  5. ả ả
  6. ã ã
  7. ạ ạ
  8. ằ ằ
  9. ắ ắ
  10. ẳ ẳ
  11. ẵ ẵ
  12. ặ ặ
  13. ầ ầ
  14. ấ ấ
  15. ẩ ẩ
  16. ẫ ẫ
  17. ậ ậ
  18. è è
  19. é é
  20. ẻ ẻ
  21. ẽ ẽ
  22. ẹ ẹ
  23. ề ề
  24. ế ế
  25. ể ể
  26. ễ ễ
  27. ệ ệ
  28. ì ì
  29. í í
  30. ỉ ỉ
  31. ĩ ĩ
  32. ị ị
  33. ò ò
  34. ó ó
  35. ỏ ỏ
  36. õ õ
  37. ọ ọ
  38. ồ ồ
  39. ố ố
  40. ổ ổ
  41. ỗ ỗ
  42. ộ ộ
  43. ờ ờ
  44. ớ ớ
  45. ở ở
  46. ỡ ỡ
  47. ợ ợ
  48. ù ù
  49. ú ú
  50. ủ ủ
  51. ũ ũ
  52. ụ ụ
  53. ừ ừ
  54. ứ ứ
  55. ử ử
  56. ữ ữ
  57. ự ự
  58. ỳ ỳ
  59. ý ý
  60. ỷ ỷ
  61. ỹ ỹ
  62. ỵ ỵ
  63. //================================
  64. // Consonants
  65. //================================
  66. .L01 t c ne nd k x s nt ch th me te le ce ny ry e o u re nch de p pe ph sh v ve ge r
  67. .L02 n a
  68. .L03 t ch nh
  69. .L04 a u ă â o ô á à ả ã ạ ù ú ủ ũ ụ ắ ằ ẳ ẵ ặ ấ ầ ẩ ẫ ậ ó ò ỏ õ ọ ố ồ ổ ỗ ộ ư ứ ừ ử ữ ự ơ ớ ờ ở ỡ ợ
  70. .group b
  71. b b
  72. _) b _b
  73. //b($w_alt2 _^_EN
  74. .group c
  75. c g //k
  76. c (C _^_EN
  77. c (_ kh
  78. _) ch tS; // try [tS;] [tS] [c] c
  79. ?2 _) ch c
  80. ?1 _) ch c
  81. ch (_ c
  82. ce (_ _^_EN
  83. _) cl _^_EN
  84. .group d
  85. d z // try [z] [J] [dZ] [dZ;] [J^]
  86. ?2 d J^
  87. ?1 d J^
  88. d (_ _^_EN
  89. .group đ
  90. // đ d
  91. _) đ d_
  92. .group f
  93. //f f
  94. _) f _^_EN
  95. f (_ _^_EN
  96. .group g
  97. g (L04 Q // try [g] [Q]
  98. gh Q // or [g] [Q]
  99. gi z // try [D] [z] [j] [J^] [z;] [J] [dZ]
  100. g (ì z
  101. g (í z
  102. g (ỉ z
  103. g (ĩ z
  104. g (ị z
  105. _) g _^_EN
  106. ?1 g (ì J^
  107. ?1 g (í J^
  108. ?1 g (ỉ J^
  109. ?1 g (ĩ J^
  110. ?1 g (ị J^
  111. ?2 g (ì J^
  112. ?2 g (í J^
  113. ?2 g (ỉ J^
  114. ?2 g (ĩ J^
  115. ?2 g (ị J^
  116. ?1 gi J^
  117. ?2 gi J^
  118. ?1 giết J^'iE3g
  119. ?2 giết J^'iE3g
  120. ?1 giếng J^'iE3N
  121. ?1 giềng J^'iE2N
  122. ?2 giếng J^'iE3N
  123. ?1 giêng J^'iE1N
  124. ?2 giêng J^'iE1N
  125. ?2 giềng J^'iE2N
  126. giết z'iE3t[
  127. giếc z'iE3kh
  128. giêng z'iE1N
  129. giềng z'iE2N
  130. giếng z'iE3N
  131. giểng z'iE4N
  132. giễng z'iE5N
  133. giệng z'iE6N
  134. ?1 giệt J^'iE6g
  135. giệt z'iE6t[
  136. giệc z'iE6kh
  137. _) gol _^_EN
  138. _) gat _^_EN
  139. ght (_ _^_EN
  140. .group h
  141. h h
  142. ?2 hu w
  143. .group j
  144. j Z
  145. .group k
  146. _) k k
  147. _) kh x
  148. //kh x
  149. k (_ _^_EN
  150. .group l
  151. l l
  152. l (_ _^_EN
  153. C) le _^_EN
  154. //le (A _^_EN
  155. .group m
  156. m m
  157. .group n
  158. n n
  159. ?1 n (_ N //n
  160. ?2 n (_ N
  161. ng N
  162. ngh N
  163. nh n^
  164. ?2 L02) nh n
  165. nd (_ _^_EN
  166. .group ñ
  167. ñ n^
  168. .group p
  169. p (C _^_EN
  170. p p
  171. ph f
  172. .group q
  173. q k
  174. q (_ kh
  175. qu w //kw
  176. .group r
  177. r z // try [z] [z.] [r] [z;]
  178. ?2 r Q
  179. ?1 r z.
  180. r (_ _^_EN
  181. rm (_ _^_EN
  182. .group s
  183. s s. // try [s.] [s] [S]
  184. _) sh _^_EN
  185. s (_ _^_EN
  186. st (_ _^_EN
  187. .group t
  188. t t[
  189. ?1 t (_ kh
  190. ?2 t (_ kh
  191. th t
  192. tr tS //cr // try [cr] [tr] [tS;] [tS] [c] [dZ] [dz;]
  193. ?1 tr cr
  194. ?2 tr c
  195. ts (_ _^_EN
  196. th (_ _^_EN
  197. tt (_ _^_EN
  198. .group v
  199. v v
  200. ?2 v J^
  201. ve (A _^_EN
  202. .group w
  203. w w
  204. _) w _^_EN
  205. w (_ _^_EN
  206. .group x
  207. x s
  208. x (_ _^_EN
  209. .group z
  210. z z
  211. z (_ _^_EN
  212. //================================
  213. // Vowels
  214. //================================
  215. .group a
  216. a a:
  217. ai a:I
  218. aì a:I2
  219. aí a:I3
  220. aỉ a:I4
  221. aĩ a:I5
  222. aị a:I6
  223. ay aI
  224. ?2 ay a:I
  225. aý aI3
  226. aỷ aI4
  227. aỹ aI5
  228. aỵ aI6
  229. ao a:U
  230. aò a:U2
  231. aó a:U3
  232. aỏ a:U4
  233. aõ a:U5
  234. aọ a:U6
  235. au aU
  236. ?2 au a:U
  237. aù aU2
  238. aú aU3
  239. aủ aU4
  240. aũ aU5
  241. aụ aU6
  242. a (L01 _^_EN
  243. ai (L02 _^_EN
  244. a (@ _^_EN
  245. .group à
  246. à a:2
  247. ài a:I2
  248. ày aI2
  249. ?2 ày a:I2
  250. ào a:U2
  251. àu aU2
  252. ?2 àu a:U2
  253. .group á
  254. á a:3
  255. ái a:I3
  256. áy aI3
  257. áo a:U3
  258. áu aU3
  259. ?2 áu a:U3
  260. ?2 áy a:I3
  261. .group ả
  262. ả a:4
  263. ải a:I4
  264. ảy aI4
  265. ảo a:U4
  266. ảu aU4
  267. ?2 ảu a:U4
  268. ?2 ảy a:I4
  269. .group ã
  270. ã a:5
  271. ãi a:I5
  272. ãy aI5
  273. ão a:U5
  274. ãu aU5
  275. ?2 ãu a:U5
  276. ?2 ãy a:I5
  277. .group ạ
  278. ạ a:6
  279. ại a:I6
  280. ạy aI6
  281. ạo a:U6
  282. ạu aU6
  283. ?2 ạu a:U6
  284. ?2 ạy a:I6
  285. //================================
  286. .group ă
  287. ă a
  288. .group ằ
  289. ằ a2
  290. .group ắ
  291. ắ a3
  292. .group ẳ
  293. ẳ a4
  294. .group ẵ
  295. ẵ a5
  296. .group ặ
  297. ặ a6
  298. //=================================
  299. .group â
  300. â @
  301. ây @I
  302. âu @U1
  303. ?2 â (L03 a
  304. ?1 â (L03 a
  305. .group ầ
  306. ầ @2
  307. ầy @I2
  308. ầu @U2
  309. ?2 ầ (L03 a2
  310. ?1 ầ (L03 a2
  311. .group ấ
  312. ấ @3
  313. ấy @I3
  314. ấu @U3
  315. ?2 ấ (L03 a3
  316. ?1 ấ (L03 a3
  317. .group ẩ
  318. ẩ @4
  319. ẩy @I4
  320. ẩu @U4
  321. .group ẫ
  322. ẫ @5
  323. ẫy @I5
  324. ẫu @U5
  325. .group ậ
  326. ậ @6
  327. ậy @I6
  328. ậu @U6
  329. ?2 ậ (L03 a6
  330. ?1 ậ (L03 a6
  331. //===========================
  332. .group e
  333. e E
  334. eo EU
  335. eò EU2
  336. eó EU3
  337. eỏ EU4
  338. eỗ EU5
  339. eọ EU6
  340. e (L01 _^_EN
  341. ey (_ _^_EN
  342. e (@ _^_EN
  343. .group è
  344. è E2
  345. èo EU2
  346. .group é
  347. é E3
  348. éo EU3
  349. .group ẻ
  350. ẻ E4
  351. ẻo EU4
  352. .group ẽ
  353. ẽ E5
  354. ẽo EU5
  355. .group ẹ
  356. ẹ E6
  357. ẹo EU6
  358. //============================
  359. .group ê
  360. ê e
  361. êu eU1
  362. ?2 ê (L03 @:
  363. ?2 ê (L02 @:
  364. .group ề
  365. ề e2
  366. ều eU2
  367. ?2 ề (L03 @:2
  368. ?2 ề (L02 @:2
  369. .group ế
  370. ế e3
  371. ếu eU3
  372. ?2 ế (L03 @:3
  373. ?2 ế (L02 @:3
  374. .group ể
  375. ể e4
  376. ểu eU4
  377. ?2 ể (L03 @:4
  378. ?2 ể (L02 @:4
  379. .group ễ
  380. ễ e5
  381. ễu eU5
  382. ?2 ễ (L03 @:5
  383. ?2 ễ (L02 @:5
  384. .group ệ
  385. ệ e6
  386. ệu eU6
  387. ?2 ệ (L03 @:6
  388. ?2 ệ (L02 @:6
  389. //============================
  390. .group i
  391. i i
  392. //i (A j
  393. ia i@
  394. ià i@2
  395. iá i@3
  396. iả i@4
  397. iã i@5
  398. iạ i@6
  399. iê iE
  400. iề iE2
  401. iế iE3
  402. iể iE4
  403. iễ iE5
  404. iệ iE6
  405. iu iU
  406. iù iU2
  407. iú iU3
  408. iủ iU4
  409. iũ iU5
  410. iụ iU6
  411. iêu iU
  412. iều iU2
  413. iếu iU3
  414. iểu iU4
  415. iễu iU5
  416. iệu iU6
  417. i (L01 _^_EN
  418. i (@ _^_EN
  419. ?2 i (L03 @
  420. ?1 i (L03 @
  421. ?2 i (L02 @
  422. .group ì
  423. ì i2
  424. ì (A j2
  425. ìa i@2
  426. ìu iU2
  427. ?2 ì (L03 @2
  428. ?1 ì (L03 @2
  429. ?2 ì (L02 @2
  430. .group í
  431. í i3
  432. í (A j3
  433. ía i@3
  434. íu iU3
  435. ?2 í (L03 @3
  436. ?1 í (L03 @3
  437. ?2 í (L02 @3
  438. .group ỉ
  439. ỉ i4
  440. ỉ (A j4
  441. ỉa i@4
  442. ỉu iU4
  443. ?2 ỉ (L03 @4
  444. ?1 ỉ (L03 @4
  445. ?2 ỉ (L02 @4
  446. .group ĩ
  447. ĩ i5
  448. ĩ (A j5
  449. ĩa i@5
  450. ĩu iU5
  451. ?2 ĩ (L03 @5
  452. ?1 ĩ (L03 @5
  453. ?2 ĩ (L02 @5
  454. .group ị
  455. ị i6
  456. ị (A j6
  457. ịa i@6
  458. ịu iU6
  459. ?2 ị (L03 @6
  460. ?1 ị (L03 @6
  461. ?2 ị (L02 @6
  462. //=========================
  463. .group o
  464. o O
  465. oa o@ // modify oa sound example: hoa,khoa // o (A w
  466. oà o@2
  467. oá o@3
  468. oả o@4
  469. oã o@5
  470. oạ o@6
  471. oo o@
  472. oi OI
  473. oì OI2
  474. oí OI3
  475. oỉ OI4
  476. oĩ OI5
  477. oị OI6
  478. ong O#
  479. oe o& // Adding oe sound example: lóe sáng,toét mắt
  480. oai Oi // oai sound
  481. o (@ _^_EN
  482. oại Oi6
  483. oài Oi2
  484. oái Oi3
  485. oải Oi4
  486. oãi Oi5
  487. oă o@1
  488. oằ o@2
  489. oắ o@3
  490. oẳ o@4
  491. oẵ o@5
  492. oặ o@6
  493. .group ò
  494. ò O2
  495. òi OI2
  496. òa o@2 //ò (A w2
  497. òng O#2
  498. òe o&2
  499. .group ó
  500. ó O3
  501. ói OI3
  502. óa o@3 //ó (A w3
  503. óng O#3
  504. óe o&3
  505. .group ỏ
  506. ỏ O4
  507. ỏi OI4
  508. ỏa o@4 //ỏ (A w4
  509. ỏng O#4
  510. ỏe o&4
  511. .group õ
  512. õ O5
  513. õi OI5
  514. õa o@5 //õ (A w5
  515. õng O#5
  516. õe o&5
  517. .group ọ
  518. ọ O6
  519. ọi OI6
  520. ọa o@6 //ọ (A w6
  521. ọng O#6
  522. ọe o&6
  523. //=============================
  524. .group ô
  525. ô o
  526. ôi oI
  527. ông o# // ông sound
  528. ?2 ôi O- //south dialect
  529. .group ồ
  530. ồ o2
  531. ồi oI2
  532. ồng o#2
  533. ?2 ồi O-2
  534. .group ố
  535. ố o3
  536. ối oI3
  537. ống o#3
  538. ?2 ối O-3
  539. .group ổ
  540. ổ o4
  541. ổi oI4
  542. ổng o#4
  543. ?2 ổi O-4
  544. .group ỗ
  545. ỗ o5
  546. ỗi oI5
  547. ỗng o#5
  548. ?2 ỗi O-5
  549. .group ộ
  550. ộ o6
  551. ội oI6
  552. // ộng o#6
  553. ?2 ội O-6
  554. //=============================
  555. .group ơ
  556. ơ @:
  557. ơi @:I
  558. ơu @:U
  559. ?2 ơi @- //south dialect
  560. .group ờ
  561. ờ @:2
  562. ời @:I2
  563. ờu @:U2
  564. ?2 ời @-2
  565. .group ớ
  566. ớ @:3
  567. ới @:I3
  568. ớu @:U3
  569. ?2 ới @-3
  570. .group ở
  571. ở @:4
  572. ởi @:I4
  573. ởu @:U4
  574. ?2 ởi @-4
  575. .group ỡ
  576. ỡ @:5
  577. ỡi @:I5
  578. ỡu @:U5
  579. ?2 ỡi @-5
  580. .group ợ
  581. ợ @:6
  582. ợi @:I6
  583. ợu @:U6
  584. ?2 ợi @-6
  585. //=============================
  586. .group u
  587. u u
  588. u (A w
  589. A) u w
  590. ui uI
  591. uì uI2
  592. uí uI3
  593. uỉ uI4
  594. uĩ uI5
  595. uị uI6
  596. ua u@
  597. uà u@2
  598. uá u@3
  599. uả u@4
  600. uã u@5
  601. uạ u@6
  602. uô u@
  603. uồ u@2
  604. uố u@3
  605. uổ u@4
  606. uỗ u@5
  607. uộ u@6
  608. uôi u@j
  609. uồi u@j2
  610. uối u@j3
  611. uổi u@j4
  612. uỗi u@j5
  613. uội u@j6
  614. //ung u#
  615. u (L01 _^_EN
  616. u (@ _^_EN
  617. // ua (L01 _^_EN
  618. ?2 u u-
  619. .group ù
  620. ù u2
  621. ù (A w2
  622. ùi uI2
  623. ùa u@2
  624. //ùng u#2
  625. ?2 ù u-2
  626. .group ú
  627. ú u3
  628. ú (A w3
  629. úi uI3
  630. úa u@3
  631. //úng u#3
  632. ?2 ú u-3
  633. .group ủ
  634. ủ u4
  635. ủ (A w4
  636. ủi uI4
  637. ủa u@4
  638. //ủng u#4
  639. ?2 ủ u-4
  640. .group ũ
  641. ũ u5
  642. ũ (A w5
  643. ũi uI5
  644. ũa u@5
  645. //ũng u#5
  646. ?2 ũ u-5
  647. .group ụ
  648. ụ u6
  649. ụ (A w6
  650. ụi uI6
  651. ụa u@6
  652. //ụng u#6
  653. ?2 ụ u-6
  654. //=============================
  655. .group ư
  656. ư y
  657. ưi yI
  658. ưa y@
  659. ươ y@
  660. ườ y@2
  661. ướ y@3
  662. ưở y@4
  663. ưỡ y@5
  664. ượ y@6
  665. ưu yw
  666. ươi y@j
  667. ười y@j2
  668. ưới y@j3
  669. ưởi y@j4
  670. ưỡi y@j5
  671. ượi y@j6
  672. ươu y@w
  673. ườu y@w2
  674. ướu y@w3
  675. ưởu y@w4
  676. ưỡu y@w5
  677. ượu y@w6
  678. .group ừ
  679. ừ y2
  680. ừi yI2
  681. ừa y@2
  682. ừu y2w2
  683. .group ứ
  684. ứ y3
  685. ứi yI3
  686. ứa y@3
  687. ứu y3w3
  688. .group ử
  689. ử y4
  690. ửi yI4
  691. ửa y@4
  692. ửu y4w4
  693. .group ữ
  694. ữ y5
  695. ữi yI5
  696. ữa y@5
  697. ữu y5w5
  698. .group ự
  699. ự y6
  700. ựi yI6
  701. ựa y@6
  702. ựu y6w6
  703. //=============================
  704. .group y
  705. y i
  706. // y (A j
  707. ya i@
  708. yà i@2
  709. yá i@3
  710. yả i@4
  711. yã i@5
  712. yạ i@6
  713. yê i@
  714. yề i@2
  715. yế i@3
  716. yể i@4
  717. yễ i@5
  718. yệ i@6
  719. // yêu i@U
  720. y (L01 _^_EN
  721. bu) y _^_EN
  722. .group ỳ
  723. ỳ i2
  724. ỳ (A j2
  725. ỳa i@2
  726. .group ý
  727. ý i3
  728. ý (A j3
  729. ýa i@3
  730. .group ỷ
  731. ỷ i4
  732. ỷ (A j4
  733. ỷa i@4
  734. .group ỹ
  735. ỹ i5
  736. ỹ (A j5
  737. ỹa i@5
  738. .group ỵ
  739. ỵ i6
  740. ỵ (A j6
  741. ỵa i@6
  742. //=============================
  743. .group 0xce // Greek letters
  744. // 0xce is the first byte of the utf-8 code for these characters
  745. α a:1n_|f'a:1
  746. ά a:1n_|f'a:1
  747. β b'e1_|t['a:1
  748. γ Q'a:1_|m'a:1
  749. δ J'E1n_|t['a:1
  750. ε E1p_|s'i1_|l'O1n
  751. έ E1p_|s'i1_|l'O1n
  752. ζ D'e1_|t['a:1
  753. η e1_|t['a:1
  754. ή e1_|t['a:1
  755. θ t'e1_|t['a:1
  756. ι i1_|'o1_|t['a:1
  757. ί i1_|'o1_|t['a:1
  758. κ k'a:1p_|p'a:1
  759. λ l'a1m_|_d'a:1
  760. μ mw'i1
  761. ν nw'i1
  762. ξ s'i7
  763. ο o1_|m'i1_|kz.'O7n
  764. .group 0xcf // Greek letters
  765. π p'i1
  766. ρ z.'o1
  767. σ s'i3c_|m'a:1
  768. ς s'i3c_|m'a:1
  769. τ t['o1
  770. υ u1p_|s'i1_|l'O1n
  771. ύ u1p_|s'i1_|l'O1n
  772. φ f'i1
  773. χ c'i1
  774. ψ ps'i1
  775. ω o1_|m'e1_|Q'a:7
  776. ώ o1_|m'e1_|Q'a:7
  777. ό o1_|m'i1_|kz.'O7n
  778. .group
  779. % f'@2n||cr'am
  780. ! _:c'@3m_|t'a:7n_:
  781. ! (\!
  782. // : koUl@n
  783. D_) h (_DD_ D'@:2 // omit colon in time, eg: 2:30
  784. $ d'o||l'a
  785. != x'o#_|_b'a2N_
  786. >= l'@:3n_|h'@:1n_|hw,a6kh_b'a2N
  787. <= n^'O4_|h'@:1n_|hw,a6kh_b'a2N
  788. __) - (_D cr'y2
  789. A_) - (_D _
  790. C_) - (_D _
  791. . c'@3m_
  792. . (. _:
  793. \.) .