interscript 0.1.5 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/lib/__pycache__/g2pwrapper.cpython-38.pyc +0 -0
  3. data/lib/interscript.rb +5 -1
  4. data/lib/interscript/fs.rb +3 -1
  5. data/lib/interscript/mapping.rb +2 -2
  6. data/lib/interscript/opal.rb +5 -1
  7. data/lib/interscript/opal/maps.js.erb +7 -4
  8. data/lib/interscript/version.rb +1 -1
  9. data/maps/acadsin-zho-Hani-Latn-2002.yaml +1 -1
  10. data/maps/alalc-amh-Ethi-Latn-1997.yaml +509 -0
  11. data/maps/alalc-amh-Ethi-Latn-2011.yaml +138 -0
  12. data/maps/alalc-ara-Arab-Latn-1997.yaml +1283 -0
  13. data/maps/alalc-asm-Deva-Latn-1997.yaml +159 -0
  14. data/maps/alalc-aze-Cyrl-Latn-1997.yaml +1 -1
  15. data/maps/{alalc-bel-cyrl-latn-1997.yaml → alalc-bel-Cyrl-Latn-1997.yaml} +2 -2
  16. data/maps/alalc-ell-Grek-Latn-1997.yaml +2 -3
  17. data/maps/alalc-ell-Grek-Latn-2010.yaml +2 -3
  18. data/maps/alalc-hin-Deva-Latn-2020.yaml +159 -0
  19. data/maps/alalc-kat-Geok-Latn-1997.yaml +1 -2
  20. data/maps/alalc-kor-Hang-Latn-1997.yaml +1 -1
  21. data/maps/alalc-mar-Deva-Latn-1997.yaml +170 -0
  22. data/maps/{alalc-mkd-cyrl-latn-1997.yaml → alalc-mkd-Cyrl-Latn-1997.yaml} +0 -0
  23. data/maps/alalc-pan-Deva-Latn-1997.yaml +237 -0
  24. data/maps/alalc-rus-Cyrl-Latn-1997.yaml +1 -2
  25. data/maps/alalc-rus-Cyrl-Latn-2012.yaml +2 -2
  26. data/maps/{alalc-srp-cyrl-latn-2013.yaml → alalc-srp-Cyrl-Latn-2013.yaml} +0 -0
  27. data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +0 -1
  28. data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +0 -2
  29. data/maps/bgn-kor-Hang-Latn-1943.yaml +1 -1
  30. data/maps/bgn-kor-Kore-Latn-1943.yaml +1 -1
  31. data/maps/bgnpcgn-amh-Ethi-Latn-1967.yaml +528 -0
  32. data/maps/bgnpcgn-ara-Arab-Latn-1956.yaml +592 -0
  33. data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +5 -5
  34. data/maps/{bgnpcgn-bel-cyrl-latn-1979.yaml → bgnpcgn-bel-Cyrl-Latn-1979.yaml} +0 -0
  35. data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +3 -4
  36. data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +0 -1
  37. data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +0 -1
  38. data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +17 -17
  39. data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +2 -2
  40. data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +2 -2
  41. data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +1 -1
  42. data/maps/bgnpcgn-nep-Deva-Latn-2011.yaml +200 -0
  43. data/maps/bgnpcgn-per-Arab-Latn-1956.yaml +0 -1
  44. data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +0 -1
  45. data/maps/bis-asm-Beng-Latn-13194-1991.yaml +159 -0
  46. data/maps/bis-ben-Beng-Latn-13194-1991.yaml +156 -0
  47. data/maps/bis-dev-Deva-Latn-13194-1991.yaml +184 -0
  48. data/maps/bis-gjr-Gujr-Latn-13194-1991.yaml +166 -0
  49. data/maps/bis-knd-Knda-Latn-13194-1991.yaml +173 -0
  50. data/maps/bis-mlm-Mlym-Latn-13194-1991.yaml +176 -0
  51. data/maps/bis-ori-Orya-Latn-13194-1991.yaml +160 -0
  52. data/maps/bis-pnj-Guru-Latn-13194-1991.yaml +175 -0
  53. data/maps/bis-tel-Telu-Latn-13194-1991.yaml +170 -0
  54. data/maps/bis-tml-Taml-Latn-13194-1991.yaml +155 -0
  55. data/maps/by-bel-Cyrl-Latn-1998.yaml +4 -4
  56. data/maps/by-bel-Cyrl-Latn-2007.yaml +3 -3
  57. data/maps/dos-nep-Deva-Latn-1997.yaml +33 -0
  58. data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +4 -5
  59. data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +4 -5
  60. data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +0 -1
  61. data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +0 -1
  62. data/maps/ggg-kat-Geor-Latn-2002.yaml +0 -1
  63. data/maps/{gki-bel-cyrl-latn-1992.yaml → gki-bel-Cyrl-Latn-1992.yaml} +1 -1
  64. data/maps/{gki-bel-cyrl-latn-2000.yaml → gki-bel-Cyrl-Latn-2000.yaml} +1 -1
  65. data/maps/{gost-rus-cyrl-latn-16876-71-1983.yaml → gost-rus-Cyrl-Latn-16876-71-1983.yaml} +1 -1
  66. data/maps/icao-bel-Cyrl-Latn-9303.yaml +0 -5
  67. data/maps/icao-bul-Cyrl-Latn-9303.yaml +0 -4
  68. data/maps/icao-per-Arab-Latn-9303.yaml +0 -1
  69. data/maps/icao-rus-Cyrl-Latn-9303.yaml +0 -1
  70. data/maps/icao-ukr-Cyrl-Latn-9303.yaml +0 -1
  71. data/maps/iso-ara-Arab-Latn-233-1984.yaml +323 -0
  72. data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +4 -5
  73. data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +1 -2
  74. data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +0 -1
  75. data/maps/iso-tha-Thai-Latn-11940-1998.yaml +1 -1
  76. data/maps/kp-kor-Hang-Latn-2002.yaml +4 -4
  77. data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +2 -2
  78. data/maps/mvd-bel-Cyrl-Latn-2008.yaml +4 -4
  79. data/maps/mvd-bel-Cyrl-Latn-2010.yaml +4 -4
  80. data/maps/mvd-rus-Cyrl-Latn-2008.yaml +1 -2
  81. data/maps/mvd-rus-Cyrl-Latn-2010.yaml +4 -4
  82. data/maps/nil-kor-Hang-Hang-jamo.yaml +3 -3
  83. data/maps/odni-aze-Cyrl-Latn-2015.yaml +1 -1
  84. data/maps/odni-bel-Cyrl-Latn-2015.yaml +1 -1
  85. data/maps/odni-bul-Cyrl-Latn-2015.yaml +3 -3
  86. data/maps/odni-hin-Deva-Latn-2015.yaml +258 -0
  87. data/maps/odni-kat-Geor-Latn-2015.yaml +0 -1
  88. data/maps/{odni-mkd-cyrl-latn-2015.yaml → odni-mkd-Cyrl-Latn-2015.yaml} +0 -0
  89. data/maps/odni-rus-Cyrl-Latn-2015.yaml +1 -1
  90. data/maps/odni-srp-Cyrl-Latn-2015.yaml +2 -2
  91. data/maps/odni-urd-Arab-Latn-2015.yaml +221 -0
  92. data/maps/odni-uzb-Cyrl-Latn-2015.yaml +1 -2
  93. data/maps/royin-tha-Thai-Latn-1939-generic.yaml +4 -4
  94. data/maps/royin-tha-Thai-Latn-1968.yaml +4 -4
  95. data/maps/royin-tha-Thai-Latn-1999-chained.yaml +4 -4
  96. data/maps/royin-tha-Thai-Latn-1999.yaml +3 -3
  97. data/maps/{ses-ara-arab-latn-1930.yaml → ses-ara-Arab-Latn-1930.yaml} +7 -3
  98. data/maps/un-ara-Arab-Latn-1971.yaml +16 -4
  99. data/maps/un-ara-Arab-Latn-1972.yaml +14 -7
  100. data/maps/un-ara-Arab-Latn-2017.yaml +56 -19
  101. data/maps/un-bel-Cyrl-Latn-2007.yaml +3 -3
  102. data/maps/un-ell-Grek-Latn-1987-tl.yaml +1 -2
  103. data/maps/un-ell-Grek-Latn-1987-ts.yaml +0 -1
  104. data/maps/un-ell-Grek-Latn-phonetic-1987.yaml +42 -42
  105. data/maps/un-mon-Mong-Latn-2013.yaml +9 -3
  106. data/maps/un-nep-Deva-Latn-1972.yaml +163 -0
  107. data/maps/un-rus-Cyrl-Latn-1987.yaml +1 -1
  108. data/maps/{un-ukr-cyrl-latn-1998.yaml → un-ukr-Cyrl-Latn-1998.yaml} +1 -1
  109. data/maps/ungegn-amh-Ethi-Latn-2016.yaml +575 -0
  110. data/maps/var-kor-Hang-Latn-mr-1939.yaml +2 -2
  111. data/maps/var-kor-Kore-Hang-2013.yaml +1 -1
  112. data/maps/var-kor-Kore-Latn-mr-1939.yaml +1 -2
  113. data/maps/var-tha-Thai-Thai-phonemic.yaml +5 -5
  114. data/maps/var-tha-Thai-Zsym-ipa.yaml +12 -12
  115. data/maps/var-zho-Hani-Latn-1979.yaml +7 -7
  116. metadata +41 -15
