scriptconv 0.0.4a35__tar.gz → 0.0.4a36__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (529) hide show
  1. {scriptconv-0.0.4a35/scriptconv.egg-info → scriptconv-0.0.4a36}/PKG-INFO +2 -1
  2. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/pyproject.toml +1 -1
  3. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/base.py +110 -1
  4. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/registry.py +5 -1
  5. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/version.py +1 -1
  6. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36/scriptconv.egg-info}/PKG-INFO +2 -1
  7. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv.egg-info/SOURCES.txt +1 -0
  8. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv.egg-info/requires.txt +1 -0
  9. scriptconv-0.0.4a36/tests/test_phonemizers_punctuation.py +175 -0
  10. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/LICENSE +0 -0
  11. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/README.md +0 -0
  12. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/requirements.txt +0 -0
  13. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/__init__.py +0 -0
  14. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/__main__.py +0 -0
  15. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/cangjie.py +0 -0
  16. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/conventions.py +0 -0
  17. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/data/__init__.py +0 -0
  18. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/data/cangjie5_tc.tsv.gz +0 -0
  19. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/diacritics.py +0 -0
  20. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/graph.py +0 -0
  21. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/notation.py +0 -0
  22. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/__init__.py +0 -0
  23. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/__init__.py +0 -0
  24. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/bw2ipa.py +0 -0
  25. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/hangul2ipa.py +0 -0
  26. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/ko_tables/aspiration.csv +0 -0
  27. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/ko_tables/assimilation.csv +0 -0
  28. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/ko_tables/double_coda.csv +0 -0
  29. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/ko_tables/hanja.tsv +0 -0
  30. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/ko_tables/ipa.csv +0 -0
  31. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/ko_tables/neutralization.csv +0 -0
  32. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/ko_tables/tensification.csv +0 -0
  33. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/ko_tables/yale.csv +0 -0
  34. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/__init__.py +0 -0
  35. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/codeswitch.py +0 -0
  36. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/diacritize.py +0 -0
  37. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/dialectal.py +0 -0
  38. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/english_g2p.py +0 -0
  39. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/espeak.py +0 -0
  40. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/frontend.py +0 -0
  41. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/levantine_g2p.py +0 -0
  42. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/normalize.py +0 -0
  43. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/shami/phoneme_inventory.py +0 -0
  44. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/vosk_g2p.py +0 -0
  45. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_thirdparty/zh_num.py +0 -0
  46. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/__init__.py +0 -0
  47. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/DATA_LICENSE.md +0 -0
  48. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/LICENSE.md +0 -0
  49. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/__init__.py +0 -0
  50. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/cli.py +0 -0
  51. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/convert.py +0 -0
  52. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/data/ipa_universal_graphemes.json +0 -0
  53. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/data/registry.json +0 -0
  54. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/english.py +0 -0
  55. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/fallback.py +0 -0
  56. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/g2p.py +0 -0
  57. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/aar.json +0 -0
  58. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/abi.json +0 -0
  59. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/acd.json +0 -0
  60. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ach.json +0 -0
  61. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/acz.json +0 -0
  62. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ada.json +0 -0
  63. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ade.json +0 -0
  64. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/adj.json +0 -0
  65. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/aeb.json +0 -0
  66. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ael.json +0 -0
  67. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/afr.json +0 -0
  68. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ags.json +0 -0
  69. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/aha.json +0 -0
  70. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/aiw.json +0 -0
  71. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ajg.json +0 -0
  72. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/akp.json +0 -0
  73. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/aks.json +0 -0
  74. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/aku.json +0 -0
  75. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/alz.json +0 -0
  76. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/amb.json +0 -0
  77. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/amf.json +0 -0
  78. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/amh.json +0 -0
  79. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/anc.json +0 -0
  80. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ank.json +0 -0
  81. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ann.json +0 -0
  82. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/any.json +0 -0
  83. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/apd.json +0 -0
  84. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ara.json +0 -0
  85. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/arb.json +0 -0
  86. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ary.json +0 -0
  87. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/arz.json +0 -0
  88. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ato.json +0 -0
  89. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/avi.json +0 -0
  90. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/avn.json +0 -0
  91. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/avu.json +0 -0
  92. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ayb.json +0 -0
  93. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/azo.json +0 -0
  94. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bam.json +0 -0
  95. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bas.json +0 -0
  96. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bav.json +0 -0
  97. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bax.json +0 -0
  98. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bba.json +0 -0
  99. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bbq.json +0 -0
  100. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bci.json +0 -0
  101. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bcq.json +0 -0
  102. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bde.json +0 -0
  103. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bdj.json +0 -0
  104. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bdu.json +0 -0
  105. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bec.json +0 -0
  106. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/beh.json +0 -0
  107. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bej.json +0 -0
  108. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bem.json +0 -0
  109. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bex.json +0 -0
  110. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bfa.json +0 -0
  111. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bfj.json +0 -0
  112. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bfm.json +0 -0
  113. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bhy.json +0 -0
  114. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bib.json +0 -0
  115. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bim.json +0 -0
  116. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bin.json +0 -0
  117. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bjo.json +0 -0
  118. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bjt.json +0 -0
  119. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bkc.json +0 -0
  120. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bkm.json +0 -0
  121. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bky.json +0 -0
  122. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ble.json +0 -0
  123. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/blm.json +0 -0
  124. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bng.json +0 -0
  125. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bni.json +0 -0
  126. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bol.json +0 -0
  127. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bom.json +0 -0
  128. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bot.json +0 -0
  129. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/boy.json +0 -0
  130. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/boz.json +0 -0
  131. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bqj.json +0 -0
  132. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bqp.json +0 -0
  133. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bqx.json +0 -0
  134. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bsc.json +0 -0
  135. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bsq.json +0 -0
  136. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/buc.json +0 -0
  137. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bud.json +0 -0
  138. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/buf.json +0 -0
  139. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bum.json +0 -0
  140. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bva.json +0 -0
  141. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bvm.json +0 -0
  142. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bwj.json +0 -0
  143. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bxk.json +0 -0
  144. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/byn.json +0 -0
  145. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/byv.json +0 -0
  146. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/bza.json +0 -0
  147. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/cgg.json +0 -0
  148. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/cjk.json +0 -0
  149. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/cko.json +0 -0
  150. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/cme.json +0 -0
  151. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/cop.json +0 -0
  152. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/daa.json +0 -0
  153. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/daf.json +0 -0
  154. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dag.json +0 -0
  155. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dbq.json +0 -0
  156. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dec.json +0 -0
  157. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dgd.json +0 -0
  158. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/did.json +0 -0
  159. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/din.json +0 -0
  160. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dmf.json +0 -0
  161. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dnj.json +0 -0
  162. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dop-benin.json +0 -0
  163. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dop-benin2.json +0 -0
  164. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dow.json +0 -0
  165. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dsh.json +0 -0
  166. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dua.json +0 -0
  167. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dug.json +0 -0
  168. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dyo.json +0 -0
  169. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dyu.json +0 -0
  170. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/dzd.json +0 -0
  171. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ebo.json +0 -0
  172. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ebr.json +0 -0
  173. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/efi.json +0 -0
  174. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ell.json +0 -0
  175. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ema.json +0 -0
  176. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/emk.json +0 -0
  177. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/eng.json +0 -0
  178. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/enn.json +0 -0
  179. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/etn.json +0 -0
  180. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/eto.json +0 -0
  181. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ewe.json +0 -0
  182. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ewo.json +0 -0
  183. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/fak.json +0 -0
  184. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/fat.json +0 -0
  185. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ffm.json +0 -0
  186. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/fia.json +0 -0
  187. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/flr.json +0 -0
  188. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/fmp.json +0 -0
  189. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/fng.json +0 -0
  190. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/fod.json +0 -0
  191. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/fon.json +0 -0
  192. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/fuc.json +0 -0
  193. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/fue.json +0 -0
  194. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gaa.json +0 -0
  195. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gej.json +0 -0
  196. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gez.json +0 -0
  197. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gfe.json +0 -0
  198. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gha.json +0 -0
  199. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gho.json +0 -0
  200. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gjn.json +0 -0
  201. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gng.json +0 -0
  202. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/god.json +0 -0
  203. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gog.json +0 -0
  204. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gou.json +0 -0
  205. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/grb.json +0 -0
  206. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/grr.json +0 -0
  207. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gud.json +0 -0
  208. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/guk.json +0 -0
  209. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gur.json +0 -0
  210. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gux.json +0 -0
  211. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/guz.json +0 -0
  212. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gwa.json +0 -0
  213. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gwd.json +0 -0
  214. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gwr.json +0 -0
  215. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/gxx.json +0 -0
  216. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/hag.json +0 -0
  217. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/har.json +0 -0
  218. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/hau-niger.json +0 -0
  219. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/hau-nigeria.json +0 -0
  220. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/hay.json +0 -0
  221. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/hdy.json +0 -0
  222. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/hts.json +0 -0
  223. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ibo.json +0 -0
  224. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/igb.json +0 -0
  225. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ige.json +0 -0
  226. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/igl.json +0 -0
  227. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/igo.json +0 -0
  228. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ikw.json +0 -0
  229. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/irk.json +0 -0
  230. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/iso.json +0 -0
  231. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/jib.json +0 -0
  232. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kab.json +0 -0
  233. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kbo.json +0 -0
  234. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kbp.json +0 -0
  235. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kbr.json +0 -0
  236. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kcn.json +0 -0
  237. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kde.json +0 -0
  238. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kdh.json +0 -0
  239. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kdj.json +0 -0
  240. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kdn.json +0 -0
  241. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kdx.json +0 -0
  242. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kea.json +0 -0
  243. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kec.json +0 -0
  244. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ker.json +0 -0
  245. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/khq.json +0 -0
  246. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/khy.json +0 -0
  247. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kik.json +0 -0
  248. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kin.json +0 -0
  249. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kiz.json +0 -0
  250. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kmb.json +0 -0
  251. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/knc.json +0 -0
  252. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/knf.json +0 -0
  253. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/koo.json +0 -0
  254. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kpe.json +0 -0
  255. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kqs.json +0 -0
  256. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/krb.json +0 -0
  257. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kri.json +0 -0
  258. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ksb.json +0 -0
  259. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ktz.json +0 -0
  260. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kuj.json +0 -0
  261. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/kus.json +0 -0
  262. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lad.json +0 -0
  263. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lai.json +0 -0
  264. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lch.json +0 -0
  265. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ldd.json +0 -0
  266. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lgg.json +0 -0
  267. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lgq.json +0 -0
  268. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lig.json +0 -0
  269. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lin.json +0 -0
  270. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lky.json +0 -0
  271. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lln.json +0 -0
  272. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lma.json +0 -0
  273. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lmd.json +0 -0
  274. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lmp.json +0 -0
  275. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lns.json +0 -0
  276. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/loi.json +0 -0
  277. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lok.json +0 -0
  278. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lol.json +0 -0
  279. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lot.json +0 -0
  280. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lpx.json +0 -0
  281. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lub.json +0 -0
  282. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/luc.json +0 -0
  283. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lue.json +0 -0
  284. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lug.json +0 -0
  285. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lul.json +0 -0
  286. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/lun.json +0 -0
  287. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/luw.json +0 -0
  288. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mas.json +0 -0
  289. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/maw.json +0 -0
  290. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mck.json +0 -0
  291. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mcp.json +0 -0
  292. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mcu.json +0 -0
  293. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mdj.json +0 -0
  294. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mev.json +0 -0
  295. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mfb.json +0 -0
  296. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mfe.json +0 -0
  297. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mfi.json +0 -0
  298. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mfq.json +0 -0
  299. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mgc.json +0 -0
  300. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mgd.json +0 -0
  301. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mgh.json +0 -0
  302. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mhi.json +0 -0
  303. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mkf.json +0 -0
  304. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mkw.json +0 -0
  305. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mlg.json +0 -0
  306. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mlw.json +0 -0
  307. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mmo.json +0 -0
  308. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mmy.json +0 -0
  309. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mnf.json +0 -0
  310. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mnk.json +0 -0
  311. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mos.json +0 -0
  312. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mpg.json +0 -0
  313. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mqu.json +0 -0
  314. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mse.json +0 -0
  315. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mur.json +0 -0
  316. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mwe.json +0 -0
  317. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/myf.json +0 -0
  318. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/myk.json +0 -0
  319. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/myo.json +0 -0
  320. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/myx.json +0 -0
  321. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/mzk.json +0 -0
  322. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/naw.json +0 -0
  323. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nba.json +0 -0
  324. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ncu.json +0 -0
  325. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ndb.json +0 -0
  326. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ndo.json +0 -0
  327. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ney.json +0 -0
  328. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nfr.json +0 -0
  329. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nga.json +0 -0
  330. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ngb-zaire.json +0 -0
  331. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ngb-zaire2.json +0 -0
  332. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ngh.json +0 -0
  333. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ngi.json +0 -0
  334. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nhb.json +0 -0
  335. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nhu.json +0 -0
  336. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nhw.json +0 -0
  337. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nko.json +0 -0
  338. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nmn.json +0 -0
  339. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nmq.json +0 -0
  340. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nnb.json +0 -0
  341. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nnh.json +0 -0
  342. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nnw.json +0 -0
  343. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nqo.json +0 -0
  344. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nso.json +0 -0
  345. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nuj.json +0 -0
  346. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nup.json +0 -0
  347. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nus.json +0 -0
  348. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nwb.json +0 -0
  349. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nya.json +0 -0
  350. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nym.json +0 -0
  351. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nzd.json +0 -0
  352. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/nzi.json +0 -0
  353. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ogc.json +0 -0
  354. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/oku.json +0 -0
  355. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/onw.json +0 -0
  356. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/pae.json +0 -0
  357. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/pbi.json +0 -0
  358. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/pny.json +0 -0
  359. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/pov.json +0 -0
  360. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/puu.json +0 -0
  361. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/pze.json +0 -0
  362. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/rel.json +0 -0
  363. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/rmt.json +0 -0
  364. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/rng.json +0 -0
  365. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/run.json +0 -0
  366. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sad.json +0 -0
  367. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sag-central_african_republic.json +0 -0
  368. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sag-congo.json +0 -0
  369. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sav.json +0 -0
  370. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sef-cote_d_ivoire.json +0 -0
  371. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sef-cote_d_ivoire2.json +0 -0
  372. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/seh.json +0 -0
  373. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/she.json +0 -0
  374. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/shk.json +0 -0
  375. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/shu.json +0 -0
  376. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/shy.json +0 -0
  377. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sig.json +0 -0
  378. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/siz.json +0 -0
  379. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sld.json +0 -0
  380. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sna.json +0 -0
  381. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/snk-senegal.json +0 -0
  382. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/snk.json +0 -0
  383. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sok.json +0 -0
  384. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sop.json +0 -0
  385. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/spa.json +0 -0
  386. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/spy.json +0 -0
  387. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ssl.json +0 -0
  388. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ssn.json +0 -0
  389. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ssw.json +0 -0
  390. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/suk.json +0 -0
  391. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sur.json +0 -0
  392. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sus.json +0 -0
  393. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/swb.json +0 -0
  394. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/swh.json +0 -0
  395. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/sym.json +0 -0
  396. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/szg.json +0 -0
  397. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tan.json +0 -0
  398. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/taq.json +0 -0
  399. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/taz.json +0 -0
  400. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tbt.json +0 -0
  401. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tbz.json +0 -0
  402. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ted.json +0 -0
  403. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tem.json +0 -0
  404. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/teo.json +0 -0
  405. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/thv.json +0 -0
  406. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/thz.json +0 -0
  407. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tig.json +0 -0
  408. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tik.json +0 -0
  409. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tir.json +0 -0
  410. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tmc.json +0 -0
  411. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tnr.json +0 -0
  412. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/toh.json +0 -0
  413. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/toq.json +0 -0
  414. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/trc.json +0 -0
  415. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tsc.json +0 -0
  416. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tso.json +0 -0
  417. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tsp.json +0 -0
  418. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ttq.json +0 -0
  419. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tui.json +0 -0
  420. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tum.json +0 -0
  421. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tuq.json +0 -0
  422. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tuz.json +0 -0
  423. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/twi.json +0 -0
  424. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/tzm.json +0 -0
  425. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/uba.json +0 -0
  426. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/udu.json +0 -0
  427. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ukv.json +0 -0
  428. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/urh.json +0 -0
  429. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/vag.json +0 -0
  430. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/vai.json +0 -0
  431. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ven.json +0 -0
  432. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/vmw.json +0 -0
  433. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/vut.json +0 -0
  434. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/wan.json +0 -0
  435. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/wib.json +0 -0
  436. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/wmw.json +0 -0
  437. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/wob.json +0 -0
  438. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/wol.json +0 -0
  439. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/wwa.json +0 -0
  440. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/xho.json +0 -0
  441. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/xog.json +0 -0
  442. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/xon.json +0 -0
  443. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/xrb.json +0 -0
  444. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/xsm.json +0 -0
  445. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/yam.json +0 -0
  446. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/yat.json +0 -0
  447. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ybb.json +0 -0
  448. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/yid.json +0 -0
  449. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/yko.json +0 -0
  450. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/yor.json +0 -0
  451. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/yun.json +0 -0
  452. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/zag.json +0 -0
  453. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/zen.json +0 -0
  454. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/ziw.json +0 -0
  455. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/zne.json +0 -0
  456. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/languages/zul.json +0 -0
  457. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/loader.py +0 -0
  458. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/normalizer.py +0 -0
  459. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/africa_g2p/pipeline.py +0 -0
  460. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/iqra_phonetiser/LICENSE.md +0 -0
  461. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/iqra_phonetiser/__init__.py +0 -0
  462. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/iqra_phonetiser/phonetiser.py +0 -0
  463. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/kog2p/LICENSE.md +0 -0
  464. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/kog2p/__init__.py +0 -0
  465. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/kog2p/rulebook.txt +0 -0
  466. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/mantoq/LICENSE.md +0 -0
  467. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/mantoq/__init__.py +0 -0
  468. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/mantoq/buck/__init__.py +0 -0
  469. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/mantoq/buck/phonetise_buckwalter.py +0 -0
  470. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/mantoq/buck/symbols.py +0 -0
  471. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/mantoq/buck/tokenization.py +0 -0
  472. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/mantoq/num2words.py +0 -0
  473. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/mantoq/unicode_symbol2label.py +0 -0
  474. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/_vendored/matoub_kab/__init__.py +0 -0
  475. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/africa.py +0 -0
  476. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/ar.py +0 -0
  477. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/ber.py +0 -0
  478. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/en.py +0 -0
  479. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/enums.py +0 -0
  480. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/eu.py +0 -0
  481. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/fa.py +0 -0
  482. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/ghana.py +0 -0
  483. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/gl.py +0 -0
  484. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/he.py +0 -0
  485. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/ja.py +0 -0
  486. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/ko.py +0 -0
  487. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/mul.py +0 -0
  488. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/mwl.py +0 -0
  489. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/o2ipa.py +0 -0
  490. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/pt.py +0 -0
  491. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/ru.py +0 -0
  492. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/shami.py +0 -0
  493. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/vi.py +0 -0
  494. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/phonemizers/zh.py +0 -0
  495. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/py.typed +0 -0
  496. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/readings.py +0 -0
  497. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/scripts.py +0 -0
  498. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv/translit.py +0 -0
  499. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv.egg-info/dependency_links.txt +0 -0
  500. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/scriptconv.egg-info/top_level.txt +0 -0
  501. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/setup.cfg +0 -0
  502. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_arpa_stress.py +0 -0
  503. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_cangjie.py +0 -0
  504. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_cli.py +0 -0
  505. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_conventions.py +0 -0
  506. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_diacritics.py +0 -0
  507. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_diacritics_graph.py +0 -0
  508. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_errors_policy.py +0 -0
  509. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_espeak_get_lang_case.py +0 -0
  510. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_examples.py +0 -0
  511. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_graph.py +0 -0
  512. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_he_extra_declares_phonikud.py +0 -0
  513. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_notation.py +0 -0
  514. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_africa.py +0 -0
  515. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_base.py +0 -0
  516. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_cjk_ar.py +0 -0
  517. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_friendly_import_errors.py +0 -0
  518. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_ghana.py +0 -0
  519. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_halabi_iqra.py +0 -0
  520. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_matoub_kab.py +0 -0
  521. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_phonetisaurus.py +0 -0
  522. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_phonetisaurus_engine.py +0 -0
  523. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_pt_tugaphone.py +0 -0
  524. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_phonemizers_ru.py +0 -0
  525. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_readings.py +0 -0
  526. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_readings_zh.py +0 -0
  527. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_scripts.py +0 -0
  528. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_scripts_stressonnx_compat.py +0 -0
  529. {scriptconv-0.0.4a35 → scriptconv-0.0.4a36}/tests/test_translit.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: scriptconv
