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

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