interscript 0.1.4 → 2.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (183) 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 +76 -128
  21. data/lib/interscript/command.rb +6 -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 -223
  63. data/README.adoc +0 -297
  64. data/bin/rspec +0 -29
  65. data/lib/g2pwrapper.py +0 -34
  66. data/lib/interscript/mapping.rb +0 -125
  67. data/lib/model-7 +0 -0
  68. data/lib/tha-pt-b-7 +0 -0
  69. data/maps/acadsin-zho-Hani-Latn-2002.yaml +0 -38912
  70. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +0 -141
  71. data/maps/alalc-bel-cyrl-latn-1997.yaml +0 -125
  72. data/maps/alalc-ben-Beng-Latn-2017.yaml +0 -130
  73. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +0 -94
  74. data/maps/alalc-ell-Grek-Latn-1997.yaml +0 -625
  75. data/maps/alalc-ell-Grek-Latn-2010.yaml +0 -628
  76. data/maps/alalc-kat-Geok-Latn-1997.yaml +0 -112
  77. data/maps/alalc-kat-Geor-Latn-1997.yaml +0 -146
  78. data/maps/alalc-kor-Hang-Latn-1997.yaml +0 -94
  79. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +0 -103
  80. data/maps/alalc-mkd-cyrl-latn-1997.yaml +0 -114
  81. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +0 -222
  82. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +0 -162
  83. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +0 -114
  84. data/maps/alalc-srp-cyrl-latn-2013.yaml +0 -135
  85. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +0 -141
  86. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +0 -16
  87. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +0 -283
  88. data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +0 -175
  89. data/maps/bas-rus-Cyrl-Latn-2017-oss.yaml +0 -169
  90. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +0 -294
  91. data/maps/bgn-kor-Hang-Latn-1943.yaml +0 -31
  92. data/maps/bgn-kor-Kore-Latn-1943.yaml +0 -31
  93. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +0 -208
  94. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +0 -208
  95. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +0 -108
  96. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +0 -104
  97. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +0 -184
  98. data/maps/bgnpcgn-bel-cyrl-latn-1979.yaml +0 -285
  99. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +0 -115
  100. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +0 -38
  101. data/maps/bgnpcgn-chn-Hans-Latn-1979.yaml +0 -7456
  102. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +0 -702
  103. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +0 -20
  104. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +0 -257
  105. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +0 -127
  106. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +0 -43
  107. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +0 -253
  108. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +0 -48
  109. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +0 -48
  110. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +0 -159
  111. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +0 -190
  112. data/maps/bgnpcgn-per-Arab-Latn-1956.yaml +0 -93
  113. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +0 -314
  114. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +0 -166
  115. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +0 -163
  116. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +0 -208
  117. data/maps/by-bel-Cyrl-Latn-1998.yaml +0 -168
  118. data/maps/by-bel-Cyrl-Latn-2007.yaml +0 -115
  119. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +0 -685
  120. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +0 -681
  121. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +0 -20
  122. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +0 -32
  123. data/maps/ggg-kat-Geor-Latn-2002.yaml +0 -89
  124. data/maps/gki-bel-cyrl-latn-1992.yaml +0 -33
  125. data/maps/gki-bel-cyrl-latn-2000.yaml +0 -201
  126. data/maps/gost-rus-cyrl-latn-16876-71-1983.yaml +0 -186
  127. data/maps/hk-yue-Hani-Latn-1888.yaml +0 -38497
  128. data/maps/icao-bel-Cyrl-Latn-9303.yaml +0 -141
  129. data/maps/icao-bul-Cyrl-Latn-9303.yaml +0 -122
  130. data/maps/icao-heb-Hebr-Latn-9303.yaml +0 -151
  131. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +0 -117
  132. data/maps/icao-per-Arab-Latn-9303.yaml +0 -104
  133. data/maps/icao-rus-Cyrl-Latn-9303.yaml +0 -118
  134. data/maps/icao-srp-Cyrl-Latn-9303.yaml +0 -117
  135. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +0 -120
  136. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +0 -610
  137. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +0 -41
  138. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +0 -62
  139. data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +0 -272
  140. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +0 -109
  141. data/maps/kp-kor-Hang-Latn-2002.yaml +0 -901
  142. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +0 -44820
  143. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +0 -411
  144. data/maps/moct-kor-Hang-Latn-2000.yaml +0 -803
  145. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +0 -541
  146. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +0 -225
  147. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +0 -63
  148. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +0 -110
  149. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +0 -37
  150. data/maps/nil-kor-Hang-Hang-jamo.yaml +0 -11193
  151. data/maps/odni-bel-Cyrl-Latn-2015.yaml +0 -148
  152. data/maps/odni-bul-Cyrl-Latn-2015.yaml +0 -96
  153. data/maps/odni-kat-Geor-Latn-2015.yaml +0 -88
  154. data/maps/odni-rus-Cyrl-Latn-2015.yaml +0 -77
  155. data/maps/odni-srp-Cyrl-Latn-2015.yaml +0 -129
  156. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +0 -157
  157. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +0 -167
  158. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +0 -90
  159. data/maps/royin-tha-Thai-Latn-1968.yaml +0 -179
  160. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +0 -180
  161. data/maps/royin-tha-Thai-Latn-1999.yaml +0 -76
  162. data/maps/sac-zho-Hans-Latn-1979.yaml +0 -24759
  163. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +0 -222
  164. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +0 -193
  165. data/maps/un-bel-Cyrl-Latn-2007.yaml +0 -114
  166. data/maps/un-ben-Beng-Latn-2016.yaml +0 -534
  167. data/maps/un-ell-Grek-Latn-1987-tl.yaml +0 -32
  168. data/maps/un-ell-Grek-Latn-1987-ts.yaml +0 -20
  169. data/maps/un-ell-Grek-Latn-phonetic-1987.yaml +0 -780
  170. data/maps/un-mon-Mong-Latn-2013.yaml +0 -93
  171. data/maps/un-rus-Cyrl-Latn-1987.yaml +0 -166
  172. data/maps/un-ukr-cyrl-latn-1998.yaml +0 -30
  173. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +0 -406
  174. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +0 -386
  175. data/maps/var-kor-Hang-Latn-mr-1939.yaml +0 -1054
  176. data/maps/var-kor-Kore-Hang-2013.yaml +0 -59754
  177. data/maps/var-kor-Kore-Latn-mr-1939.yaml +0 -37
  178. data/maps/var-tha-Thai-Thai-phonemic.yaml +0 -59
  179. data/maps/var-tha-Thai-Zsym-ipa.yaml +0 -301
  180. data/maps/var-zho-Hani-Latn-1979.yaml +0 -38908
  181. data/spec/interscript/mapping_spec.rb +0 -42
  182. data/spec/interscript_spec.rb +0 -26
  183. 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]