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 14KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758
  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. .group b
  67. b b
  68. _) b _b
  69. .group c
  70. c g //k
  71. c (_ kh
  72. ch c // try [tS;] [tS] [c]
  73. .group d
  74. d J^ // try [z] [J] [dZ] [dZ;] [J^]
  75. .group đ
  76. đ d
  77. _) đ _d
  78. .group f
  79. f f
  80. .group g
  81. g Q // try [g] [Q]
  82. gh Q // or [g] [Q]
  83. //g (i J^ // try [D] [z] [j] [J^] [z;] [J] [dZ]
  84. //g (ì J^
  85. //g (í J^
  86. //g (ỉ J^
  87. //g (ĩ J^
  88. //g (ị J^
  89. gi J^
  90. ?1 giết J^'iE3g
  91. giết J^'iE3t[
  92. giếc J^'iE3kh
  93. ?1 giệt J^'iE6g
  94. giệt J^'iE6t[
  95. giệc J^'iE6kh
  96. .group h
  97. h h
  98. .group j
  99. j Z
  100. .group k
  101. k k
  102. k (_ kh
  103. kh x
  104. .group l
  105. l l
  106. .group m
  107. m m
  108. .group n
  109. n n
  110. ?1 n (_ N //n
  111. ng N
  112. ngh N
  113. nh n^
  114. .group ñ
  115. ñ n^
  116. .group p
  117. p p
  118. ph f
  119. .group q
  120. q k
  121. q (_ kh
  122. qu w //kw
  123. .group r
  124. r z. // try [z] [z.] [r] [z;]
  125. .group s
  126. s s. // try [s.] [s] [S]
  127. .group t
  128. t t[
  129. ?1 t (_ g
  130. th t
  131. tr cr // try [cr] [tr] [tS;] [tS] [c] [dZ] [dz;]
  132. .group v
  133. v v
  134. .group w
  135. w w
  136. .group x
  137. x s
  138. .group z
  139. z z
  140. //================================
  141. // Vowels
  142. //================================
  143. .group a
  144. a a:
  145. ai a:I
  146. aì a:I2
  147. aí a:I3
  148. aỉ a:I4
  149. aĩ a:I5
  150. aị a:I6
  151. ay aI
  152. aỳ aI2
  153. aý aI3
  154. aỷ aI4
  155. aỹ aI5
  156. aỵ aI6
  157. ao a:U
  158. aò a:U2
  159. aó a:U3
  160. aỏ a:U4
  161. aõ a:U5
  162. aọ a:U6
  163. au aU
  164. aù aU2
  165. aú aU3
  166. aủ aU4
  167. aũ aU5
  168. aụ aU6
  169. .group à
  170. à a:2
  171. ài a:I2
  172. ày aI2
  173. ào a:U2
  174. àu aU2
  175. .group á
  176. á a:3
  177. ái a:I3
  178. áy aI3
  179. áo a:U3
  180. áu aU3
  181. .group ả
  182. ả a:4
  183. ải a:I4
  184. ảy aI4
  185. ảo a:U4
  186. ảu aU4
  187. .group ã
  188. ã a:5
  189. ãi a:I5
  190. ãy aI5
  191. ão a:U5
  192. ãu aU5
  193. .group ạ
  194. ạ a:6
  195. ại a:I6
  196. ạy aI6
  197. ạo a:U6
  198. ạu aU6
  199. //================================
  200. .group ă
  201. ă a
  202. .group ằ
  203. ằ a2
  204. .group ắ
  205. ắ a3
  206. .group ẳ
  207. ẳ a4
  208. .group ẵ
  209. ẵ a5
  210. .group ặ
  211. ặ a6
  212. //=================================
  213. .group â
  214. â @
  215. ây @I
  216. âu @U1
  217. .group ầ
  218. ầ @2
  219. ầy @I2
  220. ầu @U2
  221. .group ấ
  222. ấ @3
  223. ấy @I3
  224. ấu @U3
  225. .group ẩ
  226. ẩ @4
  227. ẩy @I4
  228. ẩu @U4
  229. .group ẫ
  230. ẫ @5
  231. ẫy @I5
  232. ẫu @U5
  233. .group ậ
  234. ậ @6
  235. ậy @I6
  236. ậu @U6
  237. //===========================
  238. .group e
  239. e E
  240. eo EU
  241. eò EU2
  242. eó EU3
  243. eỏ EU4
  244. eỗ EU5
  245. eọ EU6
  246. .group è
  247. è E2
  248. èo EU2
  249. .group é
  250. é E3
  251. éo EU3
  252. .group ẻ
  253. ẻ E4
  254. ẻo EU4
  255. .group ẽ
  256. ẽ E5
  257. ẽo EU5
  258. .group ẹ
  259. ẹ E6
  260. ẹo EU6
  261. //============================
  262. .group ê
  263. ê e
  264. êu eU1
  265. .group ề
  266. ề e2
  267. ều eU2
  268. .group ế
  269. ế e3
  270. ếu eU3
  271. .group ể
  272. ể e4
  273. ểu eU4
  274. .group ễ
  275. ễ e5
  276. ễu eU5
  277. .group ệ
  278. ệ e6
  279. ệu eU6
  280. //============================
  281. .group i
  282. i i
  283. i (A j
  284. ia i@
  285. ià i@2
  286. iá i@3
  287. iả i@4
  288. iã i@5
  289. iạ i@6
  290. iê iE
  291. iề iE2
  292. iế iE3
  293. iể iE4
  294. iễ iE5
  295. iệ iE6
  296. iu iU
  297. iù iU2
  298. iú iU3
  299. iủ iU4
  300. iũ iU5
  301. iụ iU6
  302. iêu iU
  303. iều iU2
  304. iếu iU3
  305. iểu iU4
  306. iễu iU5
  307. iệu iU6
  308. .group ì
  309. ì i2
  310. ì (A j2
  311. ìa i@2
  312. ìu iU2
  313. .group í
  314. í i3
  315. í (A j3
  316. ía i@3
  317. íu iU3
  318. .group ỉ
  319. ỉ i4
  320. ỉ (A j4
  321. ỉa i@4
  322. ỉu iU4
  323. .group ĩ
  324. ĩ i5
  325. ĩ (A j5
  326. ĩa i@5
  327. ĩu iU5
  328. .group ị
  329. ị i6
  330. ị (A j6
  331. ịa i@6
  332. ịu iU6
  333. //=========================
  334. .group o
  335. o O
  336. oa o@ // modify oa sound example: hoa,khoa // o (A w
  337. oi OI
  338. oì OI2
  339. oí OI3
  340. oỉ OI4
  341. oĩ OI5
  342. oị OI6
  343. ong O#
  344. oe o& // Adding oe sound example: lóe sáng,toét mắt
  345. .group ò
  346. ò O2
  347. òi OI2
  348. òa o@2 //ò (A w2
  349. òng O#2
  350. òe o&2
  351. .group ó
  352. ó O3
  353. ói OI3
  354. óa o@3 //ó (A w3
  355. óng O#3
  356. óe o&3
  357. .group ỏ
  358. ỏ O4
  359. ỏi OI4
  360. ỏa o@4 //ỏ (A w4
  361. ỏng O#4
  362. ỏe o&4
  363. .group õ
  364. õ O5
  365. õi OI5
  366. õa o@5 //õ (A w5
  367. õng O#5
  368. õe o&5
  369. .group ọ
  370. ọ O6
  371. ọi OI6
  372. ọa o@6 //ọ (A w6
  373. ọng O#6
  374. ọe o&6
  375. //=============================
  376. .group ô
  377. ô o
  378. ôi oI
  379. ông o# // ông sound
  380. .group ồ
  381. ồ o2
  382. ồi oI2
  383. ồng o#2
  384. .group ố
  385. ố o3
  386. ối oI3
  387. ống o#3
  388. .group ổ
  389. ổ o4
  390. ổi oI4
  391. ổng o#4
  392. .group ỗ
  393. ỗ o5
  394. ỗi oI5
  395. ỗng o#5
  396. .group ộ
  397. ộ o6
  398. ội oI6
  399. ộng o#6
  400. //=============================
  401. .group ơ
  402. ơ @:
  403. ơi @:I
  404. ơu @:U
  405. .group ờ
  406. ờ @:2
  407. ời @:I2
  408. ờu @:U2
  409. .group ớ
  410. ớ @:3
  411. ới @:I3
  412. ớu @:U3
  413. .group ở
  414. ở @:4
  415. ởi @:I4
  416. ởu @:U4
  417. .group ỡ
  418. ỡ @:5
  419. ỡi @:I5
  420. ỡu @:U5
  421. .group ợ
  422. ợ @:6
  423. ợi @:I6
  424. ợu @:U6
  425. //=============================
  426. .group u
  427. u u
  428. u (A w
  429. A) u w
  430. ui uI
  431. uì uI2
  432. uí uI3
  433. uỉ uI4
  434. uĩ uI5
  435. uị uI6
  436. ua u@
  437. uà u@2
  438. uá u@3
  439. uả u@4
  440. uã u@5
  441. uạ u@6
  442. uô u@
  443. uồ u@2
  444. uố u@3
  445. uổ u@4
  446. uỗ u@5
  447. uộ u@6
  448. uôi u@j
  449. uồi u@j2
  450. uối u@j3
  451. uổi u@j4
  452. uỗi u@j5
  453. uội u@j6
  454. //ung u#
  455. .group ù
  456. ù u2
  457. ù (A w2
  458. ùi uI2
  459. ùa u@2
  460. //ùng u#2
  461. .group ú
  462. ú u3
  463. ú (A w3
  464. úi uI3
  465. úa u@3
  466. //úng u#3
  467. .group ủ
  468. ủ u4
  469. ủ (A w4
  470. ủi uI4
  471. ủa u@4
  472. //ủng u#4
  473. .group ũ
  474. ũ u5
  475. ũ (A w5
  476. ũi uI5
  477. ũa u@5
  478. //ũng u#5
  479. .group ụ
  480. ụ u6
  481. ụ (A w6
  482. ụi uI6
  483. ụa u@6
  484. //ụng u#6
  485. //=============================
  486. .group ư
  487. ư y
  488. ưi yI
  489. ưa y@
  490. ươ y@
  491. ườ y@2
  492. ướ y@3
  493. ưở y@4
  494. ưỡ y@5
  495. ượ y@6
  496. ưu yw
  497. ươi y@j
  498. ười y@j2
  499. ưới y@j3
  500. ưởi y@j4
  501. ưỡi y@j5
  502. ượi y@j6
  503. ươu y@w
  504. ườu y@w2
  505. ướu y@w3
  506. ưởu y@w4
  507. ưỡu y@w5
  508. ượu y@w6
  509. .group ừ
  510. ừ y2
  511. ừi yI2
  512. ừa y@2
  513. ừu yw2
  514. .group ứ
  515. ứ y3
  516. ứi yI3
  517. ứa y@3
  518. ứu yw3
  519. .group ử
  520. ử y4
  521. ửi yI4
  522. ửa y@4
  523. ửu yw4
  524. .group ữ
  525. ữ y5
  526. ữi yI5
  527. ữa y@5
  528. ữu yw5
  529. .group ự
  530. ự y6
  531. ựi yI6
  532. ựa y@6
  533. ựu yw6
  534. .group y
  535. y i
  536. y (A j
  537. ya i@
  538. yà i@2
  539. yá i@3
  540. yả i@4
  541. yã i@5
  542. yạ i@6
  543. yê i@
  544. yề i@2
  545. yế i@3
  546. yể i@4
  547. yễ i@5
  548. yệ i@6
  549. // yêu i@U
  550. .group ỳ
  551. ỳ i2
  552. ỳ (A j2
  553. ỳa i@2
  554. .group ý
  555. ý i3
  556. ý (A j3
  557. ýa i@3
  558. .group ỷ
  559. ỷ i4
  560. ỷ (A j4
  561. ỷa i@4
  562. .group ỹ
  563. ỹ i5
  564. ỹ (A j5
  565. ỹa i@5
  566. .group ỵ
  567. ỵ i6
  568. ỵ (A j6
  569. ỵa i@6
  570. .group 0xce // Greek letters
  571. // 0xce is the first byte of the utf-8 code for these characters
  572. α a:1n_|f'a:1
  573. ά a:1n_|f'a:1
  574. β b'e1_|t['a:1
  575. γ Q'a:1_|m'a:1
  576. δ J'E1n_|t['a:1
  577. ε E1p_|s'i1_|l'O1n
  578. έ E1p_|s'i1_|l'O1n
  579. ζ D'e1_|t['a:1
  580. η e1_|t['a:1
  581. ή e1_|t['a:1
  582. θ t'e1_|t['a:1
  583. ι i1_|'o1_|t['a:1
  584. ί i1_|'o1_|t['a:1
  585. κ k'a:1p_|p'a:1
  586. λ l'a1m_|_d'a:1
  587. μ mw'i1
  588. ν nw'i1
  589. ξ s'i7
  590. ο o1_|m'i1_|kz.'O7n
  591. .group 0xcf // Greek letters
  592. π p'i1
  593. ρ z.'o1
  594. σ s'i3c_|m'a:1
  595. ς s'i3c_|m'a:1
  596. τ t['o1
  597. υ u1p_|s'i1_|l'O1n
  598. ύ u1p_|s'i1_|l'O1n
  599. φ f'i1
  600. χ c'i1
  601. ψ ps'i1
  602. ω o1_|m'e1_|Q'a:7
  603. ώ o1_|m'e1_|Q'a:7
  604. ό o1_|m'i1_|kz.'O7n
  605. .group
  606. % f'@2n||cr'am
  607. ! _:c'@3m_|t'a:7n_:
  608. ! (\!
  609. // : koUl@n
  610. D_) h (_DD_ D'@:2 // omit colon in time, eg: 2:30
  611. $ d'o||l'a
  612. != x'o#_|_b'a2N_
  613. >= l'@:3n_|h'@:1n_|hw,a6kh_b'a2N
  614. <= n^'O4_|h'@:1n_|hw,a6kh_b'a2N
  615. __) - (_D cr'y2
  616. A_) - (_D _
  617. C_) - (_D _
  618. . c'@3m_
  619. . (. _:
  620. \.) .