interscript 0.1.1 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (170) hide show
  1. checksums.yaml +4 -4
  2. data/README.adoc +250 -17
  3. data/bin/interscript +38 -17
  4. data/bin/setup +8 -0
  5. data/lib/__pycache__/g2pwrapper.cpython-38.pyc +0 -0
  6. data/lib/g2pwrapper.py +34 -0
  7. data/lib/interscript-opal.rb +2 -0
  8. data/lib/interscript.rb +138 -20
  9. data/lib/interscript/command.rb +28 -0
  10. data/lib/interscript/fs.rb +71 -0
  11. data/lib/interscript/mapping.rb +142 -0
  12. data/lib/interscript/opal.rb +27 -0
  13. data/lib/interscript/opal/maps.js.erb +10 -0
  14. data/lib/interscript/opal_map_translate.rb +12 -0
  15. data/lib/interscript/version.rb +1 -1
  16. data/lib/model-7 +0 -0
  17. data/lib/tha-pt-b-7 +0 -0
  18. data/maps/acadsin-zho-Hani-Latn-2002.yaml +38912 -0
  19. data/maps/alalc-amh-Ethi-Latn-1997.yaml +509 -0
  20. data/maps/alalc-amh-Ethi-Latn-2011.yaml +138 -0
  21. data/maps/alalc-ara-Arab-Latn-1997.yaml +1283 -0
  22. data/maps/alalc-asm-Deva-Latn-1997.yaml +159 -0
  23. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +141 -0
  24. data/maps/alalc-bel-Cyrl-Latn-1997.yaml +125 -0
  25. data/maps/alalc-ben-Beng-Latn-2017.yaml +130 -0
  26. data/maps/alalc-bul-Cyrl-Latn-1997.yaml +94 -0
  27. data/maps/alalc-ell-Grek-Latn-1997.yaml +624 -0
  28. data/maps/alalc-ell-Grek-Latn-2010.yaml +627 -0
  29. data/maps/alalc-hin-Deva-Latn-2020.yaml +159 -0
  30. data/maps/alalc-kat-Geok-Latn-1997.yaml +111 -0
  31. data/maps/alalc-kat-Geor-Latn-1997.yaml +146 -0
  32. data/maps/alalc-kor-Hang-Latn-1997.yaml +94 -0
  33. data/maps/alalc-mar-Deva-Latn-1997.yaml +170 -0
  34. data/maps/alalc-mkd-Cyrl-Latn-1997.yaml +114 -0
  35. data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +103 -0
  36. data/maps/alalc-pan-Deva-Latn-1997.yaml +237 -0
  37. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +221 -0
  38. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +162 -0
  39. data/maps/alalc-srp-Cyrl-Latn-1997.yaml +114 -0
  40. data/maps/alalc-srp-Cyrl-Latn-2013.yaml +135 -0
  41. data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +141 -0
  42. data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +16 -0
  43. data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +283 -0
  44. data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +174 -0
  45. data/maps/bas-rus-Cyrl-Latn-2017-oss.yaml +169 -0
  46. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +292 -0
  47. data/maps/bgn-kor-Hang-Latn-1943.yaml +31 -0
  48. data/maps/bgn-kor-Kore-Latn-1943.yaml +31 -0
  49. data/maps/bgna-bul-Cyrl-Latn-2006.yaml +208 -0
  50. data/maps/bgna-bul-Cyrl-Latn-2009.yaml +208 -0
  51. data/maps/bgnpcgn-amh-Ethi-Latn-1967.yaml +528 -0
  52. data/maps/bgnpcgn-ara-Arab-Latn-1956.yaml +592 -0
  53. data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +108 -0
  54. data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +104 -0
  55. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +184 -0
  56. data/maps/bgnpcgn-bel-Cyrl-Latn-1979.yaml +285 -0
  57. data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +115 -0
  58. data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +38 -0
  59. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +701 -0
  60. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +19 -0
  61. data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +257 -0
  62. data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +127 -0
  63. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +42 -0
  64. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +253 -0
  65. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +48 -0
  66. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +48 -0
  67. data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +159 -0
  68. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +190 -0
  69. data/maps/bgnpcgn-nep-Deva-Latn-2011.yaml +200 -0
  70. data/maps/bgnpcgn-per-Arab-Latn-1956.yaml +92 -0
  71. data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +314 -0
  72. data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +166 -0
  73. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +162 -0
  74. data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +208 -0
  75. data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +7456 -0
  76. data/maps/bis-asm-Beng-Latn-13194-1991.yaml +159 -0
  77. data/maps/bis-ben-Beng-Latn-13194-1991.yaml +156 -0
  78. data/maps/bis-dev-Deva-Latn-13194-1991.yaml +184 -0
  79. data/maps/bis-gjr-Gujr-Latn-13194-1991.yaml +166 -0
  80. data/maps/bis-knd-Knda-Latn-13194-1991.yaml +173 -0
  81. data/maps/bis-mlm-Mlym-Latn-13194-1991.yaml +176 -0
  82. data/maps/bis-ori-Orya-Latn-13194-1991.yaml +160 -0
  83. data/maps/bis-pnj-Guru-Latn-13194-1991.yaml +175 -0
  84. data/maps/bis-tel-Telu-Latn-13194-1991.yaml +170 -0
  85. data/maps/bis-tml-Taml-Latn-13194-1991.yaml +155 -0
  86. data/maps/by-bel-Cyrl-Latn-1998.yaml +168 -0
  87. data/maps/by-bel-Cyrl-Latn-2007.yaml +115 -0
  88. data/maps/dos-nep-Deva-Latn-1997.yaml +33 -0
  89. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +684 -0
  90. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +680 -0
  91. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +19 -0
  92. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +31 -0
  93. data/maps/ggg-kat-Geor-Latn-2002.yaml +88 -0
  94. data/maps/gki-bel-Cyrl-Latn-1992.yaml +33 -0
  95. data/maps/gki-bel-Cyrl-Latn-2000.yaml +201 -0
  96. data/maps/gost-rus-Cyrl-Latn-16876-71-1983.yaml +186 -0
  97. data/maps/hk-yue-Hani-Latn-1888.yaml +38497 -0
  98. data/maps/icao-bel-Cyrl-Latn-9303.yaml +136 -0
  99. data/maps/icao-bul-Cyrl-Latn-9303.yaml +118 -0
  100. data/maps/icao-heb-Hebr-Latn-9303.yaml +151 -0
  101. data/maps/icao-mkd-Cyrl-Latn-9303.yaml +117 -0
  102. data/maps/icao-per-Arab-Latn-9303.yaml +103 -0
  103. data/maps/icao-rus-Cyrl-Latn-9303.yaml +117 -0
  104. data/maps/icao-srp-Cyrl-Latn-9303.yaml +117 -0
  105. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +119 -0
  106. data/maps/iso-ara-Arab-Latn-233-1984.yaml +323 -0
  107. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +609 -0
  108. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +40 -0
  109. data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +62 -0
  110. data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +271 -0
  111. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +109 -0
  112. data/maps/kp-kor-Hang-Latn-2002.yaml +901 -0
  113. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +44820 -0
  114. data/maps/mext-jpn-Hrkt-Latn-1954.yaml +411 -0
  115. data/maps/moct-kor-Hang-Latn-2000.yaml +803 -0
  116. data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +541 -0
  117. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +225 -0
  118. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +63 -0
  119. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +109 -0
  120. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +37 -0
  121. data/maps/nil-kor-Hang-Hang-jamo.yaml +11193 -0
  122. data/maps/odni-aze-Cyrl-Latn-2015.yaml +144 -0
  123. data/maps/odni-bel-Cyrl-Latn-2015.yaml +148 -0
  124. data/maps/odni-bul-Cyrl-Latn-2015.yaml +96 -0
  125. data/maps/odni-hin-Deva-Latn-2015.yaml +258 -0
  126. data/maps/odni-kat-Geor-Latn-2015.yaml +87 -0
  127. data/maps/odni-kaz-Cyrl-Latn-2015.yaml +148 -0
  128. data/maps/odni-kir-Cyrl-Latn-2015.yaml +136 -0
  129. data/maps/odni-mkd-Cyrl-Latn-2015.yaml +122 -0
  130. data/maps/odni-rus-Cyrl-Latn-2015.yaml +77 -0
  131. data/maps/odni-srp-Cyrl-Latn-2015.yaml +129 -0
  132. data/maps/odni-tat-Cyrl-Latn-2015.yaml +142 -0
  133. data/maps/odni-tgk-Cyrl-Latn-2015.yaml +148 -0
  134. data/maps/odni-uig-Cyrl-Latn-2015.yaml +138 -0
  135. data/maps/odni-ukr-Cyrl-Latn-2015.yaml +157 -0
  136. data/maps/odni-urd-Arab-Latn-2015.yaml +221 -0
  137. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +166 -0
  138. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +90 -0
  139. data/maps/royin-tha-Thai-Latn-1968.yaml +179 -0
  140. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +180 -0
  141. data/maps/royin-tha-Thai-Latn-1999.yaml +76 -0
  142. data/maps/sac-zho-Hans-Latn-1979.yaml +24759 -0
  143. data/maps/ses-ara-Arab-Latn-1930.yaml +279 -0
  144. data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +222 -0
  145. data/maps/ua-ukr-Cyrl-Latn-1996.yaml +193 -0
  146. data/maps/un-ara-Arab-Latn-1971.yaml +139 -0
  147. data/maps/un-ara-Arab-Latn-1972.yaml +159 -0
  148. data/maps/un-ara-Arab-Latn-2017.yaml +420 -0
  149. data/maps/un-bel-Cyrl-Latn-2007.yaml +114 -0
  150. data/maps/un-ben-Beng-Latn-2016.yaml +534 -0
  151. data/maps/un-ell-Grek-Latn-1987-tl.yaml +31 -0
  152. data/maps/un-ell-Grek-Latn-1987-ts.yaml +19 -0
  153. data/maps/un-ell-Grek-Latn-phonetic-1987.yaml +780 -0
  154. data/maps/un-mon-Mong-Latn-2013.yaml +99 -0
  155. data/maps/un-nep-Deva-Latn-1972.yaml +163 -0
  156. data/maps/un-rus-Cyrl-Latn-1987.yaml +166 -0
  157. data/maps/un-ukr-Cyrl-Latn-1998.yaml +30 -0
  158. data/maps/ungegn-amh-Ethi-Latn-2016.yaml +575 -0
  159. data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +406 -0
  160. data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +386 -0
  161. data/maps/var-kor-Hang-Latn-mr-1939.yaml +1054 -0
  162. data/maps/var-kor-Kore-Hang-2013.yaml +59754 -0
  163. data/maps/var-kor-Kore-Latn-mr-1939.yaml +36 -0
  164. data/maps/var-tha-Thai-Thai-phonemic.yaml +59 -0
  165. data/maps/var-tha-Thai-Zsym-ipa.yaml +301 -0
  166. data/maps/var-zho-Hani-Latn-1979.yaml +38908 -0
  167. data/spec/interscript/mapping_spec.rb +42 -0
  168. data/spec/interscript_spec.rb +26 -0
  169. data/spec/spec_helper.rb +3 -0
  170. metadata +298 -18