@@ -85,4 +85,3 @@ map:
85
85
  '\u10ee' : 'kh' # ხ
86
86
  '\u10ef' : 'j' # ჯ
87
87
  '\u10f0' : 'h' # ჰ
88
-
@@ -35,7 +35,7 @@ description: |
35
35
  time been listed in the Factbook or Chiefs of State directory but who no longer appears in those resources
36
36
  (i.e. is no longer a government official), the IC Standard spelling should appear first, with the spelling, if
37
37
  known, as it previously appeared in those resources listed within parentheses at the first usage.
38
-
38
+
39
39
  The primary goal is to produce a consistent Romanized transcription of names that is specifically readable
40
40
  to the English-speaking non-specialist. The system uses the 26 letters of the standard (English) Roman
41
41
  alphabet. Some ambiguities in the Romanized form will occur without the use of diacritics. However,
@@ -35,14 +35,14 @@ description: |
35
35
  longer appears in those resources (i.e. is no longer a government official), the IC Standard
36
36
  spelling should appear first, with the spelling, if known, as it previously appeared in those
37
37
  resources listed within parentheses at the first usage.
38
-
38
+
39
39
  The primary goal is to produce a consistent Romanized transcription of names that is specifically
40
40
  readable to the English-speaking non-specialist. The system uses the 26 letters of the standard
