cp737 cp869 cp866 cp855 cp862 cp864 )],
aix => [qw( cp1006 )],
win => [qw( cp1252 cp1250 cp1254 cp1257 cp1258 cp1253 cp1251 cp1255 cp1256 cp874 )],
cp737 cp869 cp866 cp855 cp862 cp864 )],
aix => [qw( cp1006 )],
win => [qw( cp1252 cp1250 cp1254 cp1257 cp1258 cp1253 cp1251 cp1255 cp1256 cp874 )],
westeur => [qw( iso-8859-1 iso-8859-15 cp1252 iso-8859-14 cp850 hp-roman8 nextstep MacRoman )],
centeur => [qw( iso-8859-2 iso-8859-16 cp1250 cp852 MacRomanian MacCroatian MacCentralEurRoman )], # MacRumanian only for DB
turkish => [qw( iso-8859-9 iso-8859-3 cp1254 cp857 MacTurkish )],
baltic => [qw( iso-8859-4 iso-8859-13 cp1257 cp775 )],
nordic => [qw( iso-8859-10 cp865 cp861 MacIcelandic MacSami )],
cyrillic => [qw( koi8-r koi8-u koi8-f iso-8859-5 cp1251 MacCyrillic cp866 cp855 )], # MacUkrainian is broken
westeur => [qw( iso-8859-1 iso-8859-15 cp1252 iso-8859-14 cp850 hp-roman8 nextstep MacRoman )],
centeur => [qw( iso-8859-2 iso-8859-16 cp1250 cp852 MacRomanian MacCroatian MacCentralEurRoman )], # MacRumanian only for DB
turkish => [qw( iso-8859-9 iso-8859-3 cp1254 cp857 MacTurkish )],
baltic => [qw( iso-8859-4 iso-8859-13 cp1257 cp775 )],
nordic => [qw( iso-8859-10 cp865 cp861 MacIcelandic MacSami )],
cyrillic => [qw( koi8-r koi8-u koi8-f iso-8859-5 cp1251 MacCyrillic cp866 cp855 )], # MacUkrainian is broken
greek => [qw( iso-8859-7 cp1253 MacGreek cp737 cp869 )],
hebrew => [qw( iso-8859-8 cp1255 MacHebrew cp862 )],
thai => [qw( iso-8859-11 cp874 MacThai )],
vietnamese => [qw( viscii cp1258 MacVietnamese )],
symbol => [qw( symbol dingbats MacDingbats AdobeZdingbat AdobeSymbol )],
greek => [qw( iso-8859-7 cp1253 MacGreek cp737 cp869 )],
hebrew => [qw( iso-8859-8 cp1255 MacHebrew cp862 )],
thai => [qw( iso-8859-11 cp874 MacThai )],
vietnamese => [qw( viscii cp1258 MacVietnamese )],
symbol => [qw( symbol dingbats MacDingbats AdobeZdingbat AdobeSymbol )],
'gsm0338' => ['ascii' => '0-127'],
'iso-8859-2' => ['iso-8859-1' => '160'],
'gsm0338' => ['ascii' => '0-127'],
'iso-8859-2' => ['iso-8859-1' => '160'],
'iso-8859-4' => ['iso-8859-2' => '160'],
'iso-8859-5' => ['iso-8859-1' => '160'],
'iso-8859-4' => ['iso-8859-2' => '160'],
'iso-8859-5' => ['iso-8859-1' => '160'],
'iso-8859-7' => ['iso-8859-1' => '160'],
'iso-8859-8' => ['iso-8859-1' => '160'],
'iso-8859-7' => ['iso-8859-1' => '160'],
'iso-8859-8' => ['iso-8859-1' => '160'],
'iso-8859-10' => ['iso-8859-4' => '160'],
'iso-8859-11' => ['iso-8859-1' => '160'],
'iso-8859-13' => ['iso-8859-4' => '160'],
'iso-8859-10' => ['iso-8859-4' => '160'],
'iso-8859-11' => ['iso-8859-1' => '160'],
'iso-8859-13' => ['iso-8859-4' => '160'],
'cp1252' => ['iso-8859-1' => '128-159'],
'cp1250' => ['iso-8859-2' => '128-191', 'cp1252' => '128'],
'cp1252' => ['iso-8859-1' => '128-159'],
'cp1250' => ['iso-8859-2' => '128-191', 'cp1252' => '128'],
'cp1251' => ['cp1252' => '128'],
'cp1253' => ['cp1252' => '128'],
'cp1255' => ['iso-8859-8' => '128-223', 'cp1252' => '128'],
'cp1256' => ['cp1252' => '128'],
'cp1251' => ['cp1252' => '128'],
'cp1253' => ['cp1252' => '128'],
'cp1255' => ['iso-8859-8' => '128-223', 'cp1252' => '128'],
'cp1256' => ['cp1252' => '128'],
'cp850' => ['cp437' => '144'],
'cp860' => ['cp437' => '128-175'],
'cp850' => ['cp437' => '144'],
'cp860' => ['cp437' => '128-175'],
'cp863' => ['cp437' => '128-175'],
'cp865' => ['cp437' => '144-175'],
'cp852' => ['cp850' => '128', 'cp437' => '128'],
'cp863' => ['cp437' => '128-175'],
'cp865' => ['cp437' => '144-175'],
'cp852' => ['cp850' => '128', 'cp437' => '128'],
- 'cp1006' => ['cp437' => '128'],
- 'cp737' => ['cp437' => '128'],
+ 'cp1006' => ['iso-8859-6' => '160', 'cp437' => '128'],
+ 'cp737' => ['cp437' => '128-175+224'],
- 'cp862' => ['cp437' => '128'],
- 'cp864' => ['cp437' => '128'],
+ 'cp862' => ['cp437' => '128-159'],
+ 'cp864' => ['MacArabic' => '128', 'iso-8859-6' => '128', 'cp437' => '128'], #TODO: compare form variants
'koi8-u' => ['koi8-r' => 128],
'koi8-f' => ['koi8-u' => 128],
'koi8-u' => ['koi8-r' => 128],
'koi8-f' => ['koi8-u' => 128],
- 'MacRomanian' => ['MacRoman' => '160'],
+ 'MacRomanian' => ['MacRoman' => '160-191+208-223'],
+ 'MacRumanian' => ['MacRomanian' => '160-191+208-223', 'MacRoman' => '160-191+208-223'],
'MacCroatian' => ['MacRoman' => '160'],
'MacCentralEurRoman' => ['MacRoman' => '128'],
'MacCroatian' => ['MacRoman' => '160'],
'MacCentralEurRoman' => ['MacRoman' => '128'],
- 'MacHebrew' => ['MacRoman' => '128'],
+ 'MacHebrew' => ['iso-8859-8' => '128', 'MacRoman' => '128-143+160'], # partial ascii
+ 'MacArabic' => ['iso-8859-6' => '128', 'cp864' => '128', 'MacRoman' => '128'], #TODO: multiple parents
+ 'MacFarsi' => ['MacArabic' => '176-191', 'MacRoman' => '128'],
(?: [-] (?<endpoint> \d+) )? \z
}x or Alert([
"Unknown range parameters for $input",
(?: [-] (?<endpoint> \d+) )? \z
}x or Alert([
"Unknown range parameters for $input",
# array of possibly multiple characters per code point
$row{table} = [
map { Encode::decode($row{set}, pack 'C*', $_) } $row{offset} .. $endpoint
# array of possibly multiple characters per code point
$row{table} = [
map { Encode::decode($row{set}, pack 'C*', $_) } $row{offset} .. $endpoint