@@ -0,0 +1,627 @@
1
+ ---
2
+ authority_id: alalc
3
+ id: 2010
4
+ language: ell
5
+ source_script: Grek
6
+ destination_script: Latn
7
+ name: Greek Romanization, 2010
8
+ url: http://catdir.loc.gov/catdir/cpso/romanization/greek.pdf
9
+ creation_date: 2010
10
+ description: |
11
+ ALA-LC Romanization table for Greek
12
+
13
+ note:
14
+ - Applies to texts after 1453 (Modern Greek)
15
+ - This table presupposes monotonic accentuation; rough breathings are accordingly not addressed.
16
+ - Generalised gramma digraph rule to capitals
17
+
18
+ tests:
19
+
20
+ - source: |
21
+ Ένα πράμα μόνον με παρακίνησε κι εμένα να γράψω ότι τούτην την πατρίδα την έχομεν όλοι μαζί, και σοφοί κι αμαθείς και πλούσιοι και φτωχοί και πολιτικοί και στρατιωτικοί και οι πλέον μικρότεροι άνθρωποι· όσοι αγωνιστήκαμεν, αναλόγως ο καθείς, έχομεν να ζήσομεν εδώ. Το λοιπόν δουλέψαμεν όλοι μαζί, να την φυλάμεν κι όλοι μαζί και να μην λέγει ούτε ο δυνατός «εγώ» ούτε ο αδύνατος. Ξέρετε πότε να λέγει ο καθείς «εγώ»; Όταν αγωνιστεί μόνος του και φκιάσει ή χαλάσει, να λέγει «εγώ»· όταν όμως αγωνίζονται πολλοί και φκιάνουν, τότε να λένε «εμείς». Είμαστε εις το «εμείς» κι όχι εις το «εγώ». Και εις το εξής να μάθομεν γνώση, αν θέλομεν να φκιάσομεν χωριόν, να ζήσομεν όλοι μαζί.
22
+
23
+ Γιάννης Μακρυγιάννης.
24
+
25
+ expected: |
26
+ Ena prama monon me parakinēse ki emena na grapsō oti toutēn tēn patrida tēn echomen oloi mazi, kai sophoi ki amatheis kai plousioi kai phtōchoi kai politikoi kai stratiōtikoi kai oi pleon mikroteroi anthrōpoi; osoi agōnistēkamen, analogōs o katheis, echomen na zēsomen edō. To loipon doulepsamen oloi mazi, na tēn phylamen ki oloi mazi kai na mēn legei oute o dynatos «egō» oute o adynatos. Xerete pote na legei o katheis «egō»? Otan agōnistei monos tou kai phkiasei ē chalasei, na legei «egō»; otan omōs agōnizontai polloi kai phkianoun, tote na lene «emeis». Eimaste eis to «emeis» ki ochi eis to «egō». Kai eis to exēs na mathomen gnōsē, an thelomen na phkiasomen chōrion, na zēsomen oloi mazi.
27
+
28
+ Giannēs Makrygiannēs.
29
+
30
+
31
+ - source: ΑΘΗΝΑ
32
+ expected: ATHĒNA
33
+ - source: μπαμπάκι
34
+ expected: bampaki
35
+ - source: νταντά
36
+ expected: ḏanta
37
+ - source: γκέγκε
38
+ expected: gkenke
39
+ - source: Γκαμπόν
40
+ expected: Gkampon
41
+ - source: Μάγχη
42
+ expected: Manchē
43
+ - source: κογξ
44
+ expected: konx
45
+ - source: υιός
46
+ expected: uios
47
+ - source: Υιός
48
+ expected: Uios
49
+ - source: νεράντζι
50
+ expected: nerantzi
51
+ - source: Γοίθιος
52
+ expected: Goithios
53
+ - source: μπέικον
54
+ expected: beikon
55
+ - source: μπέϊκον
56
+ expected: beikon
57
+ - source: βόλεϊ
58
+ expected: volei
59
+ - source: αθεΐα
60
+ expected: atheia
61
+ - source: Εϊγιαφιάτλαγιοκουτλ
62
+ expected: Eigiaphiatlagiokoutl
63
+ - source: Εΐτζι
64
+ expected: Eitzi
65
+ - source: Μυρτώο
66
+ expected: Myrtōo
67
+ - source: αέρας
68
+ expected: aeras
69
+ - source: γαυ γαυ
70
+ expected: gau gau
71
+ - source: Ταΰγετος
72
+ expected: Taygetos
73
+ - source: σπρέυ
74
+ expected: sprey
75
+
76
+ - source: Αθήνα
77
+ expected: Athēna
78
+ - source: Άγιον Όρος
79
+ expected: Agion Oros
80
+ - source: Άγραφα
81
+ expected: Agrapha
82
+ - source: Αγρίνιο
83
+ expected: Agrinio
84
+ - source: Αίγινα
85
+ expected: Aigina
86
+ - source: Αίγιο
87
+ expected: Aigio
88
+ - source: Αλεξανδρούπολη
89
+ expected: Alexandroupolē
90
+ - source: Αλεποχώρι
91
+ expected: Alepochōri
92
+ - source: Αμοργός
93
+ expected: Amorgos
94
+ - source: Άμφισσα
95
+ expected: Amphissa
96
+ - source: Αράχωβα
97
+ expected: Arachōva
98
+ - source: Άργος
99
+ expected: Argos
100
+ - source: Αρκαδία
101
+ expected: Arkadia
102
+ - source: Άρτα
103
+ expected: Arta
104
+ - source: Βελούχι
105
+ expected: Velouchi
106
+ - source: Βέροια
107
+ expected: Veroia
108
+ - source: Βοιωτία
109
+ expected: Voiōtia
110
+ - source: Βόλος
111
+ expected: Volos
112
+ - source: Βόνιτσα
113
+ expected: Vonitsa
114
+ - source: Γαλαξίδι
115
+ expected: Galaxidi
116
+ - source: Γαλάτσι
117
+ expected: Galatsi
118
+ - source: Γιαννιτσά
119
+ expected: Giannitsa
120
+ - source: Γλυφάδα
121
+ expected: Glyphada
122
+ - source: Γρανίτσα
123
+ expected: Granitsa
124
+ - source: Γρεβενά
125
+ expected: Grevena
126
+ - source: Γύθειο
127
+ expected: Gytheio
128
+ - source: Διόνυσος
129
+ expected: Dionysos
130
+ - source: Δίστομο
131
+ expected: Distomo
132
+ - source: Δολιανά
133
+ expected: Doliana
134
+ - source: Δράμα
135
+ expected: Drama
136
+ - source: Δωδεκάνησα
137
+ expected: Dōdekanēsa
138
+ - source: Έδεσσα
139
+ expected: Edessa
140
+ - source: Ελευσίνα
141
+ expected: Eleusina
142
+ - source: Επίδαυρος
143
+ expected: Epidauros
144
+ - source: Επτάνησα
145
+ expected: Eptanēsa
146
+ - source: Ερμούπολη
147
+ expected: Ermoupolē
148
+ - source: Εύβοια
149
+ expected: Euvoia
150
+ - source: Ζάκυνθος
151
+ expected: Zakynthos
152
+ - source: Ήπειρος
153
+ expected: Ēpeiros
154
+ - source: Ηράκλειο
155
+ expected: Ērakleio
156
+ - source: Θάσος
157
+ expected: Thasos
158
+ - source: Θεσσαλονίκη
159
+ expected: Thessalonikē
160
+ - source: Θεσσαλία
161
+ expected: Thessalia
162
+ - source: Θεσπρωτία
163
+ expected: Thesprōtia
164
+ - source: Θήβα
165
+ expected: Thēva
166
+ - source: Θράκη
167
+ expected: Thrakē
168
+ - source: Ιθάκη
169
+ expected: Ithakē
170
+ - source: Ίος
171
+ expected: Ios
172
+ - source: Ιωάννινα
173
+ expected: Iōannina
174
+ - source: Καβάλα
175
+ expected: Kavala
176
+ - source: Καλάβρυτα
177
+ expected: Kalavryta
178
+ - source: Καλαμάτα
179
+ expected: Kalamata
180
+ - source: Καλαμπάκα
181
+ expected: Kalampaka
182
+ - source: Καλύβια
183
+ expected: Kalyvia
184
+ - source: Κάλυμνος
185
+ expected: Kalymnos
186
+ - source: Καρδίτσα
187
+ expected: Karditsa
188
+ - source: Καρπενήσι
189
+ expected: Karpenēsi
190
+ - source: Κάρυστος
191
+ expected: Karystos
192
+ - source: Καστελλόριζο
193
+ expected: Kastellorizo
194
+ - source: Καστοριά
195
+ expected: Kastoria
196
+ - source: Κατερίνη
197
+ expected: Katerinē
198
+ - source: Κάτω Αχαΐα
199
+ expected: Katō Achaia
200
+ - source: Κερατέα
201
+ expected: Keratea
202
+ - source: Κέρκυρα
203
+ expected: Kerkyra
204
+ - source: Κεφαλλονιά
205
+ expected: Kephallonia
206
+ - source: Κηφισιά
207
+ expected: Kēphisia
208
+ - source: Κιλκίς
209
+ expected: Kilkis
210
+ - source: Κοζάνη
211
+ expected: Kozanē
212
+ - source: Κολωνός
213
+ expected: Kolōnos
214
+ - source: Κομοτηνή
215
+ expected: Komotēnē
216
+ - source: Κόρινθος
217
+ expected: Korinthos
218
+ - source: Κορώνη
219
+ expected: Korōnē
220
+ - source: Κρανίδι
221
+ expected: Kranidi
222
+ - source: Κρέστενα
223
+ expected: Krestena
224
+ - source: Κρήτη
225
+ expected: Krētē
226
+ - source: Κύθηρα
227
+ expected: Kythēra
228
+ - source: Κυκλάδες
229
+ expected: Kyklades
230
+ - source: Κύμη
231
+ expected: Kymē
232
+ - source: Κυψέλη
233
+ expected: Kypselē
234
+ - source: Κως
235
+ expected: Kōs
236
+ - source: Λαγκαδάς
237
+ expected: Lankadas
238
+ - source: Λαμία
239
+ expected: Lamia
240
+ - source: Λάρισα
241
+ expected: Larisa
242
+ - source: Λαύριο
243
+ expected: Laurio
244
+ - source: Λέρος
245
+ expected: Leros
246
+ - source: Λέσβος
247
+ expected: Lesvos
248
+ - source: Λευκάδα
249
+ expected: Leukada
250
+ - source: Λήμνος
251
+ expected: Lēmnos
252
+ - source: Λιβαδειά
253
+ expected: Livadeia
254
+ - source: Μακεδονία
255
+ expected: Makedonia
256
+ - source: Μάνη
257
+ expected: Manē
258
+ - source: Μαραθώνας
259
+ expected: Marathōnas
260
+ - source: Μαρκόπουλο
261
+ expected: Markopoulo
262
+ - source: Μαρούσι
263
+ expected: Marousi
264
+ - source: Μέγαρα
265
+ expected: Megara
266
+ - source: Μεσολόγγι
267
+ expected: Mesolongi
268
+ - source: Μεταξουργείο
269
+ expected: Metaxourgeio
270
+ - source: Μέτσοβο
271
+ expected: Metsovo
272
+ - source: Μήλος
273
+ expected: Mēlos
274
+ - source: Μύκονος
275
+ expected: Mykonos
276
+ - source: Μυστράς
277
+ expected: Mystras
278
+ - source: Μυτιλήνη
279
+ expected: Mytilēnē
280
+ - source: Νάξος
281
+ expected: Naxos
282
+ - source: Νάουσα
283
+ expected: Naousa
284
+ - source: Ναύπακτος
285
+ expected: Naupaktos
286
+ - source: Ναύπλιο
287
+ expected: Nauplio
288
+ - source: Νέα Σμύρνη
289
+ expected: Nea Smyrnē
290
+ - source: Νίσυρος
291
+ expected: Nisyros
292
+ - source: Ξάνθη
293
+ expected: Xanthē
294
+ - source: Όλυμπος
295
+ expected: Olympos
296
+ - source: Παγκράτι
297
+ expected: Pankrati
298
+ - source: Παπάγου
299
+ expected: Papagou
300
+ - source: Πάρος
301
+ expected: Paros
302
+ - source: Πασαλιμάνι
303
+ expected: Pasalimani
304
+ - source: Πατήσια
305
+ expected: Patēsia
306
+ - source: Πάτμος
307
+ expected: Patmos
308
+ - source: Πάτρα
309
+ expected: Patra
310
+ - source: Πειραιάς
311
+ expected: Peiraias
312
+ - source: Πελοπόννησος
313
+ expected: Peloponnēsos
314
+ - source: Περιστέρι
315
+ expected: Peristeri
316
+ - source: Πεύκη
317
+ expected: Peukē
318
+ - source: Πήλιο
319
+ expected: Pēlio
320
+ - source: Πολύγυρος
321
+ expected: Polygyros
322
+ - source: Πόρος
323
+ expected: Poros
324
+ - source: Πρέβεζα
325
+ expected: Preveza
326
+ - source: Πτολεμαΐδα
327
+ expected: Ptolemaida
328
+ - source: Πύλος
329
+ expected: Pylos
330
+ - source: Πύργος
331
+ expected: Pyrgos
332
+ - source: Ρέθυμνο
333
+ expected: Rethymno
334
+ - source: Ρόδος
335
+ expected: Rodos
336
+ - source: Ρούμελη
337
+ expected: Roumelē
338
+ - source: Σαλαμίνα
339
+ expected: Salamina
340
+ - source: Σαμοθράκη
341
+ expected: Samothrakē
342
+ - source: Σάμος
343
+ expected: Samos
344
+ - source: Σαντορίνη
345
+ expected: Santorinē
346
+ - source: Σέρρες
347
+ expected: Serres
348
+ - source: Σίκινος
349
+ expected: Sikinos
350
+ - source: Σίφνος
351
+ expected: Siphnos
352
+ - source: Σκιάθος
353
+ expected: Skiathos
354
+ - source: Σκόπελος
355
+ expected: Skopelos
356
+ - source: Σούλι
357
+ expected: Souli
358
+ - source: Σπάρτη
359
+ expected: Spartē
360
+ - source: Στερεά Ελλάδα
361
+ expected: Sterea Ellada
362
+ - source: Στύρα
363
+ expected: Styra
364
+ - source: Σύμη
365
+ expected: Symē
366
+ - source: Σύρος
367
+ expected: Syros
368
+ - source: Σφακιά
369
+ expected: Sphakia
370
+ - source: Τήλος
371
+ expected: Tēlos
372
+ - source: Τήνος
373
+ expected: Tēnos
374
+ - source: Τρίκαλα
375
+ expected: Trikala
376
+ - source: Τρίπολη
377
+ expected: Tripolē
378
+ - source: Τσακωνιά
379
+ expected: Tsakōnia
380
+ - source: Ύδρα
381
+ expected: Ydra
382
+ - source: Φάληρο
383
+ expected: Phalēro
384
+ - source: Φλώρινα
385
+ expected: Phlōrina
386
+ - source: Φολέγανδρος
387
+ expected: Pholegandros
388
+ - source: Χάλκη
389
+ expected: Chalkē
390
+ - source: Χαλκίδα
391
+ expected: Chalkida
392
+ - source: Χαλάνδρι
393
+ expected: Chalandri
394
+ - source: Χαλκιδική
395
+ expected: Chalkidikē
396
+ - source: Χανιά
397
+ expected: Chania
398
+ - source: Χίος
399
+ expected: Chios
400
+ - source: Ψαρά
401
+ expected: Psara
402
+ - source: Αβάνα
403
+ expected: Avana
404
+ - source: Αγγλία
405
+ expected: Anglia
406
+ - source: Αϊβαλί
407
+ expected: Aivali
408
+ - source: Αλεξάνδρεια
409
+ expected: Alexandreia
410
+ - source: Άμστερνταμ
411
+ expected: Amsterntam
412
+ - source: Βαυαρία
413
+ expected: Vauaria
414
+ - source: Βενετία
415
+ expected: Venetia
416
+ - source: Βερολίνο
417
+ expected: Verolino
418
+ - source: Βερόνα
419
+ expected: Verona
420
+ - source: Βιέννη
421
+ expected: Viennē
422
+ - source: Γένοβα
423
+ expected: Genova
424
+ - source: Δουβλίνο
425
+ expected: Douvlino
426
+ - source: Καλαβρία
427
+ expected: Kalavria
428
+ - source: Καλιφόρνια
429
+ expected: Kaliphornia
430
+ - source: Καύκασος
431
+ expected: Kaukasos
432
+ - source: Κονγκό
433
+ expected: Konnko
434
+ - source: Κορσική
435
+ expected: Korsikē
436
+ - source: Κουρδιστάν
437
+ expected: Kourdistan
438
+ - source: Κωνσταντινούπολη
439
+ expected: Kōnstantinoupolē
440
+ - source: Κατεχόμενη Κύπρος
441
+ expected: Katechomenē Kypros
442
+ - source: Λαπωνία
443
+ expected: Lapōnia
444
+ - source: Λευκωσία
445
+ expected: Leukōsia
446
+ - source: Λιβόρνο
447
+ expected: Livorno
448
+ - source: Λονδίνο
449
+ expected: Londino
450
+ - source: Λυών
451
+ expected: Lyōn
452
+ - source: Μάλαγα
453
+ expected: Malaga
454
+ - source: Μασσαλία
455
+ expected: Massalia
456
+ - source: Μικρονησία
457
+ expected: Mikronēsia
458
+ - source: Μιλάνο
459
+ expected: Milano
460
+ - source: Μόσχα
461
+ expected: Moscha
462
+ - source: Μπολόνια
463
+ expected: Bolonia
464
+ - source: Νάπολη
465
+ expected: Napolē
466
+ - source: Νταγκεστάν
467
+ expected: Ḏankestan
468
+ - source: Νέα Υόρκη
469
+ expected: Nea Yorkē
470
+ - source: Οξφόρδη
471
+ expected: Oxphordē
472
+ - source: Ουαλία
473
+ expected: Oualia
474
+ - source: Παρίσι
475
+ expected: Parisi
476
+ - source: Πάφος
477
+ expected: Paphos
478
+ - source: Πολυνησία
479
+ expected: Polynēsia
480
+ - source: Ρώμη
481
+ expected: Rōmē
482
+ - source: Σαμάρεια
483
+ expected: Samareia
484
+ - source: Σικελία
485
+ expected: Sikelia
486
+ - source: Σκανδιναβία
487
+ expected: Skandinavia
488
+ - source: Σκόπια
489
+ expected: Skopia
490
+ - source: Σκωτία
491
+ expected: Skōtia
492
+ - source: Σμύρνη
493
+ expected: Smyrnē
494
+ - source: Ταϊτή
495
+ expected: Taitē
496
+ - source: Ταταρστάν
497
+ expected: Tatarstan
498
+ - source: Τζαμάικα
499
+ expected: Tzamaika
500
+ - source: Τηλλυρία
501
+ expected: Tēllyria
502
+ - source: Τιρόλο
503
+ expected: Tirolo
504
+ - source: Τορίνο
505
+ expected: Torino
506
+ - source: Φανάρι
507
+ expected: Phanari
508
+ - source: Φλωρεντία
509
+ expected: Phlōrentia
510
+ - source: Χαβάη
511
+ expected: Chavaē
512
+ - source: Χονγκ Κονγκ
513
+ expected: Chongk Kongk
514
+
515
+ map:
516
+ # https://en.wikipedia.org/wiki/Romanization_of_Greek
517
+ rules:
518
+ - pattern: (?<=[ΑαΕεΟοΗηΩω])\u03A5 # Υ (after Α, Ε, Ο, Η, Ω)
519
+ result: U
520
+ - pattern: (?<=[ΑαΕεΟοΗηΩω])\u03C5 # υ (after Α, Ε, Ο, Η, Ω)
521
+ result: u
522
+ - pattern: (?<=[ΑαΕεΟοΗηΩω])\u03CD # ύ (after Α, Ε, Ο, Η, Ω)
523
+ result: u
524
+ - pattern: \u03A5(?=[Ιιί]) # Υ (before Ι)
525
+ result: U
526
+ - pattern: \u03C5(?=[Ιιί]) # Υ (before Ι)
527
+ result: u
528
+ - pattern: \u0393(?=[γΓξΞχΧ]) # Γ (before Γ, Ξ, Χ)
529
+ result: N
530
+ - pattern: \u03B3(?=[γΓξΞχΧ]) # γ (before Γ, Ξ, Χ)
531
+ result: n
532
+ - pattern: (?<=[[:alpha:]])\u0393(?=[κΚ][[:alpha:]]) # Γ (before Κ medially)
533
+ result: N
534
+ - pattern: (?<=[[:alpha:]])\u03B3(?=[κΚ][[:alpha:]]) # Γ (before Κ medially)
535
+ result: n
536
+ - pattern: (?<=\b)\u039D\u03A4 # ΝΤ
537
+ result: Ḏ
538
+ - pattern: (?<=\b)\u039D\u03C4 # Ντ
539
+ result: Ḏ
540
+ - pattern: (?<=\b)\u03BD\u03C4 # ντ
541
+ result: ḏ
542
+ - pattern: (?<=\b)\u039C\u03A0 # ΜΠ
543
+ result: B
544
+ - pattern: (?<=\b)\u039C\u03C0 # Μπ
545
+ result: B
546
+ - pattern: (?<=\b)\u03BC\u03C0 # μπ
547
+ result: b
548
+ - pattern: \u037E # ;
549
+ result: "?"
550
+ - pattern: \u003B # ;
551
+ result: "?"
552
+
553
+ characters:
554
+ "\u0027": ""
555
+ "\u0386": "A" # Ά
556
+ "\u0391": "A" # Α
557
+ "\u0392": "V" # Β
558
+ "\u0393": "G" # Γ
559
+ "\u0394": "D" # Δ
560
+ "\u0395": "E" # Ε
561
+ "\u0396": "Z" # Ζ
562
+ "\u0397": "Ē" # Η
563
+ "\u0398": "Th" # Θ
564
+ "\u0399": "I" # Ι
565
+ "\u039A": "K" # Κ
566
+ "\u039B": "L" # Λ
567
+ "\u039C": "M" # Μ
568
+ "\u039D": "N" # Ν
569
+ "\u039E": "X" # Ξ
570
+ "\u039F": "O" # Ο
571
+ "\u03A0": "P" # Π
572
+ "\u03A1": "R" # Ρ
573
+ "\u03A3": "S" # Σ
574
+ "\u03A4": "T" # Τ
575
+ "\u03A5": "Y" # Υ
576
+ "\u03A6": "Ph" # Φ
577
+ "\u03A7": "Ch" # Χ
578
+ "\u03A8": "Ps" # Ψ
579
+ "\u03A9": "Ō" # Ω
580
+ "\u0388": "E" # Έ
581
+ "\u0389": "Ē" # Ή
582
+ "\u038A": "I" # Ί
583
+ "\u038C": "O" # Ό
584
+ "\u038E": "Y" # Ύ
585
+ "\u038F": "Ō" # Ώ
586
+ "\u03AA": "I" # Ϊ
587
+ "\u03AB": "Y" # Ϋ
588
+
589
+ "\u03AC": "a" # ά
590
+ "\u03B1": "a" # α
591
+ "\u03B2": "v" # β
592
+ "\u03B3": "g" # γ
593
+ "\u03B4": "d" # δ
594
+ "\u03B5": "e" # ε
595
+ "\u03B6": "z" # ζ
596
+ "\u03B7": "ē" # η
597
+ "\u03B8": "th" # θ
598
+ "\u03B9": "i" # ι
599
+ "\u03BA": "k" # κ
600
+ "\u03BB": "l" # λ
601
+ "\u03BC": "m" # μ
602
+ "\u03BD": "n" # ν
603
+ "\u03BE": "x" # ξ
604
+ "\u03BF": "o" # ο
605
+ "\u03C0": "p" # π
606
+ "\u03C1": "r" # ρ
607
+ "\u03C3": "s" # σ
608
+ "\u03C2": "s" # ς
609
+ "\u03C4": "t" # τ
610
+ "\u03C5": "y" # υ
611
+ "\u03C6": "ph" # φ
612
+ "\u03C7": "ch" # χ
613
+ "\u03C8": "ps" # ψ
614
+ "\u03C9": "ō" # ω
615
+ "\u03AD": "e" # έ
616
+ "\u03AE": "ē" # ή
617
+ "\u03AF": "i" # ί
618
+ "\u03CC": "o" # ό
619
+ "\u03CD": "y" # ύ
620
+ "\u03CE": "ō" # ώ
621
+ "\u03CA": "i" # ϊ
622
+ "\u03CB": "y" # ϋ
623
+ "\u0390": "i" # ΐ
624
+ "\u03B0": "y" # ΰ
625
+
626
+ "\u0387": ";" # ·
627
+ "\u00B7": ";" # ·