interscript 0.1.5 → 2.1.0a8

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 (200) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +11 -0
  3. data/.rspec +3 -0
  4. data/Gemfile +29 -0
  5. data/LICENSE.adoc +31 -0
  6. data/README.md +3 -0
  7. data/Rakefile +53 -0
  8. data/bin/console +14 -0
  9. data/bin/interscript +3 -39
  10. data/bin/maps_analyze_staging +168 -0
  11. data/bin/maps_debug_compilers +58 -0
  12. data/bin/maps_debug_ordering +88 -0
  13. data/bin/maps_debug_ruby_compile +24 -0
  14. data/bin/maps_debug_step_by_step +44 -0
  15. data/bin/maps_optimize_order +112 -0
  16. data/bin/maps_v1_analyze_regexps +45 -0
  17. data/bin/maps_v1_to_v2 +426 -0
  18. data/exe/interscript +6 -0
  19. data/interscript.gemspec +31 -0
  20. data/lib/interscript.rb +81 -123
  21. data/lib/interscript/command.rb +5 -5
  22. data/lib/interscript/compiler.rb +22 -0
  23. data/lib/interscript/compiler/javascript.rb +292 -0
  24. data/lib/interscript/compiler/ruby.rb +262 -0
  25. data/lib/interscript/dsl.rb +67 -0
  26. data/lib/interscript/dsl/aliases.rb +23 -0
  27. data/lib/interscript/dsl/document.rb +46 -0
  28. data/lib/interscript/dsl/group.rb +45 -0
  29. data/lib/interscript/dsl/group/parallel.rb +6 -0
  30. data/lib/interscript/dsl/items.rb +89 -0
  31. data/lib/interscript/dsl/metadata.rb +26 -0
  32. data/lib/interscript/dsl/stage.rb +6 -0
  33. data/lib/interscript/dsl/symbol_mm.rb +11 -0
  34. data/lib/interscript/dsl/tests.rb +12 -0
  35. data/lib/interscript/interpreter.rb +251 -0
  36. data/lib/interscript/node.rb +25 -0
  37. data/lib/interscript/node/alias_def.rb +15 -0
  38. data/lib/interscript/node/dependency.rb +13 -0
  39. data/lib/interscript/node/document.rb +45 -0
  40. data/lib/interscript/node/group.rb +34 -0
  41. data/lib/interscript/node/group/parallel.rb +9 -0
  42. data/lib/interscript/node/group/sequential.rb +2 -0
  43. data/lib/interscript/node/item.rb +52 -0
  44. data/lib/interscript/node/item/alias.rb +42 -0
  45. data/lib/interscript/node/item/any.rb +61 -0
  46. data/lib/interscript/node/item/capture.rb +50 -0
  47. data/lib/interscript/node/item/group.rb +51 -0
  48. data/lib/interscript/node/item/repeat.rb +40 -0
  49. data/lib/interscript/node/item/stage.rb +23 -0
  50. data/lib/interscript/node/item/string.rb +51 -0
  51. data/lib/interscript/node/metadata.rb +18 -0
  52. data/lib/interscript/node/rule.rb +6 -0
  53. data/lib/interscript/node/rule/funcall.rb +18 -0
  54. data/lib/interscript/node/rule/run.rb +15 -0
  55. data/lib/interscript/node/rule/sub.rb +65 -0
  56. data/lib/interscript/node/stage.rb +19 -0
  57. data/lib/interscript/node/tests.rb +15 -0
  58. data/lib/interscript/stdlib.rb +211 -0
  59. data/lib/interscript/utils/regexp_converter.rb +283 -0
  60. data/lib/interscript/version.rb +1 -1
  61. data/requirements.txt +1 -0
  62. metadata +73 -311
  63. data/README.adoc +0 -298
  64. data/bin/rspec +0 -29
  65. data/lib/__pycache__/g2pwrapper.cpython-38.pyc +0 -0
  66. data/lib/g2pwrapper.py +0 -34
  67. data/lib/interscript-opal.rb +0 -2
  68. data/lib/interscript/fs.rb +0 -69
  69. data/lib/interscript/mapping.rb +0 -142
  70. data/lib/interscript/opal.rb +0 -23
  71. data/lib/interscript/opal/maps.js.erb +0 -7
  72. data/lib/interscript/opal_map_translate.rb +0 -12
  73. data/lib/model-7 +0 -0
  74. data/lib/tha-pt-b-7 +0 -0
  75. data/maps/acadsin-zho-Hani-Latn-2002.yaml +0 -38912
  76. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +0 -141
  77. data/maps/alalc-bel-cyrl-latn-1997.yaml +0 -125
  78. data/maps/alalc-ben-Beng-Latn-2017.yaml +0 -130
  79. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +0 -94
  80. data/maps/alalc-ell-Grek-Latn-1997.yaml +0 -625
  81. data/maps/alalc-ell-Grek-Latn-2010.yaml +0 -628
  82. data/maps/alalc-kat-Geok-Latn-1997.yaml +0 -112
  83. data/maps/alalc-kat-Geor-Latn-1997.yaml +0 -146
  84. data/maps/alalc-kor-Hang-Latn-1997.yaml +0 -94
  85. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +0 -103
  86. data/maps/alalc-mkd-cyrl-latn-1997.yaml +0 -114
  87. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +0 -222
  88. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +0 -162
  89. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +0 -114
  90. data/maps/alalc-srp-cyrl-latn-2013.yaml +0 -135
  91. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +0 -141
  92. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +0 -16
  93. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +0 -283
  94. data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +0 -175
  95. data/maps/bas-rus-Cyrl-Latn-2017-oss.yaml +0 -169
  96. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +0 -294
  97. data/maps/bgn-kor-Hang-Latn-1943.yaml +0 -31
  98. data/maps/bgn-kor-Kore-Latn-1943.yaml +0 -31
  99. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +0 -208
  100. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +0 -208
  101. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +0 -108
  102. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +0 -104
  103. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +0 -184
  104. data/maps/bgnpcgn-bel-cyrl-latn-1979.yaml +0 -285
  105. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +0 -115
  106. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +0 -38
  107. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +0 -702
  108. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +0 -20
  109. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +0 -257
  110. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +0 -127
  111. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +0 -43
  112. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +0 -253
  113. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +0 -48
  114. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +0 -48
  115. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +0 -159
  116. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +0 -190
  117. data/maps/bgnpcgn-per-Arab-Latn-1956.yaml +0 -93
  118. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +0 -314
  119. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +0 -166
  120. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +0 -163
  121. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +0 -208
  122. data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +0 -7456
  123. data/maps/by-bel-Cyrl-Latn-1998.yaml +0 -168
  124. data/maps/by-bel-Cyrl-Latn-2007.yaml +0 -115
  125. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +0 -685
  126. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +0 -681
  127. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +0 -20
  128. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +0 -32
  129. data/maps/ggg-kat-Geor-Latn-2002.yaml +0 -89
  130. data/maps/gki-bel-cyrl-latn-1992.yaml +0 -33
  131. data/maps/gki-bel-cyrl-latn-2000.yaml +0 -201
  132. data/maps/gost-rus-cyrl-latn-16876-71-1983.yaml +0 -186
  133. data/maps/hk-yue-Hani-Latn-1888.yaml +0 -38497
  134. data/maps/icao-bel-Cyrl-Latn-9303.yaml +0 -141
  135. data/maps/icao-bul-Cyrl-Latn-9303.yaml +0 -122
  136. data/maps/icao-heb-Hebr-Latn-9303.yaml +0 -151
  137. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +0 -117
  138. data/maps/icao-per-Arab-Latn-9303.yaml +0 -104
  139. data/maps/icao-rus-Cyrl-Latn-9303.yaml +0 -118
  140. data/maps/icao-srp-Cyrl-Latn-9303.yaml +0 -117
  141. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +0 -120
  142. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +0 -610
  143. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +0 -41
  144. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +0 -62
  145. data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +0 -272
  146. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +0 -109
  147. data/maps/kp-kor-Hang-Latn-2002.yaml +0 -901
  148. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +0 -44820
  149. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +0 -411
  150. data/maps/moct-kor-Hang-Latn-2000.yaml +0 -803
  151. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +0 -541
  152. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +0 -225
  153. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +0 -63
  154. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +0 -110
  155. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +0 -37
  156. data/maps/nil-kor-Hang-Hang-jamo.yaml +0 -11193
  157. data/maps/odni-aze-Cyrl-Latn-2015.yaml +0 -144
  158. data/maps/odni-bel-Cyrl-Latn-2015.yaml +0 -148
  159. data/maps/odni-bul-Cyrl-Latn-2015.yaml +0 -96
  160. data/maps/odni-kat-Geor-Latn-2015.yaml +0 -88
  161. data/maps/odni-kaz-Cyrl-Latn-2015.yaml +0 -148
  162. data/maps/odni-kir-Cyrl-Latn-2015.yaml +0 -136
  163. data/maps/odni-mkd-cyrl-latn-2015.yaml +0 -122
  164. data/maps/odni-rus-Cyrl-Latn-2015.yaml +0 -77
  165. data/maps/odni-srp-Cyrl-Latn-2015.yaml +0 -129
  166. data/maps/odni-tat-Cyrl-Latn-2015.yaml +0 -142
  167. data/maps/odni-tgk-Cyrl-Latn-2015.yaml +0 -148
  168. data/maps/odni-uig-Cyrl-Latn-2015.yaml +0 -138
  169. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +0 -157
  170. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +0 -167
  171. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +0 -90
  172. data/maps/royin-tha-Thai-Latn-1968.yaml +0 -179
  173. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +0 -180
  174. data/maps/royin-tha-Thai-Latn-1999.yaml +0 -76
  175. data/maps/sac-zho-Hans-Latn-1979.yaml +0 -24759
  176. data/maps/ses-ara-arab-latn-1930.yaml +0 -275
  177. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +0 -222
  178. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +0 -193
  179. data/maps/un-ara-Arab-Latn-1971.yaml +0 -127
  180. data/maps/un-ara-Arab-Latn-1972.yaml +0 -152
  181. data/maps/un-ara-Arab-Latn-2017.yaml +0 -383
  182. data/maps/un-bel-Cyrl-Latn-2007.yaml +0 -114
  183. data/maps/un-ben-Beng-Latn-2016.yaml +0 -534
  184. data/maps/un-ell-Grek-Latn-1987-tl.yaml +0 -32
  185. data/maps/un-ell-Grek-Latn-1987-ts.yaml +0 -20
  186. data/maps/un-ell-Grek-Latn-phonetic-1987.yaml +0 -780
  187. data/maps/un-mon-Mong-Latn-2013.yaml +0 -93
  188. data/maps/un-rus-Cyrl-Latn-1987.yaml +0 -166
  189. data/maps/un-ukr-cyrl-latn-1998.yaml +0 -30
  190. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +0 -406
  191. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +0 -386
  192. data/maps/var-kor-Hang-Latn-mr-1939.yaml +0 -1054
  193. data/maps/var-kor-Kore-Hang-2013.yaml +0 -59754
  194. data/maps/var-kor-Kore-Latn-mr-1939.yaml +0 -37
  195. data/maps/var-tha-Thai-Thai-phonemic.yaml +0 -59
  196. data/maps/var-tha-Thai-Zsym-ipa.yaml +0 -301
  197. data/maps/var-zho-Hani-Latn-1979.yaml +0 -38908
  198. data/spec/interscript/mapping_spec.rb +0 -42
  199. data/spec/interscript_spec.rb +0 -26
  200. data/spec/spec_helper.rb +0 -3
