1 # 2 # Demand-load module list 3 # 4 package Encode::Config; 5 our $VERSION = do { my @r = (q$Revision: 1.7 $ =~ /\d+/g); sprintf "%d."."%02d" x $#r, @r }; 6 7 use strict; 8 9 our %ExtModule = 10 ( 11 # Encode::Byte 12 #iso-8859-1 is in Encode.pm itself 13 'iso-8859-2' => 'Encode::Byte', 14 'iso-8859-3' => 'Encode::Byte', 15 'iso-8859-4' => 'Encode::Byte', 16 'iso-8859-5' => 'Encode::Byte', 17 'iso-8859-6' => 'Encode::Byte', 18 'iso-8859-7' => 'Encode::Byte', 19 'iso-8859-8' => 'Encode::Byte', 20 'iso-8859-9' => 'Encode::Byte', 21 'iso-8859-10' => 'Encode::Byte', 22 'iso-8859-11' => 'Encode::Byte', 23 'iso-8859-13' => 'Encode::Byte', 24 'iso-8859-14' => 'Encode::Byte', 25 'iso-8859-15' => 'Encode::Byte', 26 'iso-8859-16' => 'Encode::Byte', 27 'koi8-f' => 'Encode::Byte', 28 'koi8-r' => 'Encode::Byte', 29 'koi8-u' => 'Encode::Byte', 30 'viscii' => 'Encode::Byte', 31 'cp424' => 'Encode::Byte', 32 'cp437' => 'Encode::Byte', 33 'cp737' => 'Encode::Byte', 34 'cp775' => 'Encode::Byte', 35 'cp850' => 'Encode::Byte', 36 'cp852' => 'Encode::Byte', 37 'cp855' => 'Encode::Byte', 38 'cp856' => 'Encode::Byte', 39 'cp857' => 'Encode::Byte', 40 'cp860' => 'Encode::Byte', 41 'cp861' => 'Encode::Byte', 42 'cp862' => 'Encode::Byte', 43 'cp863' => 'Encode::Byte', 44 'cp864' => 'Encode::Byte', 45 'cp865' => 'Encode::Byte', 46 'cp866' => 'Encode::Byte', 47 'cp869' => 'Encode::Byte', 48 'cp874' => 'Encode::Byte', 49 'cp1006' => 'Encode::Byte', 50 'cp1250' => 'Encode::Byte', 51 'cp1251' => 'Encode::Byte', 52 'cp1252' => 'Encode::Byte', 53 'cp1253' => 'Encode::Byte', 54 'cp1254' => 'Encode::Byte', 55 'cp1255' => 'Encode::Byte', 56 'cp1256' => 'Encode::Byte', 57 'cp1257' => 'Encode::Byte', 58 'cp1258' => 'Encode::Byte', 59 'AdobeStandardEncoding' => 'Encode::Byte', 60 'MacArabic' => 'Encode::Byte', 61 'MacCentralEurRoman' => 'Encode::Byte', 62 'MacCroatian' => 'Encode::Byte', 63 'MacCyrillic' => 'Encode::Byte', 64 'MacFarsi' => 'Encode::Byte', 65 'MacGreek' => 'Encode::Byte', 66 'MacHebrew' => 'Encode::Byte', 67 'MacIcelandic' => 'Encode::Byte', 68 'MacRoman' => 'Encode::Byte', 69 'MacRomanian' => 'Encode::Byte', 70 'MacRumanian' => 'Encode::Byte', 71 'MacSami' => 'Encode::Byte', 72 'MacThai' => 'Encode::Byte', 73 'MacTurkish' => 'Encode::Byte', 74 'MacUkrainian' => 'Encode::Byte', 75 'nextstep' => 'Encode::Byte', 76 'hp-roman8' => 'Encode::Byte', 77 'gsm0338' => 'Encode::Byte', 78 # Encode::EBCDIC 79 'cp37' => 'Encode::EBCDIC', 80 'cp500' => 'Encode::EBCDIC', 81 'cp875' => 'Encode::EBCDIC', 82 'cp1026' => 'Encode::EBCDIC', 83 'cp1047' => 'Encode::EBCDIC', 84 'posix-bc' => 'Encode::EBCDIC', 85 # Encode::Symbol 86 'dingbats' => 'Encode::Symbol', 87 'symbol' => 'Encode::Symbol', 88 'AdobeSymbol' => 'Encode::Symbol', 89 'AdobeZdingbat' => 'Encode::Symbol', 90 'MacDingbats' => 'Encode::Symbol', 91 'MacSymbol' => 'Encode::Symbol', 92 # Encode::Unicode 93 'UCS-2BE' => 'Encode::Unicode', 94 'UCS-2LE' => 'Encode::Unicode', 95 'UTF-16' => 'Encode::Unicode', 96 'UTF-16BE' => 'Encode::Unicode', 97 'UTF-16LE' => 'Encode::Unicode', 98 'UTF-32' => 'Encode::Unicode', 99 'UTF-32BE' => 'Encode::Unicode', 100 'UTF-32LE' => 'Encode::Unicode', 101 'UTF-7' => 'Encode::Unicode::UTF7', 102 ); 103 104 unless (ord("A") == 193){ 105 %ExtModule = 106 ( 107 %ExtModule, 108 'euc-cn' => 'Encode::CN', 109 'gb12345-raw' => 'Encode::CN', 110 'gb2312-raw' => 'Encode::CN', 111 'hz' => 'Encode::CN', 112 'iso-ir-165' => 'Encode::CN', 113 'cp936' => 'Encode::CN', 114 'MacChineseSimp' => 'Encode::CN', 115 116 '7bit-jis' => 'Encode::JP', 117 'euc-jp' => 'Encode::JP', 118 'iso-2022-jp' => 'Encode::JP', 119 'iso-2022-jp-1' => 'Encode::JP', 120 'jis0201-raw' => 'Encode::JP', 121 'jis0208-raw' => 'Encode::JP', 122 'jis0212-raw' => 'Encode::JP', 123 'cp932' => 'Encode::JP', 124 'MacJapanese' => 'Encode::JP', 125 'shiftjis' => 'Encode::JP', 126 127 128 'euc-kr' => 'Encode::KR', 129 'iso-2022-kr' => 'Encode::KR', 130 'johab' => 'Encode::KR', 131 'ksc5601-raw' => 'Encode::KR', 132 'cp949' => 'Encode::KR', 133 'MacKorean' => 'Encode::KR', 134 135 'big5-eten' => 'Encode::TW', 136 'big5-hkscs' => 'Encode::TW', 137 'cp950' => 'Encode::TW', 138 'MacChineseTrad' => 'Encode::TW', 139 140 #'big5plus' => 'Encode::HanExtra', 141 #'euc-tw' => 'Encode::HanExtra', 142 #'gb18030' => 'Encode::HanExtra', 143 144 'MIME-Header' => 'Encode::MIME::Header', 145 'MIME-B' => 'Encode::MIME::Header', 146 'MIME-Q' => 'Encode::MIME::Header', 147 148 ); 149 } 150 151 # 152 # Why not export ? to keep ConfigLocal Happy! 153 # 154 while (my ($enc,$mod) = each %ExtModule){ 155 $Encode::ExtModule{$enc} = $mod; 156 } 157 158 1; 159 __END__ 160 161 =head1 NAME 162 163 Encode::Config -- internally used by Encode 164 165 =cut 166