interscript 0.1.4 → 2.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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,148 +0,0 @@
1
- ---
2
- authority_id: odni
3
- id: 2015
4
- language: bel
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: Office of the Director Of National Intelligence Belarusian Personal Names 2015, ICS 630-01 Annex B
8
- # url:
9
- source: ICS 630-01, Annex B
10
- creation_date: 2015
11
- confirmation_date: 2015
12
- description: |
13
- This system is the Intelligence Community (IC) standard for the transliteration of Belarusian
14
- names that will be applied to all final written reports and products for IC consumers. It is not
15
- intended to eliminate variations of a name that can contribute forensic information. Rather, it is to
16
- provide an IC standard Romanized (English) transliteration from Belarusian that can then be
17
- linked to forensic information in ways that will help identify the referent of the name.
18
-
19
- In cases where an individual’s name has already been transliterated in a variant spelling, the IC
20
- Standard spelling should appear first, followed by the variant spelling(s) in parentheses at the first
21
- usage. In addition, if the original Cyrillic spelling is known, that spelling should also appear in
22
- parentheses following the name, if possible, following best practices of the issuing organization
23
- and taking into consideration information system capabilities. This convention is designed to
24
- ensure that vital forensic information is not lost.
25
-
26
- For names of persons who are known to not be part of the Belarusian-speaking community, use
27
- the relevant IC transliteration standard for names from that language (e.g., Mikhail, Yitzhak). A
28
- translator’s note may be used to clarify the known origin of the person. Spell names of
29
- individuals from languages that are written in Roman letters as they are spelled in those
30
- languages (e.g., George Clooney, Jorge Garcia, Georges Pompidou).
31
-
32
- In the case of active senior government officials in the on-line CIA World Factbook and the online directory of Chiefs of State and Cabinet Members of Foreign Governments, the spellings
33
- given in these on-line reference works should be used in place of the IC Standard. For any
34
- individual who has at one time been listed in the Factbook or Chiefs of State directory but who no
35
- longer appears in those resources (i.e. is no longer a government official), the IC Standard
36
- spelling should appear first, with the spelling, if known, as it previously appeared in those
37
- resources listed within parentheses at the first usage.
38
-
39
- The primary goal is to produce a consistent Romanized transcription of names that is specifically
40
- readable to the English-speaking non-specialist. The system uses the 26 letters of the standard
41
- (English) Roman alphabet. Some ambiguities in the Romanized form will occur without the use
42
- of diacritics. However, within the context of a report, where additional information about the
43
- individual is provided, the referent will be clearly identified. This system will be used in
44
- conjunction with on-line tools, name
45
-
46
- notes:
47
-
48
- tests:
49
- - source: Міхаіл
50
- expected: Mikhail
51
- - source: Беларусь
52
- expected: Byelarus
53
- - source: Кастусь Каліноўскі
54
- expected: Kastus Kalinowski
55
- - source: Васіль Быкау
56
- expected: Vasil Bykau
57
- - source: Янка Купала
58
- expected: Yanka Kupala
59
- - source: Маланка
60
- expected: Malanka
61
- - source: Пакаранне
62
- expected: Pakarannye
63
- - source: Бэз
64
- expected: Bez
65
- - source: Чабор
66
- expected: Chabor
67
- - source: |
68
- Дзяўчына, дзяўчыначка пасярод гісторыі
69
- З прастадушнай шчырасьцю глядзіць на тэрыторыю.
70
- У вакне заўсёды звыклая выява:
71
- Шэры двор, шэры слуп, на слупе аб'явы.
72
- expected: |
73
- Dzyawchyna, dzyawchynachka pasyarod historyi
74
- Z prastadushnay shchyrastsyu hlyadzits na terytoryyu.
75
- U vaknye zawsyody zvyklaya vyyava:
76
- Shery dvor, shery slup, na slupye abyavy.
77
-
78
- map:
79
- characters:
80
- '\u0027' : '' # '
81
-
82
- '\u0410' : 'A' # A
83
- '\u0411' : 'B' # Б
84
- '\u0412' : 'V' # B
85
- '\u0413' : 'H' # Г
86
- '\u0490' : 'G' # Ґ
87
- '\u0414' : 'D' # Д
88
- '\u0415' : 'Ye' # Е
89
- '\u0401' : 'Yo' # Ё
90
- '\u0416' : 'Zh' # Ж
91
- '\u0417' : 'Z' # З
92
- '\u0406' : 'I' # І
93
- '\u0419' : 'Y' # Й
94
- '\u041A' : 'K' # К
95
- '\u041B' : 'L' # Л
96
- '\u041C' : 'M' # М
97
- '\u041D' : 'N' # Н
98
- '\u041E' : 'O' # О
99
- '\u041F' : 'P' # П
100
- '\u0420' : 'R' # Р
101
- '\u0421' : 'S' # С
102
- '\u0422' : 'T' # Т
103
- '\u0423' : 'U' # У
104
- '\U040E' : 'W' # Ў
105
- '\u0424' : 'F' # Ф
106
- '\u0425' : 'Kh' # Х
107
- '\u0426' : 'Ts' # Ц
108
- '\u0427' : 'Ch' # Ч
109
- '\u0428' : 'Sh' # Ш
110
- '\u042B' : 'Y' # Ы
111
- '\u042C' : '' # Ь
112
- '\u042D' : 'E' # Э
113
- '\u042E' : 'Yu' # Ю
114
- '\u042F' : 'Ya' # Я
115
-
116
- '\u0430' : 'a' # а
117
- '\u0431' : 'b' # б
118
- '\u0432' : 'v' # в
119
- '\u0433' : 'h' # г
120
- '\u0491' : 'g' # ґ
121
- '\u0434' : 'd' # д
122
- '\u0435' : 'ye' # е
123
- '\u0451' : 'yo' # ё
124
- '\u0436' : 'zh' # ж
125
- '\u0437' : 'z' # з
126
- '\u0456' : 'i' # і
127
- '\u0439' : 'y' # й
128
- '\u043A' : 'k' # к
129
- '\u043B' : 'l' # л
130
- '\u043C' : 'm' # м
131
- '\u043D' : 'n' # н
132
- '\u043E' : 'o' # о
133
- '\u043F' : 'p' # п
134
- '\u0440' : 'r' # р
135
- '\u0441' : 's' # с
136
- '\u0442' : 't' # т
137
- '\u0443' : 'u' # у
138
- '\u045E' : 'w' # ў
139
- '\u0444' : 'f' # ф
140
- '\u0445' : 'kh' # х
141
- '\u0446' : 'ts' # ц
142
- '\u0447' : 'ch' # ч
143
- '\u0448' : 'sh' # ш
144
- '\u044B' : 'y' # ы
145
- '\u044c' : '' # Ь
146
- '\u044D' : 'e' # э
147
- '\u044E' : 'yu' # ю
148
- '\u044F' : 'ya' # я
@@ -1,96 +0,0 @@
1
- ---
2
- authority_id: odni
3
- id: 2015
4
- language: bul
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: Office of the Director Of National Intelligence Bulgarian Personal Names 2015, ICS-630-01 Annex O
8
- # url:
9
- source: ICS-630-01 Annex O
10
- creation_date: 2015
11
- confirmation_date: 2015
12
- description: |
13
- This system is the Intelligence Community standard for the transliteration of Bulgarian person
14
- names that will be applied to all final written reports and products for IC consumers. This
15
- standard matches both the Bulgarian national standard adopted in 2009 and the Board of
16
- Geographic Names / Permanent Committee on Geographic Names standard adopted in 2013. It is
17
- not intended to eliminate variations of a name that can contribute forensic information. Rather, it
18
- is to provide an IC standard Romanized (English) transliteration from Bulgarian that can then be
19
- linked to forensic information in ways that will help identify the referent of the name.
20
-
21
- In cases where an individual’s name has already been transliterated in a variant spelling, the IC
22
- Standard spelling should appear first, followed by the variant spelling(s) in parentheses at the first
23
- usage. In addition, if the original Cyrillic-script spelling is known, that spelling should also
24
- appear in parentheses following the name, if possible, following best practices of the issuing
25
- organization and taking into consideration information system capabilities. For example: Dobri
26
- Hristov (also seen as Dobri Khristov, Добри Христов). This convention is designed to ensure
27
- that vital forensic information is not lost.
28
-
29
- For names of persons who are known to not be part of the Bulgarian-speaking community, use
30
- the relevant IC transliteration standard for names from that language (e.g., Yitzhak). A
31
- translator’s note may be used to clarify the known origin of the person. Spell names of
32
- individuals from languages that are written in Roman letters as they are spelled in those
33
- languages (e.g., George Clooney, Jorge Garcia, Georges Pompidou).
34
-
35
- In the case of active senior government officials in the on-line CIA World Factbook and the online directory of Chiefs of State and Cabinet Members of Foreign Governments, the spellings
36
- given in these on-line reference works should be used in place of the IC Standard. For any
37
- individual who has at one time been listed in the Factbook or Chiefs of State directory but who no
38
- longer appears in those resources (i.e. is no longer a government official), the IC Standard
39
- spelling should appear first, with the spelling, if known, as it previously appeared in those
40
- resources listed within parentheses at the first usage.
41
-
42
- The primary goal is to produce a consistent Romanized transcription of names that is specifically
43
- readable to the English-speaking non-specialist. The system uses the 26 letters of the standard
44
- (English) Roman alphabet. Some ambiguities in the Romanized form will occur without the use
45
- of diacritics. However, within the context of a report, where additional information about the
46
- individual is provided, the referent will be clearly identified. This system will be used in
47
- conjunction with on-line tools, name dictionaries, and lists containing conventional spellings of
48
- names of well-known individuals.
49
-
50
- notes:
51
- - Transliterate double digraphs as a single digraph i.e. шш -> sh, not shsh
52
- - In the Roman, no distinction is made between digraphs such as 'sh' and single contiguous letters (e.g. 's' followed by 'h').
53
-
54
- tests:
55
-
56
- - source: Добри Христов
57
- expected: Dobri Khristov
58
- - source: болгарица
59
- expected: bolgaritsa
60
- - source: български език
61
- expected: balgarski ezik
62
- - source: българска азбука
63
- expected: balgarska azbuka
64
- - source: градъ
65
- expected: grad
66
- - source: аз държа
67
- expected: az darzha
68
- - source: Ядеш хляба с чубрица
69
- expected: Yadesh khlyaba s chubritsa
70
-
71
-
72
- # note[1]
73
- - source: шш
74
- expected: sh
75
- - source: ччччч
76
- expected: ch
77
-
78
- map:
79
- inherit: bgnpcgn-bul-Cyrl-Latn-2013
80
-
81
- rules:
82
- # note[1]
83
- - pattern: "(.)\\1{1,}"
84
- result: "\\1"
85
-
86
- - pattern: \u042C# # Ь
87
- result: "Y"
88
-
89
- - pattern: \u042A # Ъ
90
- result: "A"
91
-
92
- - pattern: \u044C # ь
93
- result: "y"
94
-
95
- - pattern: \u044A # ъ
96
- result: "a"
@@ -1,88 +0,0 @@
1
- ---
2
- authority_id: odni
3
- id: 2015
4
- language: kat
5
- source_script: Geor
6
- destination_script: Latn
7
- name: Office of the Director Of National Intelligence Georgian Personal Names 2015, ICS 630-01 Annex E
8
- # url:
9
- source: ICS 630-01, Annex E
10
- creation_date: 2015
11
- confirmation_date: 2015
12
- description: |
13
- This system is the Intelligence Community standard for the transliteration of Georgian names that
14
- will be applied to all final written reports and products for IC consumers. It is not intended to
15
- eliminate variations of a name that can contribute forensic information. Rather, it is to provide an
16
- IC standard Romanized (English) transliteration from Georgian that can then be linked to forensic
17
- information in ways that will help identify the referent of the name.
18
-
19
- notes:
20
-
21
- tests:
22
-
23
- - source: ბაყაყი
24
- expected: baqaqi
25
-
26
- - source: ძროხა
27
- expected: dzrokha
28
-
29
- - source: ჰაერი
30
- expected: haeri
31
-
32
- - source: ჟოლო
33
- expected: zholo
34
-
35
- - source: ჯართი
36
- expected: jarti
37
-
38
- - source: ღრმაღელე
39
- expected: ghrmaghele
40
-
41
- - source: ზვიად გამსახურდია
42
- expected: zviad gamsakhurdia
43
-
44
- - source: ედუარდ შევარდნაძე
45
- expected: eduard shevardnadze
46
-
47
- - source: მიხეილ სააკაშვილი
48
- expected: mikheil saakashvili
49
-
50
- - source: გიორგი მარგველაშვილი
51
- expected: giorgi margvelashvili
52
-
53
- map:
54
- characters:
55
- '\u10d0' : 'a' # ა
56
- '\u10d1' : 'b' # ბ
57
- '\u10d2' : 'g' # გ
58
- '\u10d3' : 'd' # დ
59
- '\u10d4' : 'e' # ე
60
- '\u10d5' : 'v' # ვ
61
- '\u10d6' : 'z' # ზ
62
- '\u10d7' : 't' # თ
63
- '\u10d8' : 'i' # ი
64
- '\u10d9' : 'k' # კ
65
- '\u10da' : 'l' # ლ
66
- '\u10db' : 'm' # მ
67
- '\u10dc' : 'n' # ნ
68
- '\u10dd' : 'o' # ო
69
- '\u10de' : 'p' # პ
70
- '\u10df' : 'zh' # ჟ
71
- '\u10e0' : 'r' # რ
72
- '\u10e1' : 's' # ს
73
- '\u10e2' : 't' # ტ
74
- '\u10e3' : 'u' # უ
75
- '\u10e4' : 'p' # ფ
76
- '\u10e5' : 'k' # ქ
77
- '\u10e6' : 'gh' # ღ
78
- '\u10e7' : 'q' # ყ
79
- '\u10e8' : 'sh' # შ
80
- '\u10e9' : 'ch' # ჩ
81
- '\u10ea' : 'ts' # ც
82
- '\u10eb' : 'dz' # ძ
83
- '\u10ec' : 'ts' # წ
84
- '\u10ed' : 'ch' # ჭ
85
- '\u10ee' : 'kh' # ხ
86
- '\u10ef' : 'j' # ჯ
87
- '\u10f0' : 'h' # ჰ
88
-
@@ -1,77 +0,0 @@
1
- ---
2
- authority_id: odni
3
- id: 2015
4
- language: rus
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: Office of the Director Of National Intelligence Russian Personal Names 2015, ICS-630-01 Annex K
8
- # url:
9
- source: ICS-630-01 Annex K
10
- creation_date: 2015
11
- confirmation_date: 2015
12
- description: |
13
- This system, adapted from the Board of Geographic Names (BGN) Romanization system for Russian
14
- (1947), is the Intelligence Community (IC) standard for the transliteration of Russian names that will be
15
- applied to all final written reports and products for IC consumers. It is not intended to eliminate variations
16
- of a name that can contribute forensic information. Rather, it is to provide an IC standard Romanized
17
- (English) transliteration from Russian that can then be linked to forensic information in ways that will
18
- help identify the referent of the name.
19
-
20
- In cases where an individual’s name has already been transliterated in a variant spelling, the IC Standard
21
- spelling should appear first, followed by the variant spelling(s) in parentheses at the first usage. E.g.,
22
- Sergey Nikolayevich Tyurin (Serguei Nicolaivitch Tiourine). In addition, if the original Cyrillic spelling
23
- is known, that spelling should also appear in parentheses following the name, if possible, following best
24
- practices of the issuing organization and taking into consideration information system capabilities. This
25
- convention is designed to ensure that vital forensic information is not lost.
26
-
27
- For non-Russian names, use the relevant IC transliteration standard for names from that language. A
28
- translator’s note may be used to clarify the known origin of the person. Spell names of individuals from
29
- languages that are written in Roman letters as they are spelled in those languages (e.g., George Clooney,
30
- Jorge Garcia, Georges Pompidou).
31
-
32
- In the case of active senior government officials in the on-line CIA World Factbook and the on-line
33
- directory of Chiefs of State and Cabinet Members of Foreign Governments, the spellings given in these
34
- on-line reference works should be used in place of the IC Standard. For any individual who has at one
35
- time been listed in the Factbook or Chiefs of State directory but who no longer appears in those resources
36
- (i.e. is no longer a government official), the IC Standard spelling should appear first, with the spelling, if
37
- known, as it previously appeared in those resources listed within parentheses at the first usage.
38
-
39
- The primary goal is to produce a consistent Romanized transcription of names that is specifically readable
40
- to the English-speaking non-specialist. The system uses the 26 letters of the standard (English) Roman
41
- alphabet. Some ambiguities in the Romanized form will occur without the use of diacritics. However,
42
- within the context of a report, where additional information about the individual is provided, the referent
43
- will be clearly identified. This system will be used in conjunction with on-line tools, name dictionaries,
44
- and lists containing conventional spellings of names of well-known individuals.
45
-
46
- notes:
47
-
48
- tests:
49
- - source: Ирина Ивановна Никитина
50
- expected: Irina Ivanovna Nikitina
51
- - source: Николай Римский-Корсаков
52
- expected: Nikolay Rimskiy-Korsakov
53
- - source: Михаил Тимофеевич Калашников
54
- expected: Mikhail Timofeyevich Kalashnikov
55
- - source: Корж Василий Захарович
56
- expected: Korzh Vasiliy Zakharovich
57
- - source: Циолковский Константин Эдуардович
58
- expected: Tsiolkovskiy Konstantin Eduardovich
59
- - source: Лобачевский Николай Иванович
60
- expected: Lobachevskiy Nikolay Ivanovich
61
- - source: Пушкин Александр Сергеевич
62
- expected: Pushkin Aleksandr Sergeyevich
63
- - source: Гоголь Николай Васильевич
64
- expected: Gogol Nikolay Vasilyevich
65
- - source: Ломоносов Михаил Васильевич
66
- expected: Lomonosov Mikhail Vasilyevich
67
-
68
- map:
69
- inherit: bgnpcgn-rus-Cyrl-Latn-1947
70
-
71
- characters:
72
- '\u042a': '' # Ъ
73
- '\u042c': '' # Ь
74
-
75
-
76
- '\u044a': '' # ъ
77
- '\u044c': '' # ь
@@ -1,129 +0,0 @@
1
- ---
2
- authority_id: odni
3
- id: 2015
4
- language: srp
5
- source_script: Cyrl
6
- destination_script: Latn
7
- name: Office of the Director Of National Intelligence Serbian Personal Names 2015, ICS-630-01 Annex L
8
- # url:
9
- source: ICS-630-01 Annex L
10
- creation_date: 2015
11
- confirmation_date: 2015
12
- description: |
13
- This system is the Intelligence Community (IC) standard for the transliteration of Serbian names
14
- written in Cyrillic that will be applied to all final written reports and products for IC consumers. It
15
- is not intended to eliminate variations of a name that can contribute forensic information. Rather,
16
- it is to provide an IC standard Romanized (English) transliteration from Serbian that can then be
17
- linked to forensic information in ways that will help identify the referent of the name.
18
-
19
- In cases where an individual’s name has already been transliterated in a variant spelling, the IC
20
- Standard spelling should appear first, followed by the variant spelling(s) in parentheses at the first
21
- usage. In addition, if the original Cyrillic spelling is known, that spelling should also appear in
22
- parentheses following the name, if possible, following best practices of the issuing organization
23
- and taking into consideration information system capabilities. This convention is designed to
24
- ensure that vital forensic information is not lost.
25
-
26
- For names of persons who are known to not be part of the Serbian-speaking community, use the
27
- relevant IC transliteration standard for names from that language (e.g., Mikhail, Yitzhak). A
28
- translator’s note may be used to clarify the known origin of the person. Spell names of
29
- individuals from languages that are written in Roman letters as they are spelled in those
30
- languages (e.g., George Clooney, Jorge Garcia, Georges Pompidou).
31
-
32
- In the case of active senior government officials in the on-line CIA World Factbook and the online directory of Chiefs of State and Cabinet Members of Foreign Governments, the spellings
33
- given in these on-line reference works should be used in place of the IC Standard. For any
34
- individual who has at one time been listed in the Factbook or Chiefs of State directory but who no
35
- longer appears in those resources (i.e. is no longer a government official), the IC Standard
36
- spelling should appear first, with the spelling, if known, as it previously appeared in those
37
- resources listed within parentheses at the first usage.
38
-
39
- The primary goal is to produce a consistent Romanized transcription of names that is specifically
40
- readable to the English-speaking non-specialist. The system uses the 26 letters of the standard
41
- (English) Roman alphabet. Some ambiguities in the Romanized form will occur without the use
42
- of diacritics. However, within the context of a report, where additional information about the
43
- individual is provided, the referent will be clearly identified. This system will be used in
44
- conjunction with on-line tools, name dictionaries, and lists containing conventional spellings of
45
- names of well-known individuals.
46
-
47
- notes:
48
-
49
- tests:
50
- - source: Гојко Митић
51
- expected: Gojko Mitic
52
- - source: Горња Ваганица
53
- expected: Gornja Vaganica
54
- - source: Довиђења
55
- expected: Dovidjenja
56
- - source: Ћао! Здраво!
57
- expected: Cao! Zdravo!
58
- - source: Кључ
59
- expected: Kljuc
60
- - source: Цигарете
61
- expected: Cigarete
62
- - source: Пролеће
63
- expected: Prolece
64
- - source: Понедељак
65
- expected: Ponedeljak
66
-
67
- map:
68
- characters:
69
- '\u0410': 'A' # А
70
- '\u0411': 'B' # Б
71
- '\u0412': 'V' # В
72
- '\u0413': 'G' # Г
73
- '\u0414': 'D' # Д
74
- '\u0402': 'Dj' # Ђ
75
- '\u0415': 'E' # Е
76
- '\u0416': 'Z' # Ж
77
- '\u0417': 'Z' # З
78
- '\u0418': 'I' # И
79
- '\u0408': 'J' # Ј
80
- '\u041A': 'K' # К
81
- '\u041B': 'L' # Л
82
- '\u0409': 'Lj' # Љ
83
- '\u041C': 'M' # М
84
- '\u041D': 'N' # Н
85
- '\u040A': Nj # Њ
86
- '\u041E': 'O' # О
87
- '\u041F': 'P' # П
88
- '\u0420': 'R' # Р
89
- '\u0421': 'S' # С
90
- '\u0422': 'T' # Т
91
- '\u040B': 'C' # Ћ
92
- '\u0423': 'U' # У
93
- '\u0424': 'F' # Ф
94
- '\u0425': 'H' # Х
95
- '\u0426': 'C' # Ц
96
- '\u0427': 'C' # Ч
97
- '\u040F': 'Dz' # Џ
98
- '\u0428': 'S' # Ш
99
-
100
- '\u0430': 'a' # а
101
- '\u0431': 'b' # б
102
- '\u0432': 'v' # в
103
- '\u0433': 'g' # г
104
- '\u0434': 'd' # д
105
- '\u0452': 'dj' # ђ
106
- '\u0435': 'e' # e
107
- '\u0436': 'z' # ж
108
- '\u0437': 'z' # з
109
- '\u0438': 'i' # и
110
- '\u0458': 'j' # ј
111
- '\u043A': 'k' # к
112
- '\u043B': 'l' # л
113
- '\u0459': 'lj' # љ
114
- '\u043C': 'm' # м
115
- '\u043D': 'n' # н
116
- '\u045A': 'nj' # њ
117
- '\u043E': 'o' # о
118
- '\u043F': 'p' # п
119
- '\u0440': 'r' # р
120
- '\u0441': 's' # с
121
- '\u0442': 't' # т
122
- '\u045B': 'c' # ћ
123
- '\u0443': 'u' # у
124
- '\u0444': 'f' # ф
125
- '\u0445': 'h' # х
126
- '\u0446': 'c' # ц
127
- '\u0447': 'c' # ч
128
- '\u045F': 'dz' # џ
129
- '\u0448': 's' # ш