- 'MacRomanian' => {inherit => ['MacRoman' => 'A0-BF+D0-DF']},
- 'MacRumanian' => {inherit => ['MacRomanian' => 'A0-BF+D0-DF', 'MacRoman' => 'A0-BF+D0-DF']},
- 'MacCroatian' => {inherit => ['MacRoman' => 'A0']},
- 'MacCentralEurRoman' => {inherit => ['MacRoman' => '80']},
- 'MacIcelandic' => {inherit => ['MacRoman' => 'A0-AF+D0-EF']},
- 'MacTurkish' => {inherit => ['MacRoman' => 'D0-DF']}, # F5 is unassigned
- 'MacSami' => {inherit => ['MacIcelandic' => '90-BF+D0-DF+F0', 'MacRoman' => '90']},
- 'MacGreek' => {inherit => ['MacRoman' => '80']},
- 'MacCyrillic' => {inherit => ['MacRoman' => '80']},
- 'MacHebrew' => {inherit => ['iso-8859-8' => '80', 'MacRoman' => '80-8F+A0']}, # partial ascii
- 'MacArabic' => {inherit => ['iso-8859-6' => '80', 'cp864' => '80', 'MacRoman' => '80']}, #TODO: multiple parents
- 'MacFarsi' => {inherit => ['MacArabic' => 'B0-BF', 'MacRoman' => '80']},
+ 'macromanian' => {inherit => ['MacRoman' => 'A0-BF+D0-DF']},
+ 'macrumanian' => {inherit => ['MacRomanian' => 'A0-BF+D0-DF', 'MacRoman' => 'A0-BF+D0-DF']},
+ 'maccroatian' => {inherit => ['MacRoman' => 'A0']},
+ 'maccentraleurroman' => {inherit => ['MacRoman' => '80']},
+ 'macicelandic' => {inherit => ['MacRoman' => 'A0-AF+D0-EF']},
+ 'macturkish' => {inherit => ['MacRoman' => 'D0-DF']}, # F5 is unassigned
+ 'macsami' => {inherit => ['MacIcelandic' => '90-BF+D0-DF+F0', 'MacRoman' => '90']},
+ 'macgreek' => {inherit => ['MacRoman' => '80']},
+ 'maccyrillic' => {inherit => ['MacRoman' => '80']},
+ 'machebrew' => {
+ inherit => ['iso-8859-8' => '80', 'MacRoman' => '80-8F+A0'], # ignore partial ascii
+ replace => {
+ # strip private use characters for unneeded roundtrip
+ 0xDE => chr(0x5C7), # qamats qatan
+ 0xC0 => 'לֹ', # lamed holam
+ #TODO: private use for canoral codes (obsolete nikud positioning)
+ },
+ },
+ 'macarabic' => {inherit => ['iso-8859-6' => '80', 'cp864' => '80', 'MacRoman' => '80']}, #TODO: multiple parents
+ 'macfarsi' => {inherit => ['MacArabic' => 'B0-BF', 'MacRoman' => '80']},
+ 'macthai' => {
+ inherit => ['iso-8859-11' => '80-9F+D0'],
+ replace => {
+ # strip appended private use characters for unneeded roundtrip
+ 0x83 => "\x{E48}", 0x88 => "\x{E48}", 0x98 => "\x{E48}",
+ 0x84 => "\x{E49}", 0x89 => "\x{E49}", 0x99 => "\x{E49}",
+ 0x85 => "\x{E4A}", 0x8A => "\x{E4A}", 0x9A => "\x{E4A}",
+ 0x86 => "\x{E4B}", 0x8B => "\x{E4B}", 0x9B => "\x{E4B}",
+ 0x87 => "\x{E4C}", 0x8C => "\x{E4C}", 0x9C => "\x{E4C}",
+ 0x8F => "\x{E4D}",
+ 0x92 => "\x{E31}", 0x93 => "\x{E47}", 0x94 => "\x{E34}",
+ 0x95 => "\x{E35}", 0x96 => "\x{E36}", 0x97 => "\x{E37}",
+ },
+ },