interscript 0.1.9 → 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.
- checksums.yaml +4 -4
- data/.gitignore +11 -0
- data/.rspec +3 -0
- data/Gemfile +29 -0
- data/LICENSE.adoc +31 -0
- data/README.md +3 -0
- data/Rakefile +53 -0
- data/bin/console +14 -0
- data/bin/interscript +5 -0
- data/bin/maps_analyze_staging +168 -0
- data/bin/maps_debug_compilers +58 -0
- data/bin/maps_debug_ordering +88 -0
- data/bin/maps_debug_ruby_compile +24 -0
- data/bin/maps_debug_step_by_step +44 -0
- data/bin/maps_optimize_order +112 -0
- data/bin/maps_v1_analyze_regexps +45 -0
- data/bin/maps_v1_to_v2 +426 -0
- data/bin/setup +8 -0
- data/exe/interscript +6 -0
- data/interscript.gemspec +31 -0
- data/lib/interscript.rb +80 -135
- data/lib/interscript/command.rb +5 -5
- data/lib/interscript/compiler.rb +22 -0
- data/lib/interscript/compiler/javascript.rb +292 -0
- data/lib/interscript/compiler/ruby.rb +262 -0
- data/lib/interscript/dsl.rb +67 -0
- data/lib/interscript/dsl/aliases.rb +23 -0
- data/lib/interscript/dsl/document.rb +46 -0
- data/lib/interscript/dsl/group.rb +45 -0
- data/lib/interscript/dsl/group/parallel.rb +6 -0
- data/lib/interscript/dsl/items.rb +89 -0
- data/lib/interscript/dsl/metadata.rb +26 -0
- data/lib/interscript/dsl/stage.rb +6 -0
- data/lib/interscript/dsl/symbol_mm.rb +11 -0
- data/lib/interscript/dsl/tests.rb +12 -0
- data/lib/interscript/interpreter.rb +251 -0
- data/lib/interscript/node.rb +25 -0
- data/lib/interscript/node/alias_def.rb +15 -0
- data/lib/interscript/node/dependency.rb +13 -0
- data/lib/interscript/node/document.rb +45 -0
- data/lib/interscript/node/group.rb +34 -0
- data/lib/interscript/node/group/parallel.rb +9 -0
- data/lib/interscript/node/group/sequential.rb +2 -0
- data/lib/interscript/node/item.rb +52 -0
- data/lib/interscript/node/item/alias.rb +42 -0
- data/lib/interscript/node/item/any.rb +61 -0
- data/lib/interscript/node/item/capture.rb +50 -0
- data/lib/interscript/node/item/group.rb +51 -0
- data/lib/interscript/node/item/repeat.rb +40 -0
- data/lib/interscript/node/item/stage.rb +23 -0
- data/lib/interscript/node/item/string.rb +51 -0
- data/lib/interscript/node/metadata.rb +18 -0
- data/lib/interscript/node/rule.rb +6 -0
- data/lib/interscript/node/rule/funcall.rb +18 -0
- data/lib/interscript/node/rule/run.rb +15 -0
- data/lib/interscript/node/rule/sub.rb +65 -0
- data/lib/interscript/node/stage.rb +19 -0
- data/lib/interscript/node/tests.rb +15 -0
- data/lib/interscript/stdlib.rb +211 -0
- data/lib/interscript/utils/regexp_converter.rb +283 -0
- data/lib/interscript/version.rb +1 -1
- data/requirements.txt +1 -0
- metadata +73 -458
- data/README.adoc +0 -296
- data/aliases.json +0 -1
- data/lib/g2pwrapper.py +0 -34
- data/lib/interscript/fs.rb +0 -96
- data/lib/interscript/mapping.rb +0 -144
- data/lib/interscript/opal.rb +0 -196
- data/lib/interscript/opal/entrypoint.rb +0 -20
- data/lib/interscript/opal/exports.rb +0 -11
- data/lib/interscript/opal/maps.js.erb +0 -8
- data/lib/model-7 +0 -0
- data/lib/tha-pt-b-7 +0 -0
- data/maps/acadsin-zho-Hani-Latn-2002.yaml +0 -38916
- data/maps/alalc-amh-Ethi-Latn-1997.yaml +0 -513
- data/maps/alalc-amh-Ethi-Latn-2011.yaml +0 -138
- data/maps/alalc-ara-Arab-Latn-1997.yaml +0 -1287
- data/maps/alalc-asm-Deva-Latn-1997.yaml +0 -259
- data/maps/alalc-asm-Deva-Latn-2012.yaml +0 -55
- data/maps/alalc-aze-Arab-Latn-1997.yaml +0 -376
- data/maps/alalc-aze-Cyrl-Latn-1997.yaml +0 -145
- data/maps/alalc-bel-Cyrl-Latn-1997.yaml +0 -129
- data/maps/alalc-ben-Beng-Latn-1997.yaml +0 -291
- data/maps/alalc-ben-Beng-Latn-2017.yaml +0 -130
- data/maps/alalc-bul-Cyrl-Latn-1997.yaml +0 -98
- data/maps/alalc-div-Thaa-Latn-1997.yaml +0 -211
- data/maps/alalc-ell-Grek-Latn-1997.yaml +0 -628
- data/maps/alalc-ell-Grek-Latn-2010.yaml +0 -626
- data/maps/alalc-guj-Gujr-Latn-1997.yaml +0 -266
- data/maps/alalc-guj-Gujr-Latn-2011.yaml +0 -64
- data/maps/alalc-hin-Deva-Latn-1997.yaml +0 -303
- data/maps/alalc-hin-Deva-Latn-2011.yaml +0 -65
- data/maps/alalc-kan-Kana-Latn-1997.yaml +0 -274
- data/maps/alalc-kan-Kana-Latn-2011.yaml +0 -63
- data/maps/alalc-kat-Geok-Latn-1997.yaml +0 -111
- data/maps/alalc-kat-Geor-Latn-1997.yaml +0 -150
- data/maps/alalc-kor-Hang-Latn-1997.yaml +0 -98
- data/maps/alalc-mal-Mlym-Latn-1997.yaml +0 -303
- data/maps/alalc-mal-Mlym-Latn-2012.yaml +0 -73
- data/maps/alalc-mar-Deva-Latn-1997.yaml +0 -189
- data/maps/alalc-mar-Deva-Latn-2011.yaml +0 -45
- data/maps/alalc-mkd-Cyrl-Latn-1997.yaml +0 -114
- data/maps/alalc-mkd-Cyrl-Latn-2013.yaml +0 -103
- data/maps/alalc-mon-Cyrl-Latn-1997.yaml +0 -220
- data/maps/alalc-ori-Orya-Latn-1997.yaml +0 -284
- data/maps/alalc-ori-Orya-Latn-2011.yaml +0 -67
- data/maps/alalc-pan-Guru-Latn-1997.yaml +0 -256
- data/maps/alalc-pan-Guru-Latn-2011.yaml +0 -78
- data/maps/alalc-per-Arab-Latn-1997.yaml +0 -375
- data/maps/alalc-pli-Deva-Latn-2012.yaml +0 -144
- data/maps/alalc-pra-Deva-Latn-2012.yaml +0 -47
- data/maps/alalc-rus-Cyrl-Latn-1997.yaml +0 -225
- data/maps/alalc-rus-Cyrl-Latn-2012.yaml +0 -162
- data/maps/alalc-san-Deva-Latn-2012.yaml +0 -241
- data/maps/alalc-sin-Sinh-Latn-1997.yaml +0 -292
- data/maps/alalc-sin-Sinh-Latn-2011.yaml +0 -71
- data/maps/alalc-srp-Cyrl-Latn-1997.yaml +0 -118
- data/maps/alalc-srp-Cyrl-Latn-2013.yaml +0 -135
- data/maps/alalc-tam-Taml-Latn-1997.yaml +0 -62
- data/maps/alalc-tam-Taml-Latn-2011.yaml +0 -58
- data/maps/alalc-tel-Telu-Latn-1997.yaml +0 -284
- data/maps/alalc-tel-Telu-Latn-2011.yaml +0 -64
- data/maps/alalc-ukr-Cyrl-Latn-1997.yaml +0 -145
- data/maps/alalc-ukr-Cyrl-Latn-2011.yaml +0 -16
- data/maps/apcbg-bul-Cyrl-Latn-1995.yaml +0 -283
- data/maps/az-aze-Cyrl-Latn-1939.yaml +0 -105
- data/maps/az-aze-Cyrl-Latn-1958.yaml +0 -45
- data/maps/bas-rus-Cyrl-Latn-2017-bss.yaml +0 -174
- data/maps/bas-rus-Cyrl-Latn-2017-oss.yaml +0 -169
- data/maps/bgn-jpn-Hrkt-Latn-1962.yaml +0 -292
- data/maps/bgn-kor-Hang-Latn-1943.yaml +0 -35
- data/maps/bgn-kor-Kore-Latn-1943.yaml +0 -31
- data/maps/bgna-bul-Cyrl-Latn-2006.yaml +0 -208
- data/maps/bgna-bul-Cyrl-Latn-2009.yaml +0 -208
- data/maps/bgnpcgn-amh-Ethi-Latn-1967.yaml +0 -532
- data/maps/bgnpcgn-ara-Arab-Latn-1956.yaml +0 -598
- data/maps/bgnpcgn-arm-Armn-Latn-1981.yaml +0 -108
- data/maps/bgnpcgn-aze-Cyrl-Latn-1993.yaml +0 -111
- data/maps/bgnpcgn-bak-Cyrl-Latn-2007.yaml +0 -188
- data/maps/bgnpcgn-bal-Arab-Latn-2008.yaml +0 -329
- data/maps/bgnpcgn-bel-Cyrl-Latn-1979.yaml +0 -289
- data/maps/bgnpcgn-bul-Cyrl-Latn-1952.yaml +0 -119
- data/maps/bgnpcgn-bul-Cyrl-Latn-2013.yaml +0 -42
- data/maps/bgnpcgn-che-Cyrl-Latn-2008.yaml +0 -184
- data/maps/bgnpcgn-div-Thaa-Latn-1988.yaml +0 -75
- data/maps/bgnpcgn-ell-Grek-Latn-1962.yaml +0 -705
- data/maps/bgnpcgn-ell-Grek-Latn-1996.yaml +0 -23
- data/maps/bgnpcgn-far-Latn-Latn-1964.yaml +0 -28
- data/maps/bgnpcgn-fas-Arab-Latn-1956.yaml +0 -96
- data/maps/bgnpcgn-isl-Latn-Latn-1964.yaml +0 -37
- data/maps/bgnpcgn-jpn-Hrkt-Latn-1976.yaml +0 -257
- data/maps/bgnpcgn-kat-Geor-Latn-1981.yaml +0 -131
- data/maps/bgnpcgn-kat-Geor-Latn-2009.yaml +0 -42
- data/maps/bgnpcgn-kaz-Cyrl-Latn-1979.yaml +0 -247
- data/maps/bgnpcgn-kir-Cyrl-Latn-1979.yaml +0 -218
- data/maps/bgnpcgn-kor-Hang-Latn-kn-1945.yaml +0 -253
- data/maps/bgnpcgn-kor-Hang-Latn-rok-2011.yaml +0 -48
- data/maps/bgnpcgn-kor-Kore-Latn-rok-2011.yaml +0 -48
- data/maps/bgnpcgn-kur-Arab-Latn-2007.yaml +0 -249
- data/maps/bgnpcgn-mkd-Cyrl-Latn-1981.yaml +0 -163
- data/maps/bgnpcgn-mkd-Cyrl-Latn-2013.yaml +0 -190
- data/maps/bgnpcgn-mon-Cyrl-Latn-1964.yaml +0 -223
- data/maps/bgnpcgn-nep-Deva-Latn-2011.yaml +0 -230
- data/maps/bgnpcgn-per-Arab-Latn-1958.yaml +0 -338
- data/maps/bgnpcgn-prs-Arab-Latn-2007.yaml +0 -673
- data/maps/bgnpcgn-prs-Arab-Latn-yaghoubi.yaml +0 -459
- data/maps/bgnpcgn-pus-Arab-Latn-1968.yaml +0 -377
- data/maps/bgnpcgn-rue-Cyrl-Latn-2016.yaml +0 -168
- data/maps/bgnpcgn-rus-Cyrl-Latn-1947.yaml +0 -318
- data/maps/bgnpcgn-srp-Cyrl-Latn-1962.yaml +0 -73
- data/maps/bgnpcgn-srp-Cyrl-Latn-2005.yaml +0 -170
- data/maps/bgnpcgn-tat-Cyrl-Latn-2007.yaml +0 -220
- data/maps/bgnpcgn-tgk-Cyrl-Latn-1994.yaml +0 -240
- data/maps/bgnpcgn-ukr-Cyrl-Latn-1965.yaml +0 -166
- data/maps/bgnpcgn-ukr-Cyrl-Latn-2019.yaml +0 -119
- data/maps/bgnpcgn-urd-Arab-Latn-2007.yaml +0 -459
- data/maps/bgnpcgn-uzb-Cyrl-Latn-1979.yaml +0 -127
- data/maps/bgnpcgn-uzb-Cyrl-Latn-2000.yaml +0 -82
- data/maps/bgnpcgn-zho-Hans-Latn-1979.yaml +0 -7456
- data/maps/bis-asm-Beng-Latn-13194-1991.yaml +0 -159
- data/maps/bis-ben-Beng-Latn-13194-1991.yaml +0 -156
- data/maps/bis-dev-Deva-Latn-13194-1991.yaml +0 -184
- data/maps/bis-guj-Gujr-Latn-13194-1991.yaml +0 -181
- data/maps/bis-kan-Kana-Latn-13194-1991.yaml +0 -173
- data/maps/bis-mlm-Mlym-Latn-13194-1991.yaml +0 -176
- data/maps/bis-ori-Orya-Latn-13194-1991.yaml +0 -175
- data/maps/bis-pnj-Guru-Latn-13194-1991.yaml +0 -175
- data/maps/bis-tel-Telu-Latn-13194-1991.yaml +0 -170
- data/maps/bis-tml-Taml-Latn-13194-1991.yaml +0 -155
- data/maps/by-bel-Cyrl-Latn-1998.yaml +0 -172
- data/maps/by-bel-Cyrl-Latn-2007.yaml +0 -115
- data/maps/din-grc-Grek-Latn-31634-2011-t1.yaml +0 -899
- data/maps/din-hin-Deva-Latn-33904-2018.yaml +0 -100
- data/maps/din-kat-Geor-Latn-32707-2010.yaml +0 -145
- data/maps/din-mar-Deva-Latn-33904-2018.yaml +0 -84
- data/maps/din-nep-Deva-Latn-33904-2018.yaml +0 -119
- data/maps/din-pli-Deva-Latn-33904-2018.yaml +0 -75
- data/maps/din-pra-Deva-Latn-33904-2018.yaml +0 -63
- data/maps/din-san-Deva-Latn-33904-2018.yaml +0 -338
- data/maps/din-tam-Taml-Latn-33903-2016.yaml +0 -213
- data/maps/dos-nep-Deva-Latn-1997.yaml +0 -47
- data/maps/elot-ell-Grek-Latn-743-1982-tl.yaml +0 -684
- data/maps/elot-ell-Grek-Latn-743-1982-ts.yaml +0 -680
- data/maps/elot-ell-Grek-Latn-743-2001-tl.yaml +0 -19
- data/maps/elot-ell-Grek-Latn-743-2001-ts.yaml +0 -31
- data/maps/ggg-kat-Geor-Latn-2002.yaml +0 -92
- data/maps/gki-bel-Cyrl-Latn-1992.yaml +0 -33
- data/maps/gki-bel-Cyrl-Latn-2000.yaml +0 -201
- data/maps/gost-rus-Cyrl-Latn-16876-71-1983.yaml +0 -190
- data/maps/gost-rus-Cyrl-Latn-7.79-2000-2002.yaml +0 -157
- data/maps/hk-yue-Hani-Latn-1888.yaml +0 -38497
- data/maps/icao-bel-Cyrl-Latn-9303.yaml +0 -136
- data/maps/icao-bul-Cyrl-Latn-9303.yaml +0 -118
- data/maps/icao-fas-Arab-Latn-9303.yaml +0 -103
- data/maps/icao-heb-Hebr-Latn-9303.yaml +0 -151
- data/maps/icao-mkd-Cyrl-Latn-9303.yaml +0 -117
- data/maps/icao-rus-Cyrl-Latn-9303.yaml +0 -117
- data/maps/icao-srp-Cyrl-Latn-9303.yaml +0 -117
- data/maps/icao-ukr-Cyrl-Latn-9303.yaml +0 -119
- data/maps/iso-ara-Arab-Latn-233-1984.yaml +0 -323
- data/maps/iso-asm-Beng-Latn-15919-2001.yaml +0 -75
- data/maps/iso-ben-Beng-Latn-15919-2001.yaml +0 -175
- data/maps/iso-ell-Grek-Latn-843-1997-t1.yaml +0 -613
- data/maps/iso-ell-Grek-Latn-843-1997-t2.yaml +0 -44
- data/maps/iso-guj-Gujr-Latn-15919-2001.yaml +0 -220
- data/maps/iso-hin-Deva-Latn-15919-2001.yaml +0 -87
- data/maps/iso-inc-Deva-Latn-15919-2001.yaml +0 -61
- data/maps/iso-jpn-Hrkt-Latn-3602-1989.yaml +0 -66
- data/maps/iso-kan-Kana-Latn-15919-2001.yaml +0 -220
- data/maps/iso-kat-Geor-Latn-9984-1996.yaml +0 -145
- data/maps/iso-kor-Hang-Latn-1996-method1.yaml +0 -240
- data/maps/iso-kor-Hang-Latn-1996-method2.yaml +0 -226
- data/maps/iso-mal-Mlym-Latn-15919-2001.yaml +0 -281
- data/maps/iso-mar-Deva-Latn-15919-2001.yaml +0 -75
- data/maps/iso-nep-Deva-Latn-15919-2001.yaml +0 -87
- data/maps/iso-ori-Orya-Latn-15919-2001.yaml +0 -193
- data/maps/iso-pan-Guru-Latn-15919-2001.yaml +0 -222
- data/maps/iso-pli-Beng-Latn-15919-2001.yaml +0 -73
- data/maps/iso-pli-Deva-Latn-15919-2001.yaml +0 -74
- data/maps/iso-pli-Sinh-Latn-15919-2001.yaml +0 -219
- data/maps/iso-pli-Thai-Latn-15919-2001.yaml +0 -55
- data/maps/iso-pra-Deva-Latn-15919-2001.yaml +0 -59
- data/maps/iso-prs-Arab-Latn-233-3-1999.yaml +0 -366
- data/maps/iso-rus-Cyrl-Latn-9-1995.yaml +0 -271
- data/maps/iso-san-Deva-Latn-15919-2001.yaml +0 -220
- data/maps/iso-tam-Taml-Latn-15919-2001.yaml +0 -159
- data/maps/iso-tel-Telu-Latn-15919-2001.yaml +0 -220
- data/maps/iso-tha-Thai-Latn-11940-1998.yaml +0 -109
- data/maps/kp-kor-Hang-Latn-2002.yaml +0 -909
- data/maps/lshk-yue-Hani-Latn-jyutping-1993.yaml +0 -44820
- data/maps/masm-mon-Cyrl-Latn-5217-2012.yaml +0 -163
- data/maps/masm-mon-Latn-Cyrl-5217-2012.yaml +0 -200
- data/maps/mext-jpn-Hrkt-Latn-1954.yaml +0 -411
- data/maps/moct-kor-Hang-Latn-2000.yaml +0 -807
- data/maps/mofa-jpn-Hrkt-Latn-1989.yaml +0 -541
- data/maps/mv-div-Thaa-Latn-1987.yaml +0 -200
- data/maps/mvd-bel-Cyrl-Latn-2008.yaml +0 -225
- data/maps/mvd-bel-Cyrl-Latn-2010.yaml +0 -63
- data/maps/mvd-rus-Cyrl-Latn-2008.yaml +0 -109
- data/maps/mvd-rus-Cyrl-Latn-2010.yaml +0 -37
- data/maps/odni-ara-Arab-Latn-2004.yaml +0 -137
- data/maps/odni-ara-Arab-Latn-2015.yaml +0 -315
- data/maps/odni-aze-Cyrl-Latn-2015.yaml +0 -144
- data/maps/odni-bel-Cyrl-Latn-2015.yaml +0 -148
- data/maps/odni-bul-Cyrl-Latn-2005.yaml +0 -90
- data/maps/odni-bul-Cyrl-Latn-2015.yaml +0 -96
- data/maps/odni-che-Cyrl-Latn-2015.yaml +0 -169
- data/maps/odni-fas-Arab-Latn-2004.yaml +0 -276
- data/maps/odni-fas-Arab-Latn-2015.yaml +0 -406
- data/maps/odni-hin-Deva-Latn-2004.yaml +0 -182
- data/maps/odni-hin-Deva-Latn-2015.yaml +0 -258
- data/maps/odni-kat-Geor-Latn-2015.yaml +0 -87
- data/maps/odni-kaz-Cyrl-Latn-2015.yaml +0 -148
- data/maps/odni-kir-Cyrl-Latn-2015.yaml +0 -136
- data/maps/odni-kor-Hang-Latn-2015.yaml +0 -375
- data/maps/odni-mkd-Cyrl-Latn-2005.yaml +0 -21
- data/maps/odni-mkd-Cyrl-Latn-2015.yaml +0 -122
- data/maps/odni-prs-Arab-Latn-2004.yaml +0 -123
- data/maps/odni-prs-Arab-Latn-2015.yaml +0 -228
- data/maps/odni-rus-Cyrl-Latn-2015.yaml +0 -77
- data/maps/odni-srp-Cyrl-Latn-2005.yaml +0 -36
- data/maps/odni-srp-Cyrl-Latn-2015.yaml +0 -129
- data/maps/odni-tat-Cyrl-Latn-2015.yaml +0 -142
- data/maps/odni-tgk-Cyrl-Latn-2015.yaml +0 -148
- data/maps/odni-tuk-Cyrl-Latn-2015.yaml +0 -170
- data/maps/odni-uig-Cyrl-Latn-2015.yaml +0 -138
- data/maps/odni-ukr-Cyrl-Latn-2015.yaml +0 -161
- data/maps/odni-urd-Arab-Latn-2015.yaml +0 -221
- data/maps/odni-uzb-Cyrl-Latn-2015.yaml +0 -166
- data/maps/royin-tha-Thai-Latn-1939-generic.yaml +0 -90
- data/maps/royin-tha-Thai-Latn-1968.yaml +0 -183
- data/maps/royin-tha-Thai-Latn-1999-chained.yaml +0 -180
- data/maps/royin-tha-Thai-Latn-1999.yaml +0 -80
- data/maps/sac-zho-Hans-Latn-1979.yaml +0 -24763
- data/maps/sasm-mon-Mong-Latn-general-1978.yaml +0 -389
- data/maps/sasm-mon-Mong-Latn-phonetic-1978.yaml +0 -354
- data/maps/ses-ara-Arab-Latn-1930.yaml +0 -283
- data/maps/stategeocadastre-ukr-Cyrl-Latn-1993.yaml +0 -222
- data/maps/ua-ukr-Cyrl-Latn-1996.yaml +0 -197
- data/maps/ua-ukr-Cyrl-Latn-2007.yaml +0 -75
- data/maps/ua-ukr-Cyrl-Latn-2010.yaml +0 -192
- data/maps/un-amh-Ethi-Latn-2016.yaml +0 -602
- data/maps/un-ara-Arab-Latn-1971.yaml +0 -139
- data/maps/un-ara-Arab-Latn-1972.yaml +0 -159
- data/maps/un-ara-Arab-Latn-2017.yaml +0 -420
- data/maps/un-asm-Beng-Latn-1972.yaml +0 -223
- data/maps/un-bel-Cyrl-Latn-2007.yaml +0 -114
- data/maps/un-ben-Beng-Latn-2016.yaml +0 -534
- data/maps/un-ell-Grek-Latn-1987-phonetic.yaml +0 -780
- data/maps/un-ell-Grek-Latn-1987-tl.yaml +0 -31
- data/maps/un-ell-Grek-Latn-1987-ts.yaml +0 -19
- data/maps/un-guj-Gujr-Latn-1972.yaml +0 -229
- data/maps/un-hin-Deva-Latn-2016.yaml +0 -316
- data/maps/un-kan-Kana-Latn-2016.yaml +0 -254
- data/maps/un-mal-Mlym-Latn-1972.yaml +0 -251
- data/maps/un-mar-Deva-Latn-2016.yaml +0 -102
- data/maps/un-mon-Mong-Latn-general-2013.yaml +0 -264
- data/maps/un-mon-Mong-Latn-phonetic-2013.yaml +0 -264
- data/maps/un-nep-Deva-Latn-1972.yaml +0 -269
- data/maps/un-nep-Deva-Latn-2013.yaml +0 -74
- data/maps/un-ori-Orya-Latn-1972.yaml +0 -247
- data/maps/un-pan-Guru-Latn-1972.yaml +0 -402
- data/maps/un-prs-Arab-Latn-1967.yaml +0 -236
- data/maps/un-rus-Cyrl-Latn-1987.yaml +0 -166
- data/maps/un-tam-Taml-Latn-1972.yaml +0 -194
- data/maps/un-tel-Telu-Latn-1972.yaml +0 -270
- data/maps/un-ukr-Cyrl-Latn-1998.yaml +0 -53
- data/maps/un-ukr-Cyrl-Latn-2012.yaml +0 -162
- data/maps/un-urd-Arab-Latn-1972.yaml +0 -405
- data/maps/var-amh-Ethi-Latn-eae-2003.yaml +0 -466
- data/maps/var-gez-Ethi-Latn-eae-2003.yaml +0 -76
- data/maps/var-hin-Deva-Latn-hunterian-1872.yaml +0 -221
- data/maps/var-jpn-Hrkt-Latn-hepburn-1886.yaml +0 -406
- data/maps/var-jpn-Hrkt-Latn-hepburn-1954.yaml +0 -386
- data/maps/var-kor-Hang-Hang-jamo.yaml +0 -11193
- data/maps/var-kor-Hang-Latn-mr-1939.yaml +0 -1054
- data/maps/var-kor-Kore-Hang-2013.yaml +0 -59754
- data/maps/var-kor-Kore-Latn-mr-1939.yaml +0 -36
- data/maps/var-mar-Deva-Latn-hunterian-1872.yaml +0 -43
- data/maps/var-mon-Mong-Latn-1930.yaml +0 -102
- data/maps/var-mon-Mong-Latn-lessing.yaml +0 -272
- data/maps/var-mon-Mong-Latn-vpmc.yaml +0 -274
- data/maps/var-pra-Deva-Latn-iast-1912.yaml +0 -30
- data/maps/var-san-Deva-Latn-iast-1912.yaml +0 -149
- data/maps/var-tha-Thai-Thai-phonemic.yaml +0 -59
- data/maps/var-tha-Thai-Zsym-ipa.yaml +0 -301
- data/maps/var-zho-Hani-Latn-wd-1979.yaml +0 -38912
- data/spec/interscript/filenames_spec.rb +0 -21
- data/spec/interscript/mapping_spec.rb +0 -42
- data/spec/interscript_spec.rb +0 -37
- data/spec/spec_helper.rb +0 -3
@@ -1,21 +0,0 @@
|
|
1
|
-
---
|
2
|
-
authority_id: odni
|
3
|
-
id: 2005
|
4
|
-
language: iso-639-2:mkd
|
5
|
-
source_script: Cyrl
|
6
|
-
destination_script: Latn
|
7
|
-
name: Standards for the transliteration of macedonian personal names in written reports and products
|
8
|
-
creation_date: 2005
|
9
|
-
confirmation_date: 2005
|
10
|
-
description: |
|
11
|
-
Office of the Director Of National Intelligence Macedonian Personal Names 2004 System
|
12
|
-
|
13
|
-
tests:
|
14
|
-
- source: Билјана
|
15
|
-
expected: Biljana
|
16
|
-
- source: Душко
|
17
|
-
expected: Dushko
|
18
|
-
|
19
|
-
map:
|
20
|
-
inherit: odni-mkd-Cyrl-Latn-2015
|
21
|
-
rules:
|
@@ -1,122 +0,0 @@
|
|
1
|
-
---
|
2
|
-
authority_id: odni
|
3
|
-
id: 2015
|
4
|
-
language: iso-639-2:mkd
|
5
|
-
source_script: Cyrl
|
6
|
-
destination_script: Latn
|
7
|
-
name: Standards for the transliteration of macedonian personal names in written reports and products
|
8
|
-
source: ICS-630-01 Annex H
|
9
|
-
creation_date: 2015
|
10
|
-
confirmation_date: 2015
|
11
|
-
description: |
|
12
|
-
This system is the Intelligence Community (IC) standard for the transliteration of Macedonian
|
13
|
-
names that will be applied to all final written reports and products for IC consumers. It is not
|
14
|
-
intended to eliminate variations of a name that can contribute forensic information. Rather, it is
|
15
|
-
to provide an IC standard Romanized (English) transliteration from Macedonian that can then be
|
16
|
-
linked to forensic information in ways that will help identify the referent of the name.
|
17
|
-
|
18
|
-
In cases where an individual’s name has already been transliterated in a variant spelling, the IC
|
19
|
-
Standard spelling should appear first, followed by the variant spelling(s) in parentheses at the
|
20
|
-
first usage. In addition, if the original Cyrillic spelling is known, that spelling should also
|
21
|
-
appear in parentheses following the name, if possible, following best practices of the issuing
|
22
|
-
organization and taking into consideration information system capabilities. This convention is
|
23
|
-
designed to ensure that vital forensic information is not lost.
|
24
|
-
|
25
|
-
For names of persons who are known to not be part of the Macedonian-speaking community, use the
|
26
|
-
relevant IC transliteration standard for names from that language (e.g., Mikhail, Yitzhak).
|
27
|
-
A translator’s note may be used to clarify the known origin of the person. Spell names of
|
28
|
-
individuals from languages that are written in Roman letters as they are spelled in those
|
29
|
-
languages (e.g., George Clooney, Jorge Garcia, Georges Pompidou).
|
30
|
-
|
31
|
-
In the case of active senior government officials in the on-line CIA World Factbook and the on-
|
32
|
-
line directory of Chiefs of State and Cabinet Members of Foreign Governments, the spellings given
|
33
|
-
in these on-line reference works should be used in place of the IC Standard. For any individual
|
34
|
-
who has at one time been listed in the Factbook or Chiefs of State directory but who no longer
|
35
|
-
appears in those resources (i.e. is no longer a government official), the IC Standard spelling
|
36
|
-
should appear first, with the spelling, if known, as it previously appeared in those resources
|
37
|
-
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 of
|
42
|
-
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
|
-
tests:
|
48
|
-
- source: Билјана
|
49
|
-
expected: Biljana
|
50
|
-
- source: Душко
|
51
|
-
expected: Dushko
|
52
|
-
|
53
|
-
map:
|
54
|
-
rules:
|
55
|
-
- pattern: \u0053 # S => Dz
|
56
|
-
result: Dz
|
57
|
-
- pattern: \u0073 # s => dz
|
58
|
-
result: dz
|
59
|
-
|
60
|
-
characters:
|
61
|
-
'\u0410': 'A' # А
|
62
|
-
'\u0411': 'B' # Б
|
63
|
-
'\u0412': 'V' # В
|
64
|
-
'\u0413': 'G' # Г
|
65
|
-
'\u0414': 'D' # Д
|
66
|
-
'\u0403': 'Gj' # Ѓ
|
67
|
-
'\u0415': 'E' # Е
|
68
|
-
'\u0416': 'Zh' # Ж
|
69
|
-
'\u0417': 'Z' # З
|
70
|
-
'\u0418': 'I' # И
|
71
|
-
'\u0408': 'J' # Ј
|
72
|
-
'\u041A': 'K' # К
|
73
|
-
'\u041B': 'L' # Л
|
74
|
-
'\u0409': 'Lj' # Љ
|
75
|
-
'\u041C': 'M' # М
|
76
|
-
'\u041D': 'N' # Н
|
77
|
-
'\u040A': Nj # Њ
|
78
|
-
'\u041E': 'O' # О
|
79
|
-
'\u041F': 'P' # П
|
80
|
-
'\u0420': 'R' # Р
|
81
|
-
'\u0421': 'S' # С
|
82
|
-
'\u0422': 'T' # Т
|
83
|
-
'\u040C': 'Kj' # Ќ
|
84
|
-
'\u0423': 'U' # У
|
85
|
-
'\u0424': 'F' # Ф
|
86
|
-
'\u0425': 'H' # Х
|
87
|
-
'\u0426': 'Ts' # Ц
|
88
|
-
'\u0427': 'Ch' # Ч
|
89
|
-
'\u040F': 'Dzh' # Џ
|
90
|
-
'\u0428': 'Sh' # Ш
|
91
|
-
'\u2019': '' # ’
|
92
|
-
|
93
|
-
'\u0430': 'a' # а
|
94
|
-
'\u0431': 'b' # б
|
95
|
-
'\u0432': 'v' # в
|
96
|
-
'\u0433': 'g' # г
|
97
|
-
'\u0434': 'd' # д
|
98
|
-
'\u0453': 'gj' # ѓ
|
99
|
-
'\u0435': 'e' # e
|
100
|
-
'\u0436': 'zh' # ж
|
101
|
-
'\u0437': 'z' # з
|
102
|
-
'\u0438': 'i' # и
|
103
|
-
'\u0458': 'j' # ј
|
104
|
-
'\u043A': 'k' # к
|
105
|
-
'\u043B': 'l' # л
|
106
|
-
'\u0459': 'lj' # љ
|
107
|
-
'\u043C': 'm' # м
|
108
|
-
'\u043D': 'n' # н
|
109
|
-
'\u045A': 'nj' # њ
|
110
|
-
'\u043E': 'o' # о
|
111
|
-
'\u043F': 'p' # п
|
112
|
-
'\u0440': 'r' # р
|
113
|
-
'\u0441': 's' # с
|
114
|
-
'\u0442': 't' # т
|
115
|
-
'\u045C': 'kj' # ќ
|
116
|
-
'\u0443': 'u' # у
|
117
|
-
'\u0444': 'f' # ф
|
118
|
-
'\u0445': 'h' # х
|
119
|
-
'\u0446': 'ts' # ц
|
120
|
-
'\u0447': 'ch' # ч
|
121
|
-
'\u045F': 'dzh' # џ
|
122
|
-
'\u0448': 'sh' # ш
|
@@ -1,123 +0,0 @@
|
|
1
|
-
---
|
2
|
-
authority_id: odni
|
3
|
-
id: 2004
|
4
|
-
language: iso-639-3:prs
|
5
|
-
source_script: Arab
|
6
|
-
destination_script: Latn
|
7
|
-
name: Intelligence Community (IC) Standard for the Transliteration of Dari Personal Names (2004)
|
8
|
-
url: https://github.com/interscript/interscript-private-references/blob/master/odni/Farsi_(Persian)_%26_Dari_IC_Standards.doc
|
9
|
-
creation_date: 2004
|
10
|
-
confirmation_date: 2004-11
|
11
|
-
description: |
|
12
|
-
|
13
|
-
notes:
|
14
|
-
- This standard is intended only for those Afghan names
|
15
|
-
that have a common bond or similarity with Iranian or
|
16
|
-
Arabic names. They should not, for example, be used for
|
17
|
-
Pashto names, for which a separate standard should be used.
|
18
|
-
- Long/short vowels:- There is no distinction made in Roman
|
19
|
-
between long and short a:- E.g., Farhad (first a is short,
|
20
|
-
second is long).
|
21
|
-
- Double consonants:- Double consonants represented by the
|
22
|
-
tashdid are shown by doubling the Roman letter:- Mohammad.
|
23
|
-
Exceptions:- Consonants represented by Roman digraphs (
|
24
|
-
e.g., sh, ch) are not doubled:- Mobasher [not:- Mobashsher]
|
25
|
-
. Double letters are only used for tashdid (thus, Hosein [
|
26
|
-
not Hossein]) or to reflect the ‘sun letter’ assimilation (
|
27
|
-
see below).
|
28
|
-
- Hamzeh:- The hamzeh is represented name-internally by an
|
29
|
-
apostrophe, as is the ain. Name-initially, however,
|
30
|
-
neither hamzeh nor ain are indicated in transliteration (
|
31
|
-
e.g., Abdorrahman, not 'Abdorrahman).
|
32
|
-
- Digraphs:- No distinction is drawn in Roman between
|
33
|
-
digraphs such as sh and single contiguous letters (e.g., s
|
34
|
-
followed by h).
|
35
|
-
- Arabic definite article "al" ('the'):- Common in many
|
36
|
-
names borrowed from Arabic, the transliteration should show
|
37
|
-
the 'sun letter' assimilation rather than the “l” for the
|
38
|
-
lam. That is:- Abdorrahman. Note also that the "Abdol +
|
39
|
-
attribute of Allah" names are written as one unanalyzed
|
40
|
-
word, as are other names that contain the definite
|
41
|
-
article:- Shamsoddin (not Shams al-Din), Nezamoddin, etc.
|
42
|
-
- Diphthongs:- Diphthongs are written ei and ow
|
43
|
-
respectively:- Hosein; Khosrow.
|
44
|
-
- Yeh maqsura (final yeh pronounced as “a”):- should be
|
45
|
-
written as “a” as in “Musa”.
|
46
|
-
|
47
|
-
- Special Rules
|
48
|
-
|
49
|
-
- Hyphens:- A hyphen is used to indicate the ezafeh
|
50
|
-
construction:- Arshad-e Ameri
|
51
|
-
- Borrowed names that incorporate the name of God (Allah)
|
52
|
-
are transliterated as one word, with the letter "o":- E.g.,
|
53
|
-
Abdollah, Ayatollah, Azizollah.
|
54
|
-
- Foreign names borrowed or appearing in Dari are spelled
|
55
|
-
according to the standard Western tradition (even if there
|
56
|
-
is an Arabic or Dari version of the same name):- Joseph,
|
57
|
-
Michael.
|
58
|
-
- Common suffixes, such as gol, pur, mand, yar, zadeh,
|
59
|
-
etc., as well as nesbeh (‘relationship’ (to place of birth,
|
60
|
-
etc.)) names derived with these suffixes (e.g., abadi) are
|
61
|
-
written as part of the name:-
|
62
|
-
|
63
|
-
gol Parigol, Ziagol
|
64
|
-
pur Shahpur, Mehrpur
|
65
|
-
mand Gulahmand
|
66
|
-
yar Aminyar
|
67
|
-
zadeh Ismailzadeh, Karimzadeh
|
68
|
-
|
69
|
-
abadi Kamalabadi
|
70
|
-
|
71
|
-
|
72
|
-
tests:
|
73
|
-
- source: مُوسَى
|
74
|
-
expected: musa
|
75
|
-
|
76
|
-
- source: مُؤمِن
|
77
|
-
expected: momen
|
78
|
-
|
79
|
-
- source: رِضايي
|
80
|
-
expected: rezai
|
81
|
-
|
82
|
-
- source: مُبَشِّر
|
83
|
-
expected: mobasher
|
84
|
-
|
85
|
-
- source: حَسَّان
|
86
|
-
expected: hassan
|
87
|
-
|
88
|
-
- source: حَسَن
|
89
|
-
expected: hasan
|
90
|
-
|
91
|
-
- source: صَفَّار
|
92
|
-
expected: saffar
|
93
|
-
|
94
|
-
- source: صَفَر
|
95
|
-
expected: safar
|
96
|
-
|
97
|
-
map:
|
98
|
-
inherit: odni-fas-Arab-Latn-2004
|
99
|
-
characters:
|
100
|
-
|
101
|
-
'\u0626' : '' # ئ
|
102
|
-
'\u0624' : '' # ؤ
|
103
|
-
|
104
|
-
# shadda
|
105
|
-
|
106
|
-
'\u0642\u0651' : 'qq' # ق
|
107
|
-
'\u0648\u0651' : 'ww' # و
|
108
|
-
|
109
|
-
'\u0621': '' # ء
|
110
|
-
|
111
|
-
# FROM NOTES
|
112
|
-
|
113
|
-
'\u064a\u064a' : 'i' # NOTE 4 (2)
|
114
|
-
'\u06cc\u06cc' : 'i'
|
115
|
-
|
116
|
-
'\u0627\u064a\b' : 'i' # NOTE 4 (3)
|
117
|
-
'\u0627\u06cc\b' : 'i'
|
118
|
-
|
119
|
-
# Farsi consonant characters
|
120
|
-
|
121
|
-
'\u0639' : '' # ع # new
|
122
|
-
'\u0642' : 'q' # ق
|
123
|
-
'\u0648' : 'w' # و
|
@@ -1,228 +0,0 @@
|
|
1
|
-
---
|
2
|
-
authority_id: odni
|
3
|
-
id: 2015
|
4
|
-
language: iso-639-3:prs
|
5
|
-
source_script: Arab
|
6
|
-
destination_script: Latn
|
7
|
-
name: ODNI Persian Farsi Dari Personal Names 2015 System, ICS-630-01 Annex J
|
8
|
-
url: https://github.com/interscript/ics-630-01/blob/master/reference-docs/ANNEX%20J%20-%20Persian-Farsi_Dari_Personal_Names_FLTS_2018_Revision%20(U).pdf
|
9
|
-
creation_date: 2015
|
10
|
-
confirmation_date: 2015-11
|
11
|
-
description: |
|
12
|
-
This system is the Intelligence Community (IC) standard for
|
13
|
-
the transliteration of Persian (Farsi)
|
14
|
-
and Dari names that is applied to all final written reports
|
15
|
-
and products for IC consumers. It is not
|
16
|
-
intended to eliminate variations of a name that can
|
17
|
-
contribute forensic information. Rather, it is
|
18
|
-
to provide an IC standard Romanized (English)
|
19
|
-
transliteration from Persian (Farsi) and Dari that
|
20
|
-
can then be linked to forensic information in ways that
|
21
|
-
will help identify the referent of the
|
22
|
-
name.
|
23
|
-
|
24
|
-
In cases where an individual’s name has already been
|
25
|
-
transliterated in a variant spelling, the IC
|
26
|
-
Standard spelling should appear first, followed by the
|
27
|
-
variant spelling(s) in parentheses at the
|
28
|
-
first usage. In addition, if the original Perso-Arabic
|
29
|
-
script spelling is known, that spelling should
|
30
|
-
also appear in parentheses following the name, if possible,
|
31
|
-
following best practices of the issuing
|
32
|
-
organization and taking into consideration information
|
33
|
-
system capabilities. This convention is
|
34
|
-
designed to ensure that vital forensic information is not
|
35
|
-
lost while maintaining consistency.
|
36
|
-
|
37
|
-
For names of individuals who are not part of the Persian-(
|
38
|
-
Farsi) or Dari-speaking community,
|
39
|
-
but whose names are encountered in Farsi or Dari, use the
|
40
|
-
relevant IC transliteration standard for
|
41
|
-
names from that language (e.g., Mikhail, Yitzhak, Abu-
|
42
|
-
Murtada). Spell names of individuals
|
43
|
-
from languages that are written in Roman letters as they
|
44
|
-
are spelled in those languages (e.g.,
|
45
|
-
George Clooney, Jorge Garcia, Georges Pompidou).
|
46
|
-
In the case of active senior government officials in the
|
47
|
-
online CIA World Factbook and the
|
48
|
-
online directory of Chiefs of State and Cabinet Members of
|
49
|
-
Foreign Governments, the spellings
|
50
|
-
given in these online reference works should be used in
|
51
|
-
place of the IC Standard, with the IC
|
52
|
-
Standard included as a variant in parentheses at the first
|
53
|
-
usage. For any individual who has at one
|
54
|
-
time been listed in the Factbook or Chiefs of State
|
55
|
-
directory but who no longer appears in those
|
56
|
-
resources (i.e., is no longer a government official), the
|
57
|
-
IC Standard spelling should appear first,
|
58
|
-
with the spelling, if known, as it previously appeared in
|
59
|
-
those resources listed within parentheses
|
60
|
-
at the first usage (e.g., former president Mahmud
|
61
|
-
Ahmadinezhad (Ahmadi-Nejad).
|
62
|
-
|
63
|
-
The primary goal is to produce a consistent Romanized
|
64
|
-
transcription of names that is specifically
|
65
|
-
readable to the English-speaking non-specialist. The system
|
66
|
-
uses the 26 letters of the standard
|
67
|
-
(English) Roman alphabet plus the apostrophe and hyphen.
|
68
|
-
Some ambiguities in the Romanized
|
69
|
-
form will occur without the use of diacritics. However,
|
70
|
-
within the context of a report, where
|
71
|
-
additional information about the individual is provided,
|
72
|
-
the referent will be clearly identified.
|
73
|
-
This system will be used in conjunction with online tools,
|
74
|
-
name dictionaries, and lists containing
|
75
|
-
conventional spellings of names of well-known individuals.
|
76
|
-
|
77
|
-
notes:
|
78
|
-
- |
|
79
|
-
This standard is intended only for those Afghan names that
|
80
|
-
have a common bond or similarity with Iranian names. It
|
81
|
-
should not, for example, be used for names of Pashtuns, for
|
82
|
-
which the Pashto IC Standard should be used.
|
83
|
-
|
84
|
-
- |
|
85
|
-
Alef maqsura (final yeh pronounced as “a”): should be written “a” as in
|
86
|
-
“Musa”.
|
87
|
-
|
88
|
-
- |
|
89
|
-
Digraphs: No distinction is drawn between digraphs
|
90
|
-
such as sh and single contiguous letters (e.g., s followed
|
91
|
-
by h).
|
92
|
-
|
93
|
-
- |
|
94
|
-
Long/short vowels: There is no distinction made in
|
95
|
-
Roman between long and short a: E.g., Farhad (first a is
|
96
|
-
short, second is long).
|
97
|
-
|
98
|
-
- |
|
99
|
-
Diphthongs: Diphthongs are written ei and ow respectively:
|
100
|
-
Hosein; Khosrow.
|
101
|
-
|
102
|
-
- |
|
103
|
-
Double consonants: Double consonants represented by the
|
104
|
-
tashdid are shown by doubling the
|
105
|
-
Roman letter: Mo'azzami, Tavakkoli, Sajjad. Exceptions: Ein
|
106
|
-
and consonants represented by
|
107
|
-
Roman digraphs (e.g., sh, ch) are not doubled (Mobasher,
|
108
|
-
not Mobashsher). Double letters
|
109
|
-
are only used for tashdid (Hosein, not Hossein) or to
|
110
|
-
reflect “sun-letter” assimilation (see
|
111
|
-
below). Special care should be taken when possible to
|
112
|
-
discriminate between doubled and
|
113
|
-
non-doubled letters in names that are otherwise
|
114
|
-
indistinguishable in their transliterated forms:
|
115
|
-
Hasan (حسن (vs. Hassan (حسان(
|
116
|
-
|
117
|
-
- |
|
118
|
-
Compound first names will be written as distinct words:
|
119
|
-
Ali Reza (not Alireza or Ali-Reza);
|
120
|
-
Mohammad Hosein (not Mohammadhosein or Mohammad-Hosein),
|
121
|
-
with the exception of cases identified below.
|
122
|
-
|
123
|
-
- |
|
124
|
-
Arabic-origin names that incorporate the word “Allah” are
|
125
|
-
transliterated as one word, with the letter ‘o’ replacing the
|
126
|
-
alef in Allah (Azizollah, Rahimollah).
|
127
|
-
|
128
|
-
- |
|
129
|
-
Name-internal Arabic definite article "al" ()ال: Common
|
130
|
-
in many names borrowed
|
131
|
-
from Arabic, the transliteration should follow the Arabic
|
132
|
-
rules for “sun letter” assimilation in spoken form and
|
133
|
-
reflect the nominative case. That is: Abdorrahman, not Abd-
|
134
|
-
al-Rahman. (The Arabic sun letters are: ت،ث،د،ذ،
|
135
|
-
ر، ز،س،ش،ص،ض،ط،ظ،ل،ن . These correspond with
|
136
|
-
d, l, n, r, s, sh, t, and z.) Note that the moon letters (
|
137
|
-
i.e., all other Arabic letters) are not assimilated (e.g.,
|
138
|
-
Abdolhasan, Abolfazl). Note also that the “Abdollah” and
|
139
|
-
“Abdol + attribute of Allah” names are written as a single
|
140
|
-
word, as are other names that contain the definite article:
|
141
|
-
Shamsoddin (not Shams-al-Din), Nezamoddin, etc.
|
142
|
-
|
143
|
-
- |
|
144
|
-
Name-initial Arabic definite article "al" ()ال: For
|
145
|
-
Arabic-origin names starting with the definite article “al” ()
|
146
|
-
ال, follow the Arabic standard of al-Sisi ()الصیصی (not
|
147
|
-
Alsisi or Assisi) and forego sun-letter assimilation.
|
148
|
-
|
149
|
-
- |
|
150
|
-
Arabic "family marker" of Al ()آل: For Arabic-origin
|
151
|
-
names starting with the "family marker" of Al ()آل,
|
152
|
-
follow the Arabic standard of Al Davud (داود )آل (not
|
153
|
-
Aldavud or Aledavud).
|
154
|
-
|
155
|
-
- |
|
156
|
-
Kunyas: In the rather rare case where
|
157
|
-
a Persian uses a kunya (a name for an adult normally
|
158
|
-
derived from his or her eldest child, and sometimes
|
159
|
-
employed as a nom de guerre), this name will be rendered
|
160
|
-
with a space separating the two elements (Abu Hosein, Abu
|
161
|
-
Ghasem). Note that this does not apply when the person's
|
162
|
-
given or family name was derived from a predecessor's
|
163
|
-
kunya. In these cases, the leading element should be
|
164
|
-
treated as a prefix as indicated below (Abuhosein[i],
|
165
|
-
Abughasem[i]).
|
166
|
-
|
167
|
-
tests:
|
168
|
-
- source: مُوسَى
|
169
|
-
expected: musa
|
170
|
-
|
171
|
-
- source: مُؤمِن
|
172
|
-
expected: momen
|
173
|
-
|
174
|
-
- source: رِضايي
|
175
|
-
expected: rezai
|
176
|
-
|
177
|
-
- source: مُبَشِّر
|
178
|
-
expected: mobasher
|
179
|
-
|
180
|
-
- source: حَسَّان
|
181
|
-
expected: hassan
|
182
|
-
|
183
|
-
- source: حَسَن
|
184
|
-
expected: hasan
|
185
|
-
|
186
|
-
- source: صَفَّار
|
187
|
-
expected: saffar
|
188
|
-
|
189
|
-
- source: صَفَر
|
190
|
-
expected: safar
|
191
|
-
|
192
|
-
map:
|
193
|
-
inherit: odni-fas-Arab-Latn-2015
|
194
|
-
characters:
|
195
|
-
|
196
|
-
# ta' marboota
|
197
|
-
'\u0629' : 'ah'
|
198
|
-
|
199
|
-
'\u0626' : '' # ئ
|
200
|
-
'\u0624' : '' # ؤ
|
201
|
-
|
202
|
-
# Farsi Vowel (Pointing)
|
203
|
-
|
204
|
-
# '\u064e\u0648' : 'ow' # ـَو
|
205
|
-
# '\u064e\u0648\u0652' : 'aw' # ـَوْ
|
206
|
-
|
207
|
-
# additional symbols
|
208
|
-
|
209
|
-
# shadda
|
210
|
-
|
211
|
-
'\u0642\u0651' : 'qq' # ق
|
212
|
-
'\u0648\u0651' : 'ww' # و
|
213
|
-
|
214
|
-
'\u0621': '' # ء
|
215
|
-
|
216
|
-
# FROM NOTES
|
217
|
-
|
218
|
-
'\u064a\u064a' : 'i' # NOTE 4 (2)
|
219
|
-
'\u06cc\u06cc' : 'i'
|
220
|
-
|
221
|
-
'\u0627\u064a\b' : 'i' # NOTE 4 (3)
|
222
|
-
'\u0627\u06cc\b' : 'i'
|
223
|
-
|
224
|
-
# Farsi consonant characters
|
225
|
-
|
226
|
-
'\u0639' : '' # ع # new
|
227
|
-
'\u0642' : 'q' # ق
|
228
|
-
'\u0648' : 'w' # و
|