interscript 0.1.0 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (145) hide show
  1. checksums.yaml +4 -4
  2. data/README.adoc +250 -17
  3. data/bin/interscript +36 -17
  4. data/bin/rspec +29 -0
  5. data/bin/setup +8 -0
  6. data/lib/__pycache__/g2pwrapper.cpython-38.pyc +0 -0
  7. data/lib/g2pwrapper.py +34 -0
  8. data/lib/interscript-opal.rb +2 -0
  9. data/lib/interscript.rb +138 -38
  10. data/lib/interscript/command.rb +28 -0
  11. data/lib/interscript/fs.rb +69 -0
  12. data/lib/interscript/mapping.rb +142 -0
  13. data/lib/interscript/opal.rb +23 -0
  14. data/lib/interscript/opal/maps.js.erb +7 -0
  15. data/lib/interscript/opal_map_translate.rb +12 -0
  16. data/lib/interscript/version.rb +1 -1
  17. data/lib/model-7 +0 -0
  18. data/lib/tha-pt-b-7 +0 -0
  19. data/maps/acadsin-zho-Hani-Latn-2002.yaml +38912 -0
  20. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +141 -0
  21. data/maps/alalc-bel-cyrl-latn-1997.yaml +125 -0
  22. data/maps/alalc-ben-Beng-Latn-2017.yaml +130 -0
  23. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +94 -0
  24. data/maps/alalc-ell-Grek-Latn-1997.yaml +625 -0
  25. data/maps/alalc-ell-Grek-Latn-2010.yaml +628 -0
  26. data/maps/alalc-kat-Geok-Latn-1997.yaml +112 -0
  27. data/maps/alalc-kat-Geor-Latn-1997.yaml +146 -0
  28. data/maps/alalc-kor-Hang-Latn-1997.yaml +94 -0
  29. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +103 -0
  30. data/maps/alalc-mkd-cyrl-latn-1997.yaml +114 -0
  31. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +222 -0
  32. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +162 -0
  33. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +114 -0
  34. data/maps/alalc-srp-cyrl-latn-2013.yaml +135 -0
  35. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +141 -0
  36. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +16 -0
  37. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +283 -0
  38. data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +175 -0
  39. data/maps/bas-rus-Cyrl-Latn-2017-oss.yaml +169 -0
  40. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +294 -0
  41. data/maps/bgn-kor-Hang-Latn-1943.yaml +31 -0
  42. data/maps/bgn-kor-Kore-Latn-1943.yaml +31 -0
  43. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +208 -0
  44. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +208 -0
  45. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +108 -0
  46. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +104 -0
  47. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +184 -0
  48. data/maps/bgnpcgn-bel-cyrl-latn-1979.yaml +285 -0
  49. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +115 -0
  50. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +38 -0
  51. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +702 -0
  52. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +20 -0
  53. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +257 -0
  54. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +127 -0
  55. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +43 -0
  56. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +253 -0
  57. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +48 -0
  58. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +48 -0
  59. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +159 -0
  60. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +190 -0
  61. data/maps/bgnpcgn-per-Arab-Latn-1956.yaml +93 -0
  62. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +314 -0
  63. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +166 -0
  64. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +163 -0
  65. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +208 -0
  66. data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +7456 -0
  67. data/maps/by-bel-Cyrl-Latn-1998.yaml +168 -0
  68. data/maps/by-bel-Cyrl-Latn-2007.yaml +115 -0
  69. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +685 -0
  70. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +681 -0
  71. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +20 -0
  72. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +32 -0
  73. data/maps/ggg-kat-Geor-Latn-2002.yaml +89 -0
  74. data/maps/gki-bel-cyrl-latn-1992.yaml +33 -0
  75. data/maps/gki-bel-cyrl-latn-2000.yaml +201 -0
  76. data/maps/gost-rus-cyrl-latn-16876-71-1983.yaml +186 -0
  77. data/maps/hk-yue-Hani-Latn-1888.yaml +38497 -0
  78. data/maps/icao-bel-Cyrl-Latn-9303.yaml +141 -0
  79. data/maps/icao-bul-Cyrl-Latn-9303.yaml +122 -0
  80. data/maps/icao-heb-Hebr-Latn-9303.yaml +151 -0
  81. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +117 -0
  82. data/maps/icao-per-Arab-Latn-9303.yaml +104 -0
  83. data/maps/icao-rus-Cyrl-Latn-9303.yaml +118 -0
  84. data/maps/icao-srp-Cyrl-Latn-9303.yaml +117 -0
  85. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +120 -0
  86. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +610 -0
  87. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +41 -0
  88. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +62 -0
  89. data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +272 -0
  90. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +109 -0
  91. data/maps/kp-kor-Hang-Latn-2002.yaml +901 -0
  92. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +44820 -0
  93. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +411 -0
  94. data/maps/moct-kor-Hang-Latn-2000.yaml +803 -0
  95. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +541 -0
  96. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +225 -0
  97. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +63 -0
  98. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +110 -0
  99. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +37 -0
  100. data/maps/nil-kor-Hang-Hang-jamo.yaml +11193 -0
  101. data/maps/odni-aze-Cyrl-Latn-2015.yaml +144 -0
  102. data/maps/odni-bel-Cyrl-Latn-2015.yaml +148 -0
  103. data/maps/odni-bul-Cyrl-Latn-2015.yaml +96 -0
  104. data/maps/odni-kat-Geor-Latn-2015.yaml +88 -0
  105. data/maps/odni-kaz-Cyrl-Latn-2015.yaml +148 -0
  106. data/maps/odni-kir-Cyrl-Latn-2015.yaml +136 -0
  107. data/maps/odni-mkd-cyrl-latn-2015.yaml +122 -0
  108. data/maps/odni-rus-Cyrl-Latn-2015.yaml +77 -0
  109. data/maps/odni-srp-Cyrl-Latn-2015.yaml +129 -0
  110. data/maps/odni-tat-Cyrl-Latn-2015.yaml +142 -0
  111. data/maps/odni-tgk-Cyrl-Latn-2015.yaml +148 -0
  112. data/maps/odni-uig-Cyrl-Latn-2015.yaml +138 -0
  113. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +157 -0
  114. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +167 -0
  115. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +90 -0
  116. data/maps/royin-tha-Thai-Latn-1968.yaml +179 -0
  117. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +180 -0
  118. data/maps/royin-tha-Thai-Latn-1999.yaml +76 -0
  119. data/maps/sac-zho-Hans-Latn-1979.yaml +24759 -0
  120. data/maps/ses-ara-arab-latn-1930.yaml +275 -0
  121. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +222 -0
  122. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +193 -0
  123. data/maps/un-ara-Arab-Latn-1971.yaml +127 -0
  124. data/maps/un-ara-Arab-Latn-1972.yaml +152 -0
  125. data/maps/un-ara-Arab-Latn-2017.yaml +383 -0
  126. data/maps/un-bel-Cyrl-Latn-2007.yaml +114 -0
  127. data/maps/un-ben-Beng-Latn-2016.yaml +534 -0
  128. data/maps/un-ell-Grek-Latn-1987-tl.yaml +32 -0
  129. data/maps/un-ell-Grek-Latn-1987-ts.yaml +20 -0
  130. data/maps/un-ell-Grek-Latn-phonetic-1987.yaml +780 -0
  131. data/maps/un-mon-Mong-Latn-2013.yaml +93 -0
  132. data/maps/un-rus-Cyrl-Latn-1987.yaml +166 -0
  133. data/maps/un-ukr-cyrl-latn-1998.yaml +30 -0
  134. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +406 -0
  135. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +386 -0
  136. data/maps/var-kor-Hang-Latn-mr-1939.yaml +1054 -0
  137. data/maps/var-kor-Kore-Hang-2013.yaml +59754 -0
  138. data/maps/var-kor-Kore-Latn-mr-1939.yaml +37 -0
  139. data/maps/var-tha-Thai-Thai-phonemic.yaml +59 -0
  140. data/maps/var-tha-Thai-Zsym-ipa.yaml +301 -0
  141. data/maps/var-zho-Hani-Latn-1979.yaml +38908 -0
  142. data/spec/interscript/mapping_spec.rb +42 -0
  143. data/spec/interscript_spec.rb +26 -0
  144. data/spec/spec_helper.rb +3 -0
  145. metadata +295 -11