@@ -1,141 +0,0 @@
1
- ---
2
- authority_id: alalc
3
- id: 1997
4
- language: aze
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: ALA-LC Romanization Table -- Azerbaijani (1997)
8
- url: https://transliteration.eki.ee/pdf/Azerbaijani.pdf
9
- creation_date: 1997
10
- description: |
11
- ALA-LC Romanization Tables: Transliteration Schemes for Non-Roman Scripts. Randal K. Berry (ed.). Library of Congress, 1997.
12
-
13
- notes:
14
- - "Ј ј replaced Й й in 1959 (Roman: y; ISO 9: j; ALA-LC: ĭ)."
15
-
16
- tests: # from internet
17
- - source: Азәрбајҹан дили
18
- expected: Azărbaı̐jan dili
19
- - source: |
20
- Бүтүн инсанлар ләјагәт вә һүгугларына ҝөрә азад вә бәрабәр доғулурлар.
21
- Онларын шүурлары вә виҹданлары вар вә бир-бирләринә мүнасибәтдә гардашлыг руһунда давранмалыдырлар.
22
- expected: |
23
- Bu̇tu̇n insanlar lăı̐agăt vă ḣu̇guglaryna ġȯră azad vă bărabăr doghulurlar.
24
- Onlaryn shu̇urlary vă vijdanlary var vă bir-birlărină mu̇nasibătdă gardashlyg ruḣunda davranmalydyrlar.
25
- - source: |
26
- Азәрбајҹан! Азәрбајҹан!
27
- Еј гәһрәман өвладын шанлы Вәтәни!
28
- Сәндән өтрү ҹан вермәјә ҹүмлә һазырыз!
29
- Сәндән өтрү ган төкмәјә ҹүмлә гадириз!
30
- Үчрәнҝли бајрағынла мәсуд јаша!
31
- Үчрәнҝли бајрағынла мәсуд јаша!
32
- Минләрлә ҹан гурбан олду,
33
- Синән һәрбә мејдан олду!
34
- Һүгугундан кечән әсҝәр,
35
- Һәрә бир гәһрәман олду!
36
- Сән оласан ҝүлүстан,
37
- Сәнә һәр ан ҹан гурбан!
38
- Сәнә мин бир мәһәббәт
39
- Синәмдә тутмуш мәкан!
40
- Намусуну һифз етмәјә,
41
- Бајрағыны јүксәлтмәјә
42
- Намусуну һифз етмәјә,
43
- Ҹүмлә ҝәнҹләр мүштагдыр!
44
- Шанлы Вәтән! Шанлы Вәтән!
45
- Азәрбајҹан! Азәрбајҹан!
46
- Азәрбајҹан! Азәрбајҹан!
47
- expected: |
48
- Azărbaı̐jan! Azărbaı̐jan!
49
- Eı̐ găḣrăman ȯvladyn shanly Vătăni!
50
- Săndăn ȯtru̇ jan vermăı̐ă ju̇mlă ḣazyryz!
51
- Săndăn ȯtru̇ gan tȯkmăı̐ă ju̇mlă gadiriz!
52
- U̇chrănġli baı̐raghynla măsud ı̐asha!
53
- U̇chrănġli baı̐raghynla măsud ı̐asha!
54
- Minlărlă jan gurban oldu,
55
- Sinăn ḣărbă meı̐dan oldu!
56
- Ḣu̇gugundan kechăn ăsġăr,
57
- Ḣără bir găḣrăman oldu!
58
- Săn olasan ġu̇lu̇stan,
59
- Sănă ḣăr an jan gurban!
60
- Sănă min bir măḣăbbăt
61
- Sinămdă tutmush măkan!
62
- Namusunu ḣifz etmăı̐ă,
63
- Baı̐raghyny ı̐u̇ksăltmăı̐ă
64
- Namusunu ḣifz etmăı̐ă,
65
- Ju̇mlă ġănjlăr mu̇shtagdyr!
66
- Shanly Vătăn! Shanly Vătăn!
67
- Azărbaı̐jan! Azărbaı̐jan!
68
- Azărbaı̐jan! Azărbaı̐jan!
69
-
70
- map:
71
- characters:
72
- '\u0410': 'A' # А
73
- '\u0411': 'B' # Б
74
- '\u0412': 'V' # В
75
- '\u0413': 'G' # Г
76
- '\u0492': 'Gh' # Ғ
77
- '\u0414': 'D' # Д
78
- '\u0415': 'E' # Е
79
- '\u04D8': "A\u0306" # Ә
80
- '\u0416': 'Zh' # Ж
81
- '\u0417': 'Z' # З
82
- '\u0418': 'I' # И
83
- '\u042B': 'Y' # Ы
84
- '\u0408': "I\u0310" # Ј
85
- '\u0419': 'Y' # Й note[1]
86
- '\u0419': 'Y' # Й
87
- '\u041A': 'K' # К
88
- '\u049C': "G\u0307" # Ҝ
89
- '\u041B': 'L' # Л
90
- '\u041C': 'M' # М
91
- '\u041D': 'N' # Н
92
- '\u041E': 'O' # О
93
- '\u04E8': "O\u0307" # Ө
94
- '\u041F': 'P' # П
95
- '\u0420': 'R' # Р
96
- '\u0421': 'S' # С
97
- '\u0422': 'T' # Т
98
- '\u0423': 'U' # У
99
- '\u04AE': "U\u0307" # Ү
100
- '\u0424': 'F' # Ф
101
- '\u0425': 'Kh' # Х
102
- '\u04BA': "H\u0307" # Һ
103
- '\u0427': 'Ch' # Ч
104
- '\u04B8': 'J' # Ҹ
105
- '\u0428': 'Sh' # Ш
106
-
107
- '\u0430': 'a' # а
108
- '\u0431': 'b' # б
109
- '\u0432': 'v' # в
110
- '\u0433': 'g' # г
111
- '\u0493': 'gh' # ғ
112
- '\u0434': 'd' # д
113
- '\u0435': 'e' # e
114
- '\u04D9': "a\u0306" # ә
115
- '\u0436': 'zh' # ж
116
- '\u0437': 'z' # з
117
- '\u0438': 'i' # и
118
- '\u044B': 'y' # ы
119
- '\u0458': "\u0131\u0310" # ј
120
- '\u0439': 'y' # й note[1]
121
- '\u043A': 'k' # к
122
- '\u049D': "g\u0307" # ҝ
123
- '\u043B': 'l' # л
124
- '\u043C': 'm' # м
125
- '\u043D': 'n' # н
126
- '\u043E': 'o' # о
127
- '\u04E9': "o\u0307" # ө
128
- '\u043F': 'p' # п
129
- '\u0440': 'r' # р
130
- '\u0441': 's' # с
131
- '\u0442': 't' # т
132
- '\u0443': 'u' # у
133
- '\u04AF': "u\u0307" # ү
134
- '\u0444': 'f' # ф
135
- '\u0445': 'kh' # х
136
- '\u04BB': "h\u0307" # һ
137
- '\u0447': 'ch' # ч
138
- '\u04B9': 'j' # ҹ
139
- '\u0448': 'sh' # ш
140
-
141
- '\u2019': '\u2019'
@@ -1,125 +0,0 @@
1
- ---
2
- authority_id: alalc
3
- id: 1997
4
- language: bel
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: ALA-LC Romanization Table -- Byelorussian (1997)
8
- url: http://catdir.loc.gov/catdir/cpso/romanization/beloruss.pdf
9
- creation_date: 1997
10
-
11
- notes:
12
- - Ґ letter found in Old Belarusian and in modern publications in Tarashkevitsa orthography.
13
- - Do not confuse with the digraph кг (also romanized as “kh”). Manual review may be needed when transcribing data in vernacular characters in order to distinguish х from кг.
14
- - The apostrophe (´) is not transliterated.
15
- - Soft sign (prime) is USMARC hexadecimal code A7 ~ U+02B9 Unicode character
16
-
17
- tests:
18
- # https://en.wikipedia.org/wiki/Romanization_of_Belarusian#Examples
19
- # https://img.tyt.by/n/02/d/belorusskiy_translit.jpg - with issues
20
- - source: Беларусь
21
- expected: Belarusʹ
22
- - source: Магілёў
23
- expected: Mahili͡oŭ
24
- - source: Лукашэнка
25
- expected: Lukashėnka
26
- - source: сям´я
27
- expected: si͡ami͡a
28
- - source: Уручча
29
- expected: Uruchcha
30
- - source: Барысаўскі тракт
31
- expected: Barysaŭski trakt
32
- - source: Усход
33
- expected: Uskhod
34
- - source: Маскоўская
35
- expected: Maskoŭskai͡a
36
- - source: Парк Чалюскінцаў
37
- expected: Park Chali͡uskintsaŭ
38
- - source: Акадэмія навук
39
- expected: Akadėmii͡a navuk
40
- - source: Плошча Якуба Коласа
41
- expected: Ploshcha I͡Akuba Kolasa
42
- - source: Плошча Перамогі
43
- expected: Ploshcha Peramohi
44
- - source: Кастрычніцкая
45
- expected: Kastrychnitskai͡a
46
- - source: Плошча Леніна
47
- expected: Ploshcha Lenina
48
- - source: Інстытут Культуры
49
- expected: Instytut Kulʹtury
50
-
51
- map:
52
- characters:
53
- # Apostrophes
54
- '\u00B4' : '' # official english Apostrophe
55
- '\u02BC' : ''
56
- '\u0027' : '' # from belarussian keyboard
57
-
58
- # Characters
59
- '\u0410' : 'A' # A
60
- '\u0411' : 'B' # Б
61
- '\u0412' : 'V' # B
62
- '\u0413' : 'H' # Г
63
- '\u0490' : 'G' # Ґ
64
- '\u0414' : 'D' # Д
65
- '\u0415' : 'E' # Е
66
- '\u0401' : "I\u0361O" # Ё : I͡O
67
- '\u0416' : "Z\u0361H" # Ж : Z͡H
68
- '\u0417' : 'Z' # З
69
- '\u0406' : 'I' # І
70
- '\u0419' : "\u012C" # Й : Ĭ
71
- '\u041A' : 'K' # К
72
- '\u041B' : 'L' # Л
73
- '\u041C' : 'M' # М
74
- '\u041D' : 'N' # Н
75
- '\u041E' : 'O' # О
76
- '\u041F' : 'P' # П
77
- '\u0420' : 'R' # Р
78
- '\u0421' : 'S' # С
79
- '\u0422' : 'T' # Т
80
- '\u0423' : 'U' # У
81
- '\U040E' : "\u016C" # Ў : Ŭ
82
- '\u0424' : 'F' # Ф
83
- '\u0425' : 'Kh' # Х
84
- '\u0426' : 'Ts' # Ц
85
- '\u0427' : 'Ch' # Ч
86
- '\u0428' : 'Sh' # Ш
87
- '\u042B' : 'Y' # Ы
88
- '\u042C' : "\u02B9" # Ь : ʹ
89
- '\u042D' : "\u0116" # Э : Ė
90
- '\u042E' : "I\u0361U" # Ю : I͡U
91
- '\u042F' : "I\u0361A" # Я : I͡A
92
-
93
- '\u0430' : 'a' # а
94
- '\u0431' : 'b' # б
95
- '\u0432' : 'v' # в
96
- '\u0433' : 'h' # г
97
- '\u0491' : 'g' # ґ
98
- '\u0434' : 'd' # д
99
- '\u0435' : 'e' # е
100
- '\u0451' : "i\u0361o" # ё : i͡o
101
- '\u0436' : "z\u0361h" # ж : z͡h
102
- '\u0437' : 'z' # з
103
- '\u0456' : 'i' # і
104
- '\u0439' : "\u012D" # й : ĭ
105
- '\u043A' : 'k' # к
106
- '\u043B' : 'l' # л
107
- '\u043C' : 'm' # м
108
- '\u043D' : 'n' # н
109
- '\u043E' : 'o' # о
110
- '\u043F' : 'p' # п
111
- '\u0440' : 'r' # р
112
- '\u0441' : 's' # с
113
- '\u0442' : 't' # т
114
- '\u0443' : 'u' # у
115
- '\u045E' : "\u016D" # ў : ŭ
116
- '\u0444' : 'f' # ф
117
- '\u0445' : 'kh' # х
118
- '\u0446' : 'ts' # Ц
119
- '\u0447' : 'ch' # ч
120
- '\u0448' : 'sh' # ш
121
- '\u044B' : 'y' # ы
122
- '\u044C' : "\u02B9" # ь : ʹ
123
- '\u044D' : "\u0117" # э : ė
124
- '\u044E' : "i\u0361u" # ю : i͡u
125
- '\u044F' : "i\u0361a" # я : i͡a
@@ -1,130 +0,0 @@
1
- ---
2
- authority_id: alalc
3
- id: 2017
4
- language: ben
5
- source_script: Beng
6
- destination_script: Latn
7
- name: Bengali Romanization, 2017
8
- url: https://www.loc.gov/catdir/cpso/romanization/bengali.pdf
9
- creation_date: 2017
10
- description: |
11
- ALA-LC Romanization table for Bengali
12
-
13
- notes:
14
-
15
- - Only the vowel forms that appear at the beginning of a syllable are
16
- listed; the forms used for vowels following a consonant can be found in
17
- grammars; no distinction between the two is made in transliteration.
18
-
19
- - |
20
- The vowel a is implicit after all consonants and consonant clusters
21
- and is supplied in transliteration, with the following exceptions:
22
-
23
- a) when another vowel is indicated by its appropriate sign; and
24
- b) when the absence of any vowel is indicated by the subscript symbol ( ্ )
25
- called hasanta or birāma.
26
-
27
- - ব is used both as a labial and as a semivowel. When it occurs as the
28
- second or subsequent consonant of a consonant cluster, it is
29
- transliterated va. When ব is doubled, it is transliterated bba.
30
-
31
- - Candrabindu before guttural, palatal, cerebral, and dental occlusives
32
- is transliterated n̐. Before labials, sibilants, semivowels, the
33
- aspirate, vowels, and in final position it is transliterated m̐.
34
-
35
- - When doubled, abagraha is transliterated by two apostrophes ( ’’ ).
36
-
37
- tests:
38
- - source: "র্ক"
39
- expected: "rka"
40
- - source: "গ্র"
41
- expected: "gra"
42
- - source: "ত্য"
43
- expected: "tya"
44
-
45
- map:
46
- inherit: "un-ben-Beng-Latn-2016"
47
-
48
- characters:
49
-
50
- # I. Vowels and Diphthongs (see Note 1)
51
-
52
- 'অ': 'a'
53
- 'ৠ': 'ṝ'
54
- 'আ': 'ā'
55
- 'ঌ': 'ḹ'
56
- 'ই': 'I'
57
- 'এ': 'e'
58
- 'ঈ': 'ī'
59
- 'ঐ': 'ai'
60
- 'উ': 'u'
61
- 'ও': 'o'
62
- 'ঊ': 'ū'
63
- 'ঔ': 'au'
64
- 'ঋ': 'ṛ'
65
-
66
- # II. Consonants (see Note 2)
67
- # Gutturals
68
- 'ক': 'ka'
69
- 'খ': 'kha'
70
- 'গ': 'ga'
71
- 'ঘ': 'gha'
72
- 'ঙ': 'ṅa'
73
-
74
- # Palatals
75
- 'চ': 'ca'
76
- 'ছ': 'cha'
77
- 'জ': 'ja'
78
- 'ঝ': 'jha'
79
- 'ঞ': 'ña'
80
-
81
- # Cerebrals
82
- 'ট': 'ṭa'
83
- 'ঠ': 'ṭha'
84
- 'ড': 'ḍa'
85
- 'ড়': 'ṛa'
86
- 'ঢ': 'ḍha'
87
- 'ঢ়': 'ṛha'
88
- 'ণ': 'ṇa'
89
-
90
- # Dentals
91
- 'ত': 'ta'
92
- 'ৎ': 't'
93
- 'থ': 'tha'
94
- 'দ': 'da'
95
- 'ধ': 'dha'
96
- 'ন': 'na'
97
-
98
- # Labials
99
- 'প': 'pa'
100
- 'ফ': 'pha'
101
- 'ব': 'ba' # see Note 3
102
- 'ভ': 'bha'
103
- 'ম': 'ma'
104
-
105
- # Semivowels
106
- 'য': 'ya'
107
- 'য়': 'ẏa'
108
- 'র': 'ra'
109
- 'ল': 'la'
110
- 'ব': 'ba' # see Note 3
111
-
112
- # Sibilants
113
- 'শ': 'śa'
114
- 'ষ': 'sha'
115
- 'স': 'sa'
116
-
117
- # Aspirate
118
- 'হ': 'ha'
119
-
120
- # Anusvāra
121
- ' ং': 'ṃ'
122
-
123
- # Bisarga
124
- ' ঃ': 'ḥ'
125
-
126
- # Candrabindu (anunāsika) see note 4
127
- '\u0981': 'n̐' # ঁ : n̐, m̐
128
-
129
- # Abagraha (see Note 5)
130
- 'ऽ': '’' # (apostrophe)
@@ -1,94 +0,0 @@
1
- ---
2
- authority_id: alalc
3
- id: 1997
4
- language: bul
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: ALA-LC Romanization Table -- Bulgarian (1997)
8
- url: http://www.rechtertie.nl/databases/judd/downloads/Bulgarian.pdf
9
- creation_date: 1997
10
-
11
- notes:
12
- - |
13
- The letter Ъ in the initial and medial position is a vowel in Bulgarian and is romanized as ŭ.
14
- It appears in the final position chiefly in texts published before 1945, in which it serves as
15
- a hard sign and is romanized as ʺ.
16
- - The letters Ѣ and Ѫ are found chiefly in texts published before the orthographic reform of 1945.
17
-
18
- tests:
19
- # missing
20
-
21
- map:
22
- rules:
23
- # note[1]
24
- - pattern: (?<=)\u042a(?=\b)
25
- result: "\u02BA"
26
- - pattern: (?<=)u044a(?=\b)
27
- result: "\u02BA"
28
-
29
- characters:
30
- '\u0410': 'A'
31
- '\u0411': 'B'
32
- '\u0412': 'V'
33
- '\u0413': 'G'
34
- '\u0414': 'D'
35
- '\u0415': 'E'
36
- '\u0416': 'Zh'
37
- '\u0417': 'Z'
38
- '\u0418': 'I'
39
- '\u0419': "I\u0306" # Ĭ
40
- '\u041a': 'K'
41
- '\u041b': 'L'
42
- '\u041c': 'M'
43
- '\u041d': 'N'
44
- '\u041e': 'O'
45
- '\u041f': 'P'
46
- '\u0420': 'R'
47
- '\u0421': 'S'
48
- '\u0422': 'T'
49
- '\u0423': 'U'
50
- '\u0424': 'F'
51
- '\u0425': 'Kh'
52
- '\u0426': "T\u0361S"
53
- '\u0427': 'Ch'
54
- '\u0428': 'Sh'
55
- '\u0429': 'Sht'
56
- '\u042a': "U\u0306" # or ʺ check note[1]
57
- '\u042c': '\u02B9'
58
- '\u0462': "I\u0361E" # Ѣ check note [2]
59
- '\u042e': "I\u0361U"
60
- '\u042f': "I\u0361A"
61
- '\u046A': "U\u0310" # Ѫ check note [2]
62
-
63
- '\u0430': 'a'
64
- '\u0431': 'b'
65
- '\u0432': 'v'
66
- '\u0433': 'g'
67
- '\u0434': 'd'
68
- '\u0435': 'e'
69
- '\u0436': 'zh'
70
- '\u0437': 'z'
71
- '\u0438': 'i'
72
- '\u0439': "i\u0306" # ĭ
73
- '\u043a': 'k'
74
- '\u043b': 'l'
75
- '\u043c': 'm'
76
- '\u043d': 'n'
77
- '\u043e': 'o'
78
- '\u043f': 'p'
79
- '\u0440': 'r'
80
- '\u0441': 's'
81
- '\u0442': 't'
82
- '\u0443': 'u'
83
- '\u0444': 'f'
84
- '\u0445': 'kh'
85
- '\u0446': "t\u0361s"
86
- '\u0447': 'ch'
87
- '\u0448': 'sh'
88
- '\u0449': 'sht'
89
- '\u044a': "u\u0306" # or ʺ check note[1]
90
- '\u044c': '\u02B9'
91
- '\u0463': "i\u0361e" # ѣ check note [2]
92
- '\u044e': "i\u0361u"
93
- '\u044f': "i\u0361a"
94
- '\u046B': "u\u0310" # ѫ check note [2]