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

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