3
- Version: 0.0.4a35
3
+ Version: 0.0.4a36
4
4
  Summary: Zero-dependency script & phoneme-notation core — ISO-15924 detection & metadata, IPA↔ARPABET/X-SAMPA/Lexique/Kirshenbaum/Cotovía/RFE, Buckwalter↔Arabic, Hangul→jamo, kana
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://github.com/TigreGotico/scriptconv
@@ -133,6 +133,7 @@ Requires-Dist: bifonia>=0.1.1; extra == "test"
133
133
  Requires-Dist: stressonnx>=0.0.3a2; extra == "test"
134
134
  Requires-Dist: tugaphone>=1.2.0a1; extra == "test"
135
135
  Requires-Dist: ghana-g2p>=0.1.1; extra == "test"
136
+ Requires-Dist: espyak; extra == "test"
136
137
  Requires-Dist: tomli; python_version < "3.11" and extra == "test"
137
138
  Dynamic: license-file
138
139
 
@@ -63,7 +63,7 @@ zh-phonemizers = ["scriptconv[phonemizers]", "jieba", "pypinyin>=0.50,<1", "xpin
63
63
  en-phonemizers = ["scriptconv[phonemizers]", "g2p_en", "openphonemizer", "deep-phonemizer", "requests"]
64
64
  ar-phonemizers = ["scriptconv[phonemizers]", "arbtok", "ovos-number-parser"]
65
65
  shami = ["scriptconv[phonemizers]", "regex"]
66
- test = ["pytest", "pytest-timeout", "pykakasi>=2.3,<3", "pypinyin>=0.50,<1", "quebra-frases", "langcodes", "regex", "ovos-number-parser", "bifonia>=0.1.1", "stressonnx>=0.0.3a2", "tugaphone>=1.2.0a1", "ghana-g2p>=0.1.1", "tomli; python_version < '3.11'"]
66
+ test = ["pytest", "pytest-timeout", "pykakasi>=2.3,<3", "pypinyin>=0.50,<1", "quebra-frases", "langcodes", "regex", "ovos-number-parser", "bifonia>=0.1.1", "stressonnx>=0.0.3a2", "tugaphone>=1.2.0a1", "ghana-g2p>=0.1.1", "espyak", "tomli; python_version < '3.11'"]
67
67
 
68
68
  [project.urls]
69
69
  Homepage = "https://github.com/TigreGotico/scriptconv"
@@ -34,6 +34,52 @@ RawPhonemizedChunks = List[Tuple[str, str, bool]]
34
34
 
35
35
  PhonemizedChunks = list[list[str]]
36
36
 
37
+ # Clause punctuation kept by ``keep_punctuation``, mapped to the symbol a voice
38
+ # is trained on. These are the six clause types Piper appends after every
39
+ # espeak-ng clause (piper-phonemize ``src/phonemize.cpp``): a full stop,
40
+ # question mark and exclamation mark stand alone, a comma, colon and semicolon
41
+ # are followed by a space. Arabic script has its own comma, semicolon and
42
+ # question mark; they map onto the same symbols.
43
+ CLAUSE_PUNCTUATION = {".": ".", "?": "?", "!": "!", ",": ",", ":": ":", ";": ";",
44
+ "\u060c": ",", "\u061b": ";", "\u061f": "?"}
45
+ _PAUSE_PUNCTUATION = {",", ":", ";"}
46
+ # A clause ends at punctuation followed by whitespace, as in espeak-ng, so the
47
+ # "," in "10,4" or the ":" in "16:30" never splits. A lone "." is left to the
48
+ # sentence tokenizer, which knows abbreviations; inside a sentence an ellipsis
49
+ # or "|" still ends a clause, as in chunk_text, but carries no symbol (espeak-ng
50
+ # reads an ellipsis as a spoken-name pause, which Piper does not keep).
51
+ _CLAUSE_BREAK = re.compile(r"(?:\.\.+|\u2026|[,:;!?|\u060c\u061b\u061f])[^\w\s]*(?=\s)")
52
+ _TRAILING_PUNCTUATION = re.compile(r"[^\w\s]+\s*$")
53
+ _LANG_FLAGS = re.compile(r"\([^)]+\)")
54
+
55
+
56
+ def _clause_mark(punctuation: str) -> Optional[str]:
57
+ """The symbol a run of clause-final punctuation is kept as, if any."""
58
+ if ".." in punctuation or "\u2026" in punctuation:
59
+ return None
60
+ for char in punctuation:
61
+ if char in CLAUSE_PUNCTUATION:
62
+ return CLAUSE_PUNCTUATION[char]
63
+ return None
64
+
65
+
66
+ def split_clauses(sentence: str) -> List[Tuple[str, Optional[str]]]:
67
+ """Split one sentence into ``(clause, mark)`` pairs.
68
+
69
+ ``mark`` is the symbol from :data:`CLAUSE_PUNCTUATION` that ends the
70
+ clause, or ``None`` when the clause ends without one (no punctuation, an
71
+ ellipsis, ``|``). The clause text still carries its own punctuation.
72
+ """
73
+ clauses: List[Tuple[str, Optional[str]]] = []
74
+ start = 0
75
+ for match in _CLAUSE_BREAK.finditer(sentence):
76
+ clauses.append((sentence[start:match.start()], _clause_mark(match.group())))
77
+ start = match.end()
78
+ tail = sentence[start:]
79
+ trailing = _TRAILING_PUNCTUATION.search(tail)
80
+ clauses.append((tail, _clause_mark(trailing.group()) if trailing else None))
81
+ return clauses
82
+
37
83
 
38
84
  class MissingLanguageError(ValueError):
39
85
  """No language reached :meth:`BasePhonemizer.match_lang` at all.
@@ -75,6 +121,18 @@ def _check_alphabet(phonemizer, alphabet: Alphabet,
75
121
 
76
122
 
77
123
  class BasePhonemizer(metaclass=abc.ABCMeta):
124
+ keep_punctuation: bool = False
125
+ """Keep clause punctuation (``, . ? ! : ;``) in the phoneme output.
126
+
127
+ Off by default, so voices trained without punctuation receive exactly the
128
+ sequences they were trained on. When on, :meth:`phonemize_to_list` and
129
+ :meth:`phonemize_lazy` phonemize clause by clause and append each clause's
130
+ symbol the way Piper does, and the two return the same phonemes for the
131
+ same text. A backend that overrides either method owns its own output and
132
+ ignores this flag, since honouring it on one side only would make training
133
+ and synthesis disagree.
134
+ """
135
+
78
136
  def __init__(self, alphabet: Alphabet = Alphabet.UNICODE,
79
137
  normalizer: Optional[Callable[[str, str], str]] = None):
80
138
  super().__init__()
@@ -88,7 +146,17 @@ class BasePhonemizer(metaclass=abc.ABCMeta):
88
146
  raise NotImplementedError
89
147
 
90
148
  def phonemize_to_list(self, text: str, lang: str) -> List[str]:
91
- return list(self.phonemize_string(text, lang))
149
+ """Phonemes of *text* as one flat list, without normalization.
150
+
151
+ Clause breaks that a backend prints as ``"\\n"`` (espeak-ng does at
152
+ every comma, question mark and exclamation mark) are not phonemes and
153
+ are dropped; with :attr:`keep_punctuation` the clause's punctuation
154
+ takes their place.
155
+ """
156
+ if self._keeps_punctuation():
157
+ return [p for sentence in self._punctuated_sentences(text, lang)
158
+ for p in sentence]
159
+ return [p for p in self.phonemize_string(text, lang) if p != "\n"]
92
160
 
93
161
  def phonemize(self, text: str, lang: str) -> PhonemizedChunks:
94
162
  # PhonemizedChunks is list[list[str]]; empty text yields no
@@ -114,6 +182,9 @@ class BasePhonemizer(metaclass=abc.ABCMeta):
114
182
  return
115
183
  if self.normalizer is not None:
116
184
  text = self.normalizer(text, lang)
185
+ if self._keeps_punctuation():
186
+ yield from self._punctuated_sentences(text, lang)
187
+ return
117
188
  for chunk, punct, eos in self.chunk_text(text):
118
189
  phoneme_str = self.phonemize_string(self.remove_punctuation(chunk), lang)
119
190
  # Filter out (lang) switch (flags) that surround words from languages
@@ -123,6 +194,44 @@ class BasePhonemizer(metaclass=abc.ABCMeta):
123
194
  # its own sentence.
124
195
  yield list(phoneme_str)
125
196
 
197
+ def _keeps_punctuation(self) -> bool:
198
+ cls = type(self)
199
+ return (self.keep_punctuation
200
+ and cls.phonemize_to_list is BasePhonemizer.phonemize_to_list
201
+ and cls.phonemize_lazy is BasePhonemizer.phonemize_lazy)
202
+
203
+ def _punctuated_sentences(self, text: str, lang: str) -> Iterator[List[str]]:
204
+ """Per-sentence phonemes with each clause's punctuation appended.
205
+
206
+ Each clause is phonemized on its own with its punctuation removed, so
207
+ the backend sees the same words in training and in synthesis, and the
208
+ clause's symbol is appended after it: bare for ``. ? !``, followed by a
209
+ space for ``, : ;``.
210
+ """
211
+ try:
212
+ from quebra_frases import sentence_tokenize
213
+ except ImportError:
214
+ raise ImportError(
215
+ "sentence chunking needs quebra-frases — install with "
216
+ "`pip install scriptconv[phonemizers]`") from None
217
+ for sentence in sentence_tokenize(text):
218
+ phonemes: List[str] = []
219
+ for clause, mark in split_clauses(sentence):
220
+ clause = self.remove_punctuation(clause)
221
+ if not clause:
222
+ continue
223
+ phoneme_str = _LANG_FLAGS.sub("", self.phonemize_string(clause, lang))
224
+ clause_phonemes = [p for p in phoneme_str if p != "\n"]
225
+ if not clause_phonemes:
226
+ continue
227
+ phonemes.extend(clause_phonemes)
228
+ if mark:
229
+ phonemes.append(mark)
230
+ if mark in _PAUSE_PUNCTUATION:
231
+ phonemes.append(" ")
232
+ if phonemes:
233
+ yield phonemes
234
+
126
235
  @staticmethod
127
236
  def _process_phones(raw_phones: RawPhonemizedChunks) -> PhonemizedChunks:
128
237
  """Text to phonemes grouped by sentence."""
@@ -106,13 +106,15 @@ def get_phonemizer(phonemizer: Phonemizer,
106
106
 
107
107
  ``model`` is forwarded to model-backed phonemizers (ByT5/Charsiu/
108
108
  DeepPhonemizer); ``alphabet`` to those with a selectable output alphabet.
109
- Extra ``kwargs`` (e.g. ``normalizer=``) pass to the constructor.
109
+ Extra ``kwargs`` pass to the constructor, except ``normalizer=`` and
110
+ ``keep_punctuation=``, which are set on the instance.
110
111
  """
111
112
  phonemizer = Phonemizer(phonemizer)
112
113
  cls = get_phonemizer_class(phonemizer)
113
114
  # normalizer is a plain BasePhonemizer attribute; set it after
114
115
  # construction so wrapper __init__ signatures stay untouched
115
116
  normalizer = kwargs.pop("normalizer", None)
117
+ keep_punctuation = kwargs.pop("keep_punctuation", None)
116
118
  if phonemizer in (_P.BYT5, _P.CHARSIU, _P.DEEPPHONEMIZER):
117
119
  inst = cls(model, **kwargs)
118
120
  else:
@@ -131,6 +133,8 @@ def get_phonemizer(phonemizer: Phonemizer,
131
133
  inst = cls(**kwargs)
132
134
  if normalizer is not None:
133
135
  inst.normalizer = normalizer
136
+ if keep_punctuation is not None:
137
+ inst.keep_punctuation = keep_punctuation
134
138
  return inst
135
139
 
136
140
 
@@ -2,7 +2,7 @@
2
2
  VERSION_MAJOR = 0
3
3
  VERSION_MINOR = 0
4
4
  VERSION_BUILD = 4
5
- VERSION_ALPHA = 35
5
+ VERSION_ALPHA = 36
6
6
  # END_VERSION_BLOCK
7
7
 
8
8
  VERSION_STR = f"{VERSION_MAJOR}.{VERSION_MINOR}.{VERSION_BUILD}"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: scriptconv
3
- Version: 0.0.4a35
3
+ Version: 0.0.4a36
4
4
  Summary: Zero-dependency script & phoneme-notation core — ISO-15924 detection & metadata, IPA↔ARPABET/X-SAMPA/Lexique/Kirshenbaum/Cotovía/RFE, Buckwalter↔Arabic, Hangul→jamo, kana
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://github.com/TigreGotico/scriptconv
@@ -133,6 +133,7 @@ Requires-Dist: bifonia>=0.1.1; extra == "test"
133
133
  Requires-Dist: stressonnx>=0.0.3a2; extra == "test"
134
134
  Requires-Dist: tugaphone>=1.2.0a1; extra == "test"
135
135
  Requires-Dist: ghana-g2p>=0.1.1; extra == "test"
136
+ Requires-Dist: espyak; extra == "test"
136
137
  Requires-Dist: tomli; python_version < "3.11" and extra == "test"
137
138
  Dynamic: license-file
138
139
 
@@ -518,6 +518,7 @@ tests/test_phonemizers_matoub_kab.py
518
518
  tests/test_phonemizers_phonetisaurus.py
519
519
  tests/test_phonemizers_phonetisaurus_engine.py
520
520
  tests/test_phonemizers_pt_tugaphone.py
521
+ tests/test_phonemizers_punctuation.py
521
522
  tests/test_phonemizers_ru.py
522
523
  tests/test_readings.py
523
524
  tests/test_readings_zh.py
@@ -122,6 +122,7 @@ bifonia>=0.1.1
122
122
  stressonnx>=0.0.3a2
123
123
  tugaphone>=1.2.0a1
124
124
  ghana-g2p>=0.1.1
125
+ espyak
125
126
 
126
127
  [test:python_version < "3.11"]
127
128
  tomli
@@ -0,0 +1,175 @@
1
+ """Clause punctuation in phonemizer output.
2
+
3
+ By default no punctuation reaches the phonemes: voices trained that way must
4
+ keep receiving the sequences they learned. ``keep_punctuation`` opts in to the
5
+ Piper convention, where every clause is followed by its symbol (``. ? !`` bare,
6
+ ``, : ;`` followed by a space). Clause breaks that espeak-ng prints as ``"\\n"``
7
+ are never returned as phonemes, in either mode.
8
+
9
+ The espeak tests run against the espeak-ng binary when it is installed and
10
+ against the pure-Python espyak port otherwise, so they assert the punctuation
11
+ and its position, not the exact phonemes the two produce for the words.
12
+ """
13
+ import re
14
+
15
+ import pytest
16
+
17
+ from scriptconv.phonemizers import get_phonemizer
18
+ from scriptconv.phonemizers.base import BasePhonemizer
19
+ from scriptconv.phonemizers.enums import Phonemizer
20
+ from scriptconv.phonemizers.mul import EspeakPhonemizer
21
+
22
+ SONGS = "Songs near this quiet river every morning, number three."
23
+
24
+ MULTILINGUAL = {
25
+ "en-us": ["Songs near this quiet river every morning, number three.",
26
+ "Is it ready? Yes! We leave at 16:30; bring 10,4 kg... Mr. Smith said: \"fine\"."],
27
+ "pt": ["Olá, como estás? Eu estou bem! Vamos às 16:30; leva 10,4 kg."],
28
+ "es": ["¿Dónde está la biblioteca? ¡Allí, al lado del parque!"],
29
+ "de": ["Guten Morgen, wie geht es dir? Mir geht es gut!"],
30
+ "ar": ["مرحبا، كيف حالك؟ أنا بخير!"],
31
+ }
32
+
33
+
34
+ class CliLike(BasePhonemizer):
35
+ """Behaves like the espeak-ng CLI: drops punctuation, prints a newline at
36
+ every clause break, and nothing for a full stop."""
37
+
38
+ def phonemize_string(self, text, lang):
39
+ out = []
40
+ for char in text:
41
+ if char in ",?!;:":
42
+ out.append("\n")
43
+ elif char not in ".":
44
+ out.append(char.upper())
45
+ return "".join(out).strip()
46
+
47
+
48
+ @pytest.fixture
49
+ def espeak():
50
+ return EspeakPhonemizer()
51
+
52
+
53
+ def flat(sentences):
54
+ return [p for sentence in sentences for p in sentence]
55
+
56
+
57
+ class TestDefaultKeepsNoPunctuation:
58
+ def test_flag_is_off_by_default(self, espeak):
59
+ assert espeak.keep_punctuation is False
60
+ assert get_phonemizer(Phonemizer.ESPEAK).keep_punctuation is False
61
+
62
+ def test_no_punctuation_in_espeak_output(self, espeak):
63
+ for lang, texts in MULTILINGUAL.items():
64
+ for text in texts:
65
+ assert not set(",.?!:;") & set(espeak.phonemize_to_list(text, lang))
66
+ assert not set(",.?!:;") & set(flat(espeak.phonemize(text, lang)))
67
+
68
+ def test_clause_breaks_are_not_phonemes(self):
69
+ assert CliLike().phonemize_string("one, two? three", "en") == "ONE\n TWO\n THREE"
70
+ assert CliLike().phonemize_to_list("one, two? three", "en") == list("ONE TWO THREE")
71
+
72
+ def test_no_newline_from_espeak(self, espeak):
73
+ for lang, texts in MULTILINGUAL.items():
74
+ for text in texts:
75
+ assert "\n" not in espeak.phonemize_to_list(text, lang)
76
+
77
+ def test_default_matches_the_previous_definitions(self, espeak):
78
+ # phonemize_to_list was list(phonemize_string) and phonemize_lazy
79
+ # phonemized each chunk_text chunk with its punctuation removed; the
80
+ # default output is those, less the newline clause breaks
81
+ for lang, texts in MULTILINGUAL.items():
82
+ for text in texts:
83
+ raw = espeak.phonemize_string(text, lang)
84
+ assert espeak.phonemize_to_list(text, lang) == [p for p in raw if p != "\n"]
85
+ previous = [
86
+ list(re.sub(r"\([^)]+\)", "", espeak.phonemize_string(
87
+ espeak.remove_punctuation(chunk), lang)))
88
+ for chunk, _, _ in espeak.chunk_text(text)]
89
+ assert espeak.phonemize(text, lang) == previous
90
+ assert list(espeak.phonemize_lazy(text, lang)) == previous
91
+
92
+ def test_synthesis_path_is_unchanged(self):
93
+ # chunked, punctuation removed before the backend, no symbol appended
94
+ assert CliLike().phonemize("one, two. three!", "en") == [
95
+ list("ONE TWO"), list("THREE")]
96
+
97
+
98
+ class TestKeepPunctuation:
99
+ def test_espeak_keeps_comma_and_full_stop(self, espeak):
100
+ espeak.keep_punctuation = True
101
+ phonemes = espeak.phonemize_to_list(SONGS, "en-us")
102
+ text = "".join(phonemes)
103
+ assert phonemes.count(",") == 1 and phonemes.count(".") == 1
104
+ assert phonemes[-1] == "."
105
+ assert text.index(", ") < text.index("nˈʌmb") # before "number"
106
+ assert "\n" not in phonemes
107
+
108
+ def test_factory_sets_the_flag(self):
109
+ phonemizer = get_phonemizer(Phonemizer.ESPEAK, keep_punctuation=True)
110
+ assert phonemizer.keep_punctuation is True
111
+ assert "," in phonemizer.phonemize_to_list(SONGS, "en-us")
112
+
113
+ def test_training_and_synthesis_agree(self, espeak):
114
+ espeak.keep_punctuation = True
115
+ for lang, texts in MULTILINGUAL.items():
116
+ for text in texts:
117
+ train = espeak.phonemize_to_list(text, lang)
118
+ synth = flat(espeak.phonemize(text, lang))
119
+ assert train == synth, (lang, text)
120
+ assert flat(espeak.phonemize_lazy(text, lang)) == synth
121
+ assert "\n" not in train
122
+
123
+ def test_symbols_follow_piper(self):
124
+ phonemizer = CliLike()
125
+ phonemizer.keep_punctuation = True
126
+ assert phonemizer.phonemize_to_list("one, two: three; four? five! six.", "en") == (
127
+ list("ONE") + [",", " "] + list("TWO") + [":", " "] + list("THREE")
128
+ + [";", " "] + list("FOUR") + ["?"] + list("FIVE") + ["!"] + list("SIX") + ["."])
129
+
130
+ def test_sentences_stay_separate_for_synthesis(self):
131
+ phonemizer = CliLike()
132
+ phonemizer.keep_punctuation = True
133
+ assert phonemizer.phonemize("One, two. Three?", "en") == [
134
+ list("ONE") + [",", " "] + list("TWO") + ["."], list("THREE") + ["?"]]
135
+
136
+ def test_arabic_marks_map_to_ascii(self, espeak):
137
+ espeak.keep_punctuation = True
138
+ phonemes = espeak.phonemize_to_list("مرحبا، كيف حالك؟ أنا بخير!", "ar")
139
+ assert [p for p in phonemes if p in ",?!"] == [",", "?", "!"]
140
+
141
+ def test_normalizer_runs_only_on_synthesis(self):
142
+ phonemizer = CliLike()
143
+ phonemizer.keep_punctuation = True
144
+ phonemizer.normalizer = lambda text, lang: text.replace("3", "three")
145
+ train = phonemizer.phonemize_to_list("number three.", "en")
146
+ assert train[-1] == "."
147
+ assert flat(phonemizer.phonemize("number 3.", "en")) == train
148
+
149
+ def test_a_backend_with_its_own_list_ignores_the_flag(self):
150
+ class OwnList(CliLike):
151
+ def phonemize_to_list(self, text, lang):
152
+ return list(self.phonemize_string(self.remove_punctuation(text), lang))
153
+
154
+ phonemizer = OwnList()
155
+ phonemizer.keep_punctuation = True
156
+ # one side overridden: honouring the flag on the other side alone would
157
+ # make training and synthesis disagree
158
+ assert phonemizer.phonemize("one, two.", "en") == [list("ONE TWO")]
159
+
160
+
161
+ class TestSplitClauses:
162
+ @pytest.mark.parametrize("sentence, clauses", [
163
+ ("one, two.", [("one", ","), (" two.", ".")]),
164
+ ("at 16:30, ten", [("at 16:30", ","), (" ten", None)]),
165
+ ("10,4 kg", [("10,4 kg", None)]),
166
+ ("wait... go", [("wait", None), (" go", None)]),
167
+ ("wait…", [("wait…", None)]),
168
+ ('he said "hi," then left.', [('he said "hi', ","), (" then left.", ".")]),
169
+ ("really?! yes", [("really", "?"), (" yes", None)]),
170
+ ("Mr. Smith", [("Mr. Smith", None)]),
171
+ ("مرحبا، كيف", [("مرحبا", ","), (" كيف", None)]),
172
+ ])
173
+ def test_split(self, sentence, clauses):
174
+ from scriptconv.phonemizers.base import split_clauses
175
+ assert split_clauses(sentence) == clauses
File without changes
File without changes