@@ -0,0 +1,141 @@
1
+ ---
2
+ authority_id: icao
3
+ id: 9303
4
+ language: bel
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: ICAO Doc 9303 Machine Readable Travel Documents Part 3 -- Belorussian Cyrillic to Latin
8
+ url: https://www.icao.int/publications/pages/publication.aspx?docnum=9303
9
+ creation_date: 2015
10
+ description: |
11
+ Part 3 defines specifications that are common to TD1, TD2 and TD3
12
+ size machine readable travel documents (MRTDs) including those
13
+ necessary for global interoperability using visual inspection and
14
+ machine readable (optical character recognition) means.
15
+
16
+ Since only Latin-alphabet characters are allowed in the VIZ, if
17
+ mandatory data elements are in a national language that does not use
18
+ the Latin alphabet, a transcription or transliteration shall also be
19
+ provided.
20
+
21
+ This document defines the transliteration mappings used to produce
22
+ this transcription or transliteration.
23
+
24
+ tests:
25
+ - source: Бабрыковіч Аляксандр
26
+ expected: Babrykovich Aliaksandr
27
+ - source: Міховіч Марыя
28
+ expected: Mikhovich Maryia
29
+ - source: Максім
30
+ expected: Maksim
31
+ - source: Іван
32
+ expected: Ivan
33
+ - source: СВЯТЛАНА
34
+ expected: SVIATLANA
35
+ - source: Ігар
36
+ expected: Ihar
37
+ - source: Палто Алена
38
+ expected: Palto Alena
39
+ - source: Мікалай
40
+ expected: Mikalai
41
+
42
+ map:
43
+ # https://www.icao.int/publications/Documents/9303_p3_cons_en.pdf
44
+ characters:
45
+ "\u0027": "" # '
46
+ "\u0410": "A" # А
47
+ "\u0411": "B" # Б
48
+ "\u0414": "D" # Д
49
+ "\u0401": "IO" # Ё
50
+ "\u0415": "E" # Е
51
+ "\u042D": "E" # Э
52
+ "\u0424": "F" # Ф
53
+ "\u0413": "H" # Г
54
+ "\u0418": "I" # И
55
+ "\u0419": "I" # Й
56
+ "\u041A": "K" # К
57
+ "\u041B": "L" # Л
58
+ "\u041C": "M" # М
59
+ "\u041D": "N" # Н
60
+ "\u041E": "O" # О
61
+ "\u041F": "P" # П
62
+ "\u0420": "R" # Р
63
+ "\u0421": "S" # С
64
+ "\u0422": "T" # Т
65
+ "\u0423": "U" # У
66
+ "\u0412": "V" # В
67
+ "\u042B": "Y" # Ы
68
+ "\u0417": "Z" # З
69
+ "\u0427": "CH" # Ч
70
+ "\u042F": "IA" # Я
71
+ "\u042E": "IU" # Ю
72
+ "\u0425": "KH" # Х
73
+ "\u0428": "SH" # Ш
74
+ "\u0429": "SHCH" # Щ
75
+ "\u0426": "TS" # Ц
76
+ "\u0416": "ZH" # Ж
77
+ "\u0490": "G" # Ґ
78
+ "\u040E": "U" # Ў
79
+ "\u046A": "U" # Ѫ
80
+ "\u0402": "D" # Ђ
81
+ "\u0405": "DZ" # Ѕ
82
+ "\u0408": "J" # Ј
83
+ "\u0409": "LJ" # Љ
84
+ "\u040A": "NJ" # Њ
85
+ "\u04BA": "C" # Һ
86
+ "\u040F": "DZ" # Џ
87
+ "\u0404": "IE" # Є
88
+ "\u0407": "I" # Ї
89
+ "\u0403": "G" # Ѓ
90
+ "\u0406": "I" # І
91
+
92
+ "\u0430": "a" # а
93
+ "\u0431": "b" # б
94
+ "\u0434": "d" # д
95
+ "\u0451": "io" # ё
96
+ "\u0435": "e" # e
97
+ "\u044D": "e" # э
98
+ "\u0444": "f" # ф
99
+ "\u0433": "h" # г
100
+ "\u0438": "i" # и
101
+ "\u0439": "i" # й
102
+ "\u043A": "k" # к
103
+ "\u043B": "l" # л
104
+ "\u043C": "m" # м
105
+ "\u043D": "n" # н
106
+ "\u043E": "o" # о
107
+ "\u043F": "p" # п
108
+ "\u0440": "r" # р
109
+ "\u0441": "s" # с
110
+ "\u0442": "t" # т
111
+ "\u0443": "" # у
112
+ "\u0432": "v" # в
113
+ "\u044B": "y" # ы
114
+ "\u0437": "z" # з
115
+ "\u0447": "ch" # ч
116
+ "\u044F": "ia" # я
117
+ "\u044E": "i" # ю
118
+ "\u0445": "kh" # х
119
+ "\u0448": "sh" # ш
120
+ "\u0449": "shch" # щ
121
+ "\u0446": "ts" # ц
122
+ "\u0436": "zh" # ж
123
+ "\u0491": "g" # ґ
124
+ "\u045E": "" # ў
125
+ "\u046B": "" # ѫ
126
+ "\u0452": "d" # ђ
127
+ "\u0455": "dz" # ѕ
128
+ "\u0458": "j" # ј
129
+ "\u0459": "lj" # љ
130
+ "\u045A": "nj" # њ
131
+ "\u04BB": "c" # һ
132
+ "\u045F": "dz" # џ
133
+ "\u0454": "ie" # є
134
+ "\u0457": "i" # ї
135
+ "\u0453": "g" # ѓ
136
+ "\u0456": "i" # і
137
+
138
+
139
+
140
+
141
+
@@ -0,0 +1,122 @@
1
+ ---
2
+ authority_id: icao
3
+ id: 9303
4
+ language: bul
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: ICAO Doc 9303 Machine Readable Travel Documents Part 3 -- Bulgarian Cyrillic to Latin
8
+ url: https://www.icao.int/publications/pages/publication.aspx?docnum=9303
9
+ creation_date: 2015
10
+ description: |
11
+ Part 3 defines specifications that are common to TD1, TD2 and TD3
12
+ size machine readable travel documents (MRTDs) including those
13
+ necessary for global interoperability using visual inspection and
14
+ machine readable (optical character recognition) means.
15
+
16
+ Since only Latin-alphabet characters are allowed in the VIZ, if
17
+ mandatory data elements are in a national language that does not use
18
+ the Latin alphabet, a transcription or transliteration shall also be
19
+ provided.
20
+
21
+ This document defines the transliteration mappings used to produce
22
+ this transcription or transliteration.
23
+ tests:
24
+
25
+ map:
26
+ # https://www.icao.int/publications/Documents/9303_p3_cons_en.pdf
27
+ characters:
28
+ "\u0027": "" # '
29
+ "\u0410": "A" # А
30
+ "\u0411": "B" # Б
31
+ "\u0414": "D" # Д
32
+ "\u0401": "E" # Ё
33
+ "\u0415": "E" # Е
34
+ "\u042D": "E" # Э
35
+ "\u0424": "F" # Ф
36
+ "\u0413": "G" # Г
37
+ "\u0418": "I" # И
38
+ "\u0419": "I" # Й
39
+ "\u041A": "K" # К
40
+ "\u041B": "L" # Л
41
+ "\u041C": "M" # М
42
+ "\u041D": "N" # Н
43
+ "\u041E": "O" # О
44
+ "\u041F": "P" # П
45
+ "\u0420": "R" # Р
46
+ "\u0421": "S" # С
47
+ "\u0422": "T" # Т
48
+ "\u0423": "U" # У
49
+ "\u0412": "V" # В
50
+ "\u042B": "Y" # Ы
51
+ "\u0417": "Z" # З
52
+ "\u0427": "CH" # Ч
53
+ "\u042F": "IA" # Я
54
+ "\u042E": "IU" # Ю
55
+ "\u0425": "KH" # Х
56
+ "\u0428": "SH" # Ш
57
+ "\u0429": "SHT" # Щ
58
+ "\u0426": "TS" # Ц
59
+ "\u0416": "ZH" # Ж
60
+ "\u0490": "G" # Ґ
61
+ "\u040E": "U" # Ў
62
+ "\u046A": "U" # Ѫ
63
+ "\u0402": "D" # Ђ
64
+ "\u0405": "DZ" # Ѕ
65
+ "\u0408": "J" # Ј
66
+ "\u0409": "LJ" # Љ
67
+ "\u040A": "NJ" # Њ
68
+ "\u04BA": "C" # Һ
69
+ "\u040F": "DZ" # Џ
70
+ "\u0404": "IE" # Є
71
+ "\u0407": "I" # Ї
72
+ "\u0403": "G" # Ѓ
73
+ "\u0027": "" # '
74
+
75
+ "\u0430": "a" # а
76
+ "\u0431": "b" # б
77
+ "\u0434": "d" # д
78
+ "\u0451": "e" # ё
79
+ "\u0435": "e" # e
80
+ "\u044D": "e" # э
81
+ "\u0444": "f" # ф
82
+ "\u0433": "g" # г
83
+ "\u0438": "i" # и
84
+ "\u0439": "i" # й
85
+ "\u043A": "k" # к
86
+ "\u043B": "l" # л
87
+ "\u043C": "m" # м
88
+ "\u043D": "n" # н
89
+ "\u043E": "o" # о
90
+ "\u043F": "p" # п
91
+ "\u0440": "r" # р
92
+ "\u0441": "s" # с
93
+ "\u0442": "t" # т
94
+ "\u0443": "" # у
95
+ "\u0432": "v" # в
96
+ "\u044B": "y" # ы
97
+ "\u0437": "z" # з
98
+ "\u0447": "ch" # ч
99
+ "\u044F": "ia" # я
100
+ "\u044E": "i" # ю
101
+ "\u0445": "kh" # х
102
+ "\u0448": "sh" # ш
103
+ "\u0449": "sht" # щ
104
+ "\u0446": "ts" # ц
105
+ "\u0436": "zh" # ж
106
+ "\u0491": "g" # ґ
107
+ "\u045E": "" # ў
108
+ "\u046B": "" # ѫ
109
+ "\u0452": "d" # ђ
110
+ "\u0455": "dz" # ѕ
111
+ "\u0458": "j" # ј
112
+ "\u0459": "lj" # љ
113
+ "\u045A": "nj" # њ
114
+ "\u04BB": "c" # һ
115
+ "\u045F": "dz" # џ
116
+ "\u0454": "ie" # є
117
+ "\u0457": "i" # ї
118
+ "\u0453": "g" # ѓ
119
+
120
+
121
+
122
+
@@ -0,0 +1,151 @@
1
+ ---
2
+ authority_id: icao
3
+ id: 9303
4
+ language: heb
5
+ source_script: Hebr
6
+ destination_script: Latn
7
+ name: ICAO Doc 9303 Machine Readable Travel Documents Part 3 -- Hebrew to Latin
8
+ url: https://www.icao.int/publications/pages/publication.aspx?docnum=9303
9
+ creation_date: 2015
10
+ description: |
11
+ Part 3 defines specifications that are common to TD1, TD2 and TD3
12
+ size machine readable travel documents (MRTDs) including those
13
+ necessary for global interoperability using visual inspection and
14
+ machine readable (optical character recognition) means.
15
+
16
+ Since only Latin-alphabet characters are allowed in the VIZ, if
17
+ mandatory data elements are in a national language that does not use
18
+ the Latin alphabet, a transcription or transliteration shall also be
19
+ provided.
20
+
21
+ This document defines the transliteration mappings used to produce
22
+ this transcription or transliteration.
23
+ tests:
24
+
25
+ map:
26
+ # https://en.wikipedia.org/wiki/Romanization_of_Hebrew
27
+
28
+ characters:
29
+ "\u0027": "" # '
30
+
31
+ # Consonants
32
+ "\u05D0": "" # א
33
+ "\u05D1": "V" # ב
34
+ "\u05D1\u05BC": "B" # בּ
35
+ "\uFB31": "B" # בּ
36
+ "\u05D2": "G" # ג
37
+ "\u05D2\u05BC": "G" # גּ
38
+ "\uFB32": "G" # גּ‬‬
39
+ "\u05D2\u05F3": "J" # ג׳
40
+ "\u05D3": "D" # ד
41
+ "\u05D3\u05BC": "D" # דּ
42
+ "\uFB33": "D" # דּ
43
+ "\u05D3\u05F3": "DH" # ד׳
44
+ "\u05D4": "H" # ה
45
+ "\u05D4\u05BC": "H" # הּ
46
+ "\uFB34": "H" # הּ
47
+ "\u05D5": "V" # ו‬
48
+ "\u05D5\u202C": "V" # ו‬
49
+ "\u05D5\u05BC": "V" # וּ
50
+ # "\uFB35": "V" # וּ # To vowels "U"
51
+ "\u05D6": "Z" # ז
52
+ "\u05D6\u05BC": "Z" # זּ
53
+ "\uFB36": "Z" # זּ‬
54
+ "\u05D6\u05F3": "ZH" # ז׳
55
+ "\u05D7": "CH" # ח
56
+ "\u05D8": "T" # ט
57
+ "\u05D8\u05BC": "T" # טּ
58
+ "\uFB38": "T" # טּ
59
+ "\u05D9": "Y" # י
60
+ "\u05D9\u05BC": "Y" # יּ
61
+ "\u05D9\u05BC\u202C": "Y" # יּ‬
62
+ "\uFB39": "Y" # יּ‬
63
+ "\u05DB": "CH" # כ
64
+ "\u05DB\u05BC": "CH" # כּ
65
+ "\u05DB\u05BC\u202C": "CH" # כּ
66
+ "\uFB3B": "C" # כּ
67
+ "\u05DA": "CH" # ך
68
+ "\u05DA\u05BC": "CH" # ךּ
69
+ "\u05DA\u05BC\u202C": "CH" # ךּ‬
70
+ "\uFB3A": "CH" # ךּ
71
+ "\u05DC": "L" # ל‬
72
+ "\u05DC\u05BC": "L" # לּ
73
+ "\uFB3C": "L" # לּ
74
+ "\u05DD": "M" # ם
75
+ "\u05DE": "M" # מ‬
76
+ "\u05DE\u05BC": "M" # מּ
77
+ "\uFB3E": "M" # מּ‬
78
+ "\u05DF": "N" # ן
79
+ "\u05E0": "N" # נ
80
+ "\u05E0\u05BC": "N" # נּ
81
+ "\uFB40": "N" # נּ
82
+ "\u05E1": "S" # ס
83
+ "\u05E1\u05BC": "S" # סּ
84
+ "\uFB41": "S" # סּ
85
+ "\u05E2": "" # ע
86
+ "\u05E3": "F" # ף
87
+ "\u05E3\u05BC": "P" # Possible problem u05BC # ףּ
88
+ "\uFB43": "P" # ףּ
89
+ "\u05E4": "F" # פ‬
90
+ "\u05E4\u05BC": "P" # פּ
91
+ "\uFB44": "P" # פּ
92
+ "\u05E5": "TZ" # ץ
93
+ "\u05E5\u05F3": "TSH" # Possible problem u05F3 # ץ׳
94
+ "\u05E6": "TZ" # צ‬
95
+ "\u05E6\u05BC": "TZ" # צּ
96
+ "\uFB46": "TZ" # צּ‬
97
+ "\u05E6\u05F3": "TSH" # Possible problem u05F3 # צ׳
98
+ "\u05E7": "Q" # ק
99
+ "\u05E7\u05BC": "Q" # קּ
100
+ "\uFB47": "Q" # קּ‬
101
+ "\u05E8": "R" # ר
102
+ "\u05E8\u05BC": "R" # רּ
103
+ "\uFB48": "R" # רּ
104
+ "\u05E9": "S" # ש
105
+ "\u05E9\u05BC": "S" # שּ
106
+ "\uFB49": "S" # שּ‬
107
+ "\u05E9\u05C2\u202C": "S" # שׂ
108
+ "\uFB2B": "S" # שׂ
109
+ "\u05E9\u05C1": "SH" # שׁ
110
+ "\uFB2A": "SH" # שׁ
111
+ "\u05E9\u05BC\u05C2\u202C": "S" # שּׂ‬
112
+ "\uFB2D": "S" # שּׂ
113
+ "\u05EA": "T" # ת
114
+ "\u05EA\u05BC": "T" # תּ
115
+ "\uFB4A": "T" # תּ
116
+ "\u05EA\u05F3": "T" # ת׳
117
+
118
+ # Niqqud vowels
119
+ "\u05B0": "E" # ( ְ‬ )
120
+ "\u05B1": "E" # ( ֱ )
121
+ "\u05B2": "A" # ( ֲ )
122
+ "\u05B3": "O" # ( ֲ )
123
+ "\u05B4": "I" # ( ִ )
124
+ "\u05B5": "E" # ( ֵ )
125
+ "\u05B6": "E" # ( ֶ )
126
+ "\u05B7": "A" # ( ַ )
127
+ "\u05B8": "O" # ( ָ ) # It could be "A" too
128
+ "\u05B9": "O" # ( ֹ )
129
+ "\u05BB": "U" # ( ֻ )
130
+ "\u05D5\u05BC": "U" # ( וּ )
131
+ "\uFB35": "U" # ( וּ )
132
+
133
+ # Diphthongs
134
+ "\u05B5\u05D9": "EI" # ( ֵי )
135
+ "\u05B6\u05D9": "EI" # ( ֶי )
136
+ "\u05B7\u05D9": "AI" # ( ַי )
137
+ "\u05B7\u05D9\u05B0": "AI" # ( ַיְ )
138
+ "\u05B7\u05D9\u05B0\u202C": "AI" # ( ַיְ‬ )
139
+ "\u05B8\u05D9": "AI" # ( ָי )
140
+ "\u05B8\u05D9\u202C": "AI" # ( ָי‬ )
141
+ "\u05B8\u05D9\u05B0": "AI" # ( ָיְ )
142
+ "\u05B8\u05D9\u05B0\u202C": "AI" # ( ָיְ‬ )
143
+ "\u05B9\u05D9": "OI" # ( ֹי )
144
+ "\u05B9\u05D9\u05B0": "OI" # ( ֹיְ )
145
+ "\u05B9\u05D9\u05B0\u202C": "OI" # ( ֹיְ‬ )
146
+ "\u05BB\u05D9": "UI" # ( ֻי )
147
+ "\u05BB\u05D9\u05B0": "UI" # ( ֻיְ )
148
+ "\u05BB\u05D9\u05B0\u202C": "UI" # ( ֻיְ‬ )
149
+ "\u05D5\u05BC\u05D9": "UI" # ( וּי )
150
+ "\u05D5\u05BC\u05D9\u05B0": "UI" # ( וּיְ )
151
+ "\u05D5\u05BC\u05D9\u05B0\u202C": "UI" # ( וּיְ‬ )
@@ -0,0 +1,117 @@
1
+ ---
2
+ authority_id: icao
3
+ id: 9303
4
+ language: mkd
5
+ source_script: Cyrl
6
+ destination_script: Latn
7
+ name: ICAO Doc 9303 Machine Readable Travel Documents Part 3 -- Macedonian Cyrillic to Latin
8
+ url: https://www.icao.int/publications/pages/publication.aspx?docnum=9303
9
+ creation_date: 2015
10
+ description: |
11
+ Part 3 defines specifications that are common to TD1, TD2 and TD3
12
+ size machine readable travel documents (MRTDs) including those
13
+ necessary for global interoperability using visual inspection and
14
+ machine readable (optical character recognition) means.
15
+
16
+ Since only Latin-alphabet characters are allowed in the VIZ, if
17
+ mandatory data elements are in a national language that does not use
18
+ the Latin alphabet, a transcription or transliteration shall also be
19
+ provided.
20
+
21
+ This document defines the transliteration mappings used to produce
22
+ this transcription or transliteration.
23
+ tests:
24
+
25
+ map:
26
+ # https://www.icao.int/publications/Documents/9303_p3_cons_en.pdf
27
+ characters:
28
+ "\u0027": "" # '
29
+ "\u0410": "A" # А
30
+ "\u0411": "B" # Б
31
+ "\u0414": "D" # Д
32
+ "\u0401": "E" # Ё
33
+ "\u0415": "E" # Е
34
+ "\u042D": "E" # Э
35
+ "\u0424": "F" # Ф
36
+ "\u0413": "G" # Г
37
+ "\u0418": "I" # И
38
+ "\u0419": "I" # Й
39
+ "\u041A": "KJ" # К
40
+ "\u041B": "L" # Л
41
+ "\u041C": "M" # М
42
+ "\u041D": "N" # Н
43
+ "\u041E": "O" # О
44
+ "\u041F": "P" # П
45
+ "\u0420": "R" # Р
46
+ "\u0421": "S" # С
47
+ "\u0422": "T" # Т
48
+ "\u0423": "U" # У
49
+ "\u0412": "V" # В
50
+ "\u042B": "Y" # Ы
51
+ "\u0417": "Z" # З
52
+ "\u0427": "CH" # Ч
53
+ "\u042F": "IA" # Я
54
+ "\u042E": "IU" # Ю
55
+ "\u0425": "H" # Х
56
+ "\u0428": "SH" # Ш
57
+ "\u0429": "SHCH" # Щ
58
+ "\u0426": "C" # Ц
59
+ "\u0416": "ZH" # Ж
60
+ "\u0490": "G" # Ґ
61
+ "\u040E": "U" # Ў
62
+ "\u046A": "U" # Ѫ
63
+ "\u0402": "D" # Ђ
64
+ "\u0405": "DZ" # Ѕ
65
+ "\u0408": "J" # Ј
66
+ "\u0409": "LJ" # Љ
67
+ "\u040A": "NJ" # Њ
68
+ "\u04BA": "C" # Һ
69
+ "\u040F": "DJ" # Џ
70
+ "\u0404": "IE" # Є
71
+ "\u0407": "I" # Ї
72
+ "\u0403": "GJ" # Ѓ
73
+
74
+ "\u0430": "a" # а
75
+ "\u0431": "b" # б
76
+ "\u0434": "d" # д
77
+ "\u0451": "e" # ё
78
+ "\u0435": "e" # e
79
+ "\u044D": "e" # э
80
+ "\u0444": "f" # ф
81
+ "\u0433": "g" # г
82
+ "\u0438": "i" # и
83
+ "\u0439": "i" # й
84
+ "\u043A": "kj" # к
85
+ "\u043B": "l" # л
86
+ "\u043C": "m" # м
87
+ "\u043D": "n" # н
88
+ "\u043E": "o" # о
89
+ "\u043F": "p" # п
90
+ "\u0440": "r" # р
91
+ "\u0441": "s" # с
92
+ "\u0442": "t" # т
93
+ "\u0443": "" # у
94
+ "\u0432": "v" # в
95
+ "\u044B": "y" # ы
96
+ "\u0437": "z" # з
97
+ "\u0447": "ch" # ч
98
+ "\u044F": "ia" # я
99
+ "\u044E": "i" # ю
100
+ "\u0445": "h" # х
101
+ "\u0448": "sh" # ш
102
+ "\u0449": "shch" # щ
103
+ "\u0446": "c" # ц
104
+ "\u0436": "zh" # ж
105
+ "\u0491": "g" # ґ
106
+ "\u045E": "" # ў
107
+ "\u046B": "" # ѫ
108
+ "\u0452": "d" # ђ
109
+ "\u0455": "dz" # ѕ
110
+ "\u0458": "j" # ј
111
+ "\u0459": "lj" # љ
112
+ "\u045A": "nj" # њ
113
+ "\u04BB": "c" # һ
114
+ "\u045F": "dj" # џ
115
+ "\u0454": "ie" # є
116
+ "\u0457": "i" # ї
117
+ "\u0453": "gj" # ѓ