41
41
  (English) Roman alphabet. Some ambiguities in the Romanized form will occur without the use
42
42
  of diacritics. However, within the context of a report, where additional information about the
43
43
  individual is provided, the referent will be clearly identified. This system will be used in
44
44
  conjunction with on-line tools, name dictionaries, and lists containing conventional spellings of
45
- names of well-known individuals.
45
+ names of well-known individuals.
46
46
 
47
47
  notes:
48
48
 
@@ -0,0 +1,221 @@
1
+ ---
2
+ authority_id: odni
3
+ id: 2015
4
+ language: urd
5
+ source_script: Arab
6
+ destination_script: Latn
7
+ name: Office of the Director Of National Intelligence Hindi Urdu Personal Names 2015 System, ICS-630-01 Annex F
8
+ #url:
9
+ creation_date: 2015
10
+ confirmation_date: 2015
11
+ description: |
12
+ This system is the Intelligence Community (IC) standard for the transliteration of names
13
+ from Hindi and Urdu that will be applied to all final written reports and products for IC
14
+ consumers. It is not intended to eliminate variations of a name that can contribute
15
+ forensic information. Rather, it is to provide an IC standard Romanized (English)
16
+ transliteration from standard Hindi and Urdu that can then be linked to forensic
17
+ information in ways that will help identify the referent of the name.
18
+
19
+ There are typically a number of ways that names can be Romanized from either
20
+ Devanagari (Hindi) or modified Arabic (Urdu) scripts. Ambiguities can result from the
21
+ Romanization of Hindi and Urdu names for several reasons, including the fact that some
22
+ sounds in South Asian languages (e.g., retroflex consonants, voiced aspirates) have no
23
+ equivalent in English or other European languages. In the case of Urdu, as in the original
24
+ Arabic source of many Islamic names, short vowel markings, double consonant marks
25
+ and other diacritics that would clearly distinguish the name are almost always omitted
26
+ from standard written texts. And many Islamic names of Arabic or Persian origin reflect
27
+ spelling distinctions from those languages that are lost in modern Urdu pronunciation
28
+ (e.g., three distinct Arabic letters all represent the identical sound [s] for Urdu speakers);
29
+ transliterations might either maintain those spelling distinctions or ignore them entirely.
30
+ And, as in the Arabic source, names containing the Arabic definite article ‘al’ (‘ul’) show
31
+ anticipatory assimilation in pronunciation (e.g., Shams al Din > Shamsuddin);
32
+ transliterations may either reflect spelling or pronunciation in such cases.
33
+
34
+ Because Hindi and Urdu overlap so extensively, it is desirable to correlate Hindi and
35
+ Urdu transliterations as much as possible. In the area of names, this can become
36
+ problematic when the Urdu spelling accurately reflects original Arabic spelling while the
37
+ Hindi spelling was phonetically-based, in essence, already a transliteration. This would
38
+ argue for ignoring Arabic/Urdu spelling distinctions not reflected in pronunciation in
39
+ either Urdu or Hindi (e.g., letter sin versus letter sad) while maintaining Arabic/Urdu
40
+ spelling distinctions like Hindi also maintains (e.g., qaf as in Qutubbin versus kaf)).
41
+ However, this is not always possible (see Hindi va versus Urdu wau).
42
+
43
+ In cases where an individual’s name has already been transliterated, that is to be indicated
44
+ – as found – in parentheses immediately following its rendition in the transliteration
45
+ standard (e.g., Muhammad Khulud (Mohamed Khulood)). In addition, if the original
46
+ Devanagari or Arabic-script spelling is known, that spelling should also appear in
47
+ parentheses following the name, if possible, following best practices of the issuing
48
+ organization and taking into consideration information system capabilities. This
49
+ convention is designed to ensure that vital forensic information is not lost.
50
+
51
+ For names of persons who are known to not be part of the Hindi- or Urdu-speaking
52
+ community, use the relevant IC transliteration standard for names from that language
53
+ (e.g., Mikhail, Yitzhak). A translator’s note may be used to clarify the known origin of
54
+ the person. Spell names of individuals from languages that are written in Roman letters as
55
+ they are spelled in those languages (e.g., George Clooney, Jorge Garcia, Georges
56
+ Pompidou).
57
+
58
+ In the case of active senior government officials in the on-line CIA World Factbook and
59
+ the on-line directory of Chiefs of State and Cabinet Members of Foreign Governments,
60
+ the spellings given in these on-line reference works should be used in place of the IC
61
+ Standard. For any individual who has at one time been listed in the Factbook or Chiefs of
62
+ State directory but who no longer appears in those resources (i.e. is no longer a
63
+ government official), the IC Standard spelling should appear first, with the spelling, if
64
+ known, as it previously appeared in those resources listed within parentheses at the first
65
+ usage.
66
+
67
+ The primary goal of this system is to produce a consistent Romanized transcription of the
68
+ name that is readable to the non-specialist. The system uses the 26 letters of the standard
69
+ (English) Roman alphabet. Some ambiguities in the Romanized form will occur without
70
+ the use of diacritics. However, within the context of a report, where additional
71
+ information about the individual is provided, the referent will be clearly identified.
72
+ Additionally, this system will be used in conjunction with on-line tools, name dictionaries
73
+ and lists containing conventional spellings of names of well-known individuals
74
+
75
+ notes:
76
+
77
+ - |
78
+ Long/Short Vowels: Long and short vowels are not distinguished in the system:
79
+ The borrowed Arabic name Samir could represent two distinct names, one with a
80
+ long /a/ (Saamir) and one with a long /i/ (Samiir). One solution would be to use
81
+ /ee/ to stand for the long /i/, as is often done (Sameer). The IC Standard will not
82
+ distinguish between these.
83
+
84
+ - |
85
+ No distinction is made between: retroflex and non-retroflex consonants; and
86
+ nasalized vowels and vowels followed by /n/.
87
+ - |
88
+ No distinction is made between the several Arabic letters with the same phonetic
89
+ value in Urdu: e.g., letters sin/svad, zal/ze/zoe.
90
+ - |
91
+ A distinction is drawn between Urdu letters qaf and kaf (and correspondingly,
92
+ Hindi qa and ka).
93
+ - |
94
+ A distinction is drawn between aspirated (e.g., /d/) and nonaspirated consonants
95
+ (e.g., /dh/), with the exception of ch/chh, both represented by /ch/.
96
+ - |
97
+ Double consonants: Double consonants represented by the tashdid (shaddah) are
98
+ shown in most cases (e.g., Hassan, Muhammad). Exceptions: consonants
99
+ represented by digraphs are not doubled (e.g., Mubashir [not Mubashshir]).
100
+ - |
101
+ Hamzah (glottal stop) and ayn: Unlike in the Arabic IC Standard, these are not
102
+ represented in the IC standard.
103
+ - |
104
+ Digraphs: No distinction is made between digraphs such as /sh/ and single
105
+ contiguous letters such as /s/ followed by /h/.
106
+ - |
107
+ Arabic definite article “al” (‘the’): Shows sun letter assimilation in the
108
+ Romanized form (e.g., Abdur Rahman rather than Abdal Rahman, rather than
109
+ Arabic IC standard 'Abd al-Rahman).
110
+ - |
111
+ Special Rules
112
+ - |
113
+ Hyphens: Hyphens (-) are NOT used to connect name elements within a name:
114
+ Abdur Rahman. The single exception to this is the izafat (i.e., linking vowel in
115
+ noun-link-modifier construction of Persian origin), which does show a hyphen
116
+ before the /e/ and a following space: Koh-e Nur (‘mountain of light’), “Jaish-e
117
+ xx” (‘Army of xx’ construction).
118
+ - |
119
+ Names incorporating “din” are written as one unit: Azermuddin, Badruddin,
120
+ Faizuddin, Salahuddin.
121
+ - |
122
+ Names that incorporate Allah as part of the name show the Arabic grammatical
123
+ marker /u/ rather than the /a/ of Allah: Abdullah (not Abdallah).
124
+ - |
125
+ Inherent short vowel /a/ in Devanagari is represented with an /a/ in Roman. Final
126
+ consonants are assumed not to have a short /a/ (e.g., masc. name Ram Lal, not
127
+ Rama Lala).
128
+ - |
129
+ As a general rule, Devanagari va is transcribed as a /v/: Vijay, Vishal, etc.
130
+ Exception: /sw/ combination: Saraswati, Krishnaswami. Urdu wau, however, is
131
+ transcribed as /w/: Wasim, Walid.
132
+
133
+ tests:
134
+ - source: "وشال ٹھاکر"
135
+ expected: "ishal tsakr"
136
+ - source: "حسن محمود"
137
+ expected: "hasn mhamid"
138
+ - source: "یوسف خان"
139
+ expected: "iisf khan"
140
+ - source: "معین خان"
141
+ expected: "mein khan"
142
+ - source: "سعید اجمل"
143
+ expected: "seid ajml"
144
+ - source: "انضمام الحق"
145
+ expected: "anzmam alhaq"
146
+ - source: "فرہاد رضا"
147
+ expected: "frahad rza"
148
+ - source: "وسیم اکرام"
149
+ expected: "isim akram"
150
+ - source: "شکیب الحسن"
151
+ expected: "shkib alhasn"
152
+ - source: "حسن عبد اللہ"
153
+ expected: "hasn ebd allah"
154
+
155
+ map:
156
+
157
+ characters:
158
+
159
+
160
+ '\u0622': 'a' # ARABIC ALEF W/MADDA ABOVE
161
+ '\u0627': 'a' # or u ARABIC ALEF
162
+ '\u06cc': 'i' # or ai or u ARABIC LETTER WAW
163
+ '\u0648': 'i' # or o,au ARABIC LETTER FARSI YEH
164
+ '\u06d2': 'e' # ARABIC LETTER YEH BARREE
165
+ '\u0650': 'e' # ARABIC ARABIC KASRA
166
+ '\u0639': 'e' # ARABIC LETTER AIN
167
+ '\u06c1': 'ah' # ARABIC LETTER HEH GOAL
168
+ '\u062d': 'ha' # ARABIC LETTER HAH
169
+ '\u0648\u0670': 'a' # ARABIC LETTER FARSI YEH + ARABIC LETTER SUPERSCRIPT ALEF
170
+ '\u0670': 'a' # ARABIC LETTER SUPERSCRIPT ALEF
171
+ '\u0627\u0650': 'i' # ARABIC ALEF + ARABIC KASRA
172
+ '\u0639\u0650': 'i' # ARABIC LETTER AIN + ARABIC KASRA
173
+ '\u064f': 'i' # ARABIC DAMMA
174
+ '\u06d3': 'i' # ARABIC LETTER YEH BARREE WITH HAMZA ABOVE
175
+ '\u06c2': '-e' # ARABIC LETTER HEH GOAL WITH HAMZA ABOVE
176
+ '\u06c1\u0650': 'o' # ARABIC LETTER YEH WITH HAMZA ABOVE
177
+ '\u0624': 'au' # ARABIC LETTER WAW WITH HAMZA ABOVE
178
+
179
+
180
+
181
+ '\u06a9': 'k' # ARABIC LETTER KEHEH
182
+ '\u0642': 'q' # ARABIC LETTER QAF
183
+ '\u062e': 'kh' # ARABIC LETTER KHAH
184
+ '\u06af': 'g' # ARABIC LETTER GAF
185
+ '\u063a': 'gh' # ARABIC LETTER GHAIN
186
+ '\u0686': 'ch' # ARABIC LETTER TCHEH
187
+ '\u062c': 'j' # Arabic Letter Jeem
188
+
189
+ '\u0632': 'z' # Arabic Letter ZAIN
190
+ '\u0630': 'z' # Arabic Letter THAL
191
+ '\u0636': 'z' # Arabic Letter DAD
192
+ '\u0638': 'z' # Arabic Letter ZAH
193
+ '\u0698': 'zh' # Arabic Letter JEH
194
+
195
+
196
+ '\u0679': 't' # ARABIC LETTER TTEH
197
+ '\u0688': 'd' # Arabic Letter DDAL
198
+ '\u062f': 'd' # Arabic Letter DAL
199
+ '\u0691': 'r' # Arabic Letter RREH
200
+ '\u062a': 't' # Arabic Letter TEH
201
+ '\u0637': 't' # Arabic Letter TAH
202
+ '\u0646': 'n' # Arabic Letter NOON
203
+ '\u06ba': 'n' # Arabic Letter NOON GHUNNA
204
+
205
+
206
+ '\u067e': 'p' # Arabic Letter PE
207
+ '\u0641': 'f' # Arabic Letter FEH
208
+ '\u0628': 'b' # Arabic Letter BEH
209
+ '\u0645': 'm' # Arabic Letter MEEM
210
+ '\u0631': 'r' # Arabic Letter REH
211
+ '\u0644': 'l' # Arabic Letter LAM
212
+ '\u0634': 'sh' # Arabic Letter SHEEN
213
+ '\u0633': 's' # Arabic Letter SHEEN
214
+ '\u062b': 's' # Arabic Letter THEH
215
+ '\u0635': 's' # Arabic Letter SAD
216
+ '\u0621': '' # Arabic Letter HAMZA
217
+ '\u06be': 's' # Arabic Letter HEH DOACHASHMEE
218
+ '\u064b': 'n' # Arabic Letter FATHATAN
219
+ '\u064e': 'n' # Arabic sign FATHATAN
220
+ '\u0652': '' # Arabic Letter SUKUN
221
+ '\u0651': '' # Arabic Letter SHADDA
@@ -36,7 +36,7 @@ description: |
36
36
  longer appears in those resources (i.e. is no longer a government official), the IC Standard
37
37
  spelling should appear first, with the spelling, if known, as it previously appeared in those
38
38
  resources listed within parentheses at the first usage.
39
-
39
+
40
40
  The primary goal is to produce a consistent Romanized transcription of names that is specifically
41
41
  readable to the English-speaking non-specialist. The system uses the 26 letters of the standard
42
42
  (English) Roman alphabet. Some ambiguities in the Romanized form will occur without the use
@@ -164,4 +164,3 @@ map:
164
164
  '\u042c': '' # Ь
165
165
  '\u044a': '' # ъ
166
166
  '\u044c': '' # ь
167
-
@@ -7,11 +7,11 @@ destination_script: Latn
7
7
  name: Royal Thai General System of Transcription (1939) Generic
8
8
  url: http://www.siamese-heritage.org/jsspdf/1941/JSS_033_1d_RoyalInstituteTranscriptionOfThaiIntoRomanCharacters.pdf
9
9
  creation_date: 1939
10
- adoption_date:
10
+ adoption_date:
11
11
  description: |
12
12
  This map loads two external maps to convert Thai text first into phonemic Thai,
13
13
  and then into IPA transcription.
14
-
14
+
15
15
  The IPA transcription will then be handled by this map, and converted into
16
16
  Royal Thai General System of Transcription (1939)
17
17
 
@@ -37,7 +37,7 @@ chain: ["var-tha-Thai-Thai-phonemic" ,"var-tha-Thai-Zsym-ipa"]
37
37
 
38
38
  map:
39
39
  title-case: false
40
- word_separator: " "
40
+ word_separator: " "
41
41
 
42
42
  rules:
43
43
  - pattern: '[˩˨˧˦˥]'
@@ -62,7 +62,7 @@ map:
62
62
  'ŋ': 'ng'
63
63
  'j': 'y'
64
64
  'ɔ': 'o̦'
65
- 'ɤ': 'œ'
65
+ 'ɤ': 'œ'
66
66
  'ɛ': 'æ'
67
67
  'ɯ': 'ư'
68
68
  'ʰ': 'h'
@@ -7,11 +7,11 @@ destination_script: Latn
7
7
  name: Royal Thai General System of Transcription (1968)
8
8
  url: http://www.royin.go.th/wp-content/uploads/royin-ebook/276/FileUpload/758_6484.pdf
9
9
  creation_date: 1968
10
- adoption_date:
10
+ adoption_date:
11
11
  description: |
12
12
  This map loads two external maps to convert Thai text first into phonemic Thai,
13
13
  and then into IPA transcription.
14
-
14
+
15
15
  The IPA transcription will then be handled by this map, and converted into
16
16
  Royal Thai General System of Transcription (1968).
17
17
 
@@ -124,7 +124,7 @@ chain: ["var-tha-Thai-Thai-phonemic" ,"var-tha-Thai-Zsym-ipa"]
124
124
 
125
125
  map:
126
126
  title-case: false
127
- word_separator: " "
127
+ word_separator: " "
128
128
 
129
129
  rules:
130
130
  - pattern: '[˩˨˧˦˥]'
@@ -151,7 +151,7 @@ map:
151
151
  'ŋ': 'ng'
152
152
  'j': 'y'
153
153
  'ɔ': 'o'
154
- 'ɤ': 'oe'
154
+ 'ɤ': 'oe'
155
155
  'ɛ': 'ae'
156
156
  'ɯ': 'u'
157
157
  'ʰ': 'h'
@@ -7,11 +7,11 @@ destination_script: Latn
7
7
  name: Royal Thai General System of Transcription (1999)
8
8
  url: http://www.royin.go.th/wp-content/uploads/royin-ebook/276/FileUpload/758_6484.pdf
9
9
  creation_date: 1999
10
- adoption_date:
10
+ adoption_date:
11
11
  description: |
12
12
  This map loads two external maps to convert Thai text first into phonemic Thai,
13
13
  and then into IPA transcription.
14
-
14
+
15
15
  The IPA transcription will then be handled by this map, and converted into
16
16
  Royal Thai General System of Transcription (1999)
17
17
 
@@ -125,7 +125,7 @@ chain: ["var-tha-Thai-Thai-phonemic" ,"var-tha-Thai-Zsym-ipa"]
125
125
 
126
126
  map:
127
127
  title-case: false
128
- word_separator: " "
128
+ word_separator: " "
129
129
 
130
130
  rules:
131
131
  - pattern: '[˩˨˧˦˥]'
@@ -152,7 +152,7 @@ map:
152
152
  'ŋ': 'ng'
153
153
  'j': 'y'
154
154
  'ɔ': 'o'
155
- 'ɤ': 'oe'
155
+ 'ɤ': 'oe'
156
156
  'ɛ': 'ae'
157
157
  'ɯ': 'ue' # New spelling, was u in 1968
158
158
  'ʰ': 'h'
@@ -7,7 +7,7 @@ destination_script: Latn
7
7
  name: Royal Thai General System of Transcription (1999)
8
8
  url: http://www.royin.go.th/wp-content/uploads/royin-ebook/276/FileUpload/758_6484.pdf
9
9
  creation_date: 1999
10
- adoption_date:
10
+ adoption_date:
11
11
  description:
12
12
 
13
13
  notes: |
@@ -48,7 +48,7 @@ tests:
48
48
 
49
49
  map:
50
50
  title-case: false
51
- word_separator: " "
51
+ word_separator: " "
52
52
  transcription: "sequitur.pythainlp_lexicon"
53
53
 
54
54
  rules:
@@ -68,7 +68,7 @@ map:
68
68
  'j': 'i'
69
69
  'w': 'o'
70
70
  'ɔ': 'o'
71
- 'ɤ': 'oe'
71
+ 'ɤ': 'oe'
72
72
  'ɛ': 'ae'
73
73
  'ɯ': 'ue'
74
74
  'ʔ' : ''
@@ -85,12 +85,16 @@ tests:
85
85
  # https://unstats.un.org/unsd/geoinfo/geonames/
86
86
 
87
87
  - source: شَرم الشَيْخ
88
- expected: sharm el-sheikh
88
+ expected: Sharm el-Sheikh
89
89
 
90
90
  - source: الكَفر القَدِيم
91
- expected: el-kafr el-qadîm
91
+ expected: El-Kafr el-Qadîm
92
92
  map:
93
93
  inherit: "un-ara-Arab-Latn-2017"
94
+ postrules:
95
+ - pattern : ' El-' # الص
96
+ result: ' el-'
97
+
94
98
  characters:
95
99
 
96
100
 
@@ -117,7 +121,7 @@ map:
117
121
  - 'â'
118
122
  - 'a'
119
123
 
120
- # ta' marboota
124
+ # ta' marboota in iso-233-1984 is all the same `a`
121
125
  '\u0629$' : 'a'
122
126
  '(?<=\b\u0627\u0644[\u0600-\u06ff]{2})\u0629' : 'a'
123
127
  '(?<=\b\u0627\u0644[\u0600-\u06ff]{3})\u0629' : 'a'
@@ -72,16 +72,29 @@ tests:
72
72
  # page 31 (38 digital)
73
73
 
74
74
  - source: خَيبَر
75
- expected: k͟haybar
75
+ expected: K͟haybar
76
76
 
77
77
  - source: ظَهران
78
- expected: z͟hahrān
78
+ expected: Z͟hahrān
79
79
 
80
80
  - source: القُدس
81
- expected: al quds
81
+ expected: Al Quds
82
+
83
+ - source: شَرم الشَيْخ
84
+ expected: S͟harm as͟h S͟hayk͟h
82
85
 
83
86
  map:
84
87
  inherit: "un-ara-Arab-Latn-2017"
88
+ map:
89
+ postrules:
90
+ - pattern : ' At͟h T͟h' # الث
91
+ result: ' at͟h T͟h'
92
+ - pattern : ' Ad͟h D͟h' # الذ
93
+ result: ' ad͟h D͟h'
94
+ - pattern : ' As͟h S͟h' # الش
95
+ result: ' as͟h S͟h'
96
+ - pattern : ' Az͟h Z͟h' # الظ
97
+ result: ' az͟h Z͟h'
85
98
  characters:
86
99
 
87
100
  # sun letters
@@ -124,4 +137,3 @@ map:
124
137
  '\ufec7' : 'z͟h' # ﻇ
125
138
  '\ufec8' : 'z͟h' # ﻈ
126
139
  '\ufec6' : 'z͟h' # ﻆ
127
-