diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2002-03-09 18:49:55 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-03-09 18:49:55 +0000 |
commit | e1b390dd5c0537eb1ffbc6693d65bbe6c5a6e9cd (patch) | |
tree | 4ac28684c402e3e0d54088cdcf495f2d1d1180bb | |
parent | ed133382bf161b27075e50f077a902524898f238 (diff) | |
download | perl-e1b390dd5c0537eb1ffbc6693d65bbe6c5a6e9cd.tar.gz |
Not everybody has Encode::HanExtra.
p4raw-id: //depot/perl@15135
-rw-r--r-- | ext/Encode/Encode.pm | 52 |
1 files changed, 31 insertions, 21 deletions
diff --git a/ext/Encode/Encode.pm b/ext/Encode/Encode.pm index a2792259d7..5d211843f6 100644 --- a/ext/Encode/Encode.pm +++ b/ext/Encode/Encode.pm @@ -57,27 +57,37 @@ our %winlatin2cp = ( 'Vietnamese' => 1258, ); -our %external_tables = ( - 'euc-cn' => 'Encode/CN.pm', - gb2312 => 'Encode/CN.pm', - gb12345 => 'Encode/CN.pm', - gbk => 'Encode/CN.pm', - cp936 => 'Encode/CN.pm', - 'iso-ir-165' => 'Encode/CN.pm', - 'euc-jp' => 'Encode/JP.pm', - shiftjis => 'Encode/JP.pm', - macjapan => 'Encode/JP.pm', - cp932 => 'Encode/JP.pm', - 'euc-kr' => 'Encode/KR.pm', - ksc5601 => 'Encode/KR.pm', - cp949 => 'Encode/KR.pm', - big5 => 'Encode/TW.pm', - 'big5-hkscs' => 'Encode/TW.pm', - cp950 => 'Encode/TW.pm', - gb18030 => 'Encode/CN.pm', # HanExtra - big5plus => 'Encode/TW.pm', # HanExtra - 'euc-tw', => 'Encode/TW.pm', # HanExtra -); +BEGIN { + our %external_tables = + ( + 'euc-cn' => 'Encode/CN.pm', + gb2312 => 'Encode/CN.pm', + gb12345 => 'Encode/CN.pm', + gbk => 'Encode/CN.pm', + cp936 => 'Encode/CN.pm', + 'iso-ir-165' => 'Encode/CN.pm', + 'euc-jp' => 'Encode/JP.pm', + shiftjis => 'Encode/JP.pm', + macjapan => 'Encode/JP.pm', + cp932 => 'Encode/JP.pm', + 'euc-kr' => 'Encode/KR.pm', + ksc5601 => 'Encode/KR.pm', + cp949 => 'Encode/KR.pm', + big5 => 'Encode/TW.pm', + 'big5-hkscs' => 'Encode/TW.pm', + cp950 => 'Encode/TW.pm', + ); + + eval 'require Encode::HanExtra'; + unless ($@) { + push %external_tables, + ( + gb18030 => 'Encode/CN.pm', # HanExtra + big5plus => 'Encode/TW.pm', # HanExtra + 'euc-tw', => 'Encode/TW.pm', # HanExtra + ); + } +} sub encodings { |