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