diff --git a/mozilla/intl/uconv/src/charsetData.properties b/mozilla/intl/uconv/src/charsetData.properties index 042eb99cc5d..8886f935b14 100644 --- a/mozilla/intl/uconv/src/charsetData.properties +++ b/mozilla/intl/uconv/src/charsetData.properties @@ -62,6 +62,8 @@ iso-8859-6-e.notForBrowser = true iso-8859-6-i.notForBrowser = true ibm864i.notForBrowser = true ibm869.notForBrowser = true +ibm1125.notForBrowser = true +ibm1131.notForBrowser = true x-ibm1046.notForBrowser = true iso-8859-8-e.notForBrowser = true @@ -77,6 +79,8 @@ iso-8859-6-e.notForOutgoing = true iso-8859-6-i.notForOutgoing = true ibm864i.notForOutgoing = true ibm869.notForOutgoing = true +ibm1125.notForOutgoing = true +ibm1131.notForOutgoing = true x-ibm1046.notForOutgoing = true iso-8859-8-e.notForOutgoing = true iso-8859-8.notForOutgoing = true @@ -110,6 +114,8 @@ ibm862.LangGroup = he ibm864.LangGroup = ar ibm866.LangGroup = x-cyrillic ibm869.LangGroup = el +ibm1125.LangGroup = x-cyrillic +ibm1131.LangGroup = x-cyrillic x-ibm1046.LangGroup = ar iso-2022-cn.LangGroup = zh-CN iso-2022-jp.LangGroup = ja diff --git a/mozilla/intl/uconv/src/nsUConvModule.cpp b/mozilla/intl/uconv/src/nsUConvModule.cpp index 2bf183270d6..a1ab58ccf42 100644 --- a/mozilla/intl/uconv/src/nsUConvModule.cpp +++ b/mozilla/intl/uconv/src/nsUConvModule.cpp @@ -222,6 +222,8 @@ #endif #ifdef XP_OS2 #include "nsCP869ToUnicode.h" +#include "nsCP1125ToUnicode.h" +#include "nsCP1131ToUnicode.h" #endif #include "nsUnicodeToCP850.h" #include "nsUnicodeToCP852.h" @@ -235,6 +237,8 @@ #endif #ifdef XP_OS2 #include "nsUnicodeToCP869.h" +#include "nsUnicodeToCP1125.h" +#include "nsUnicodeToCP1131.h" #endif // ucvja @@ -410,6 +414,8 @@ NS_UCONV_REG_UNREG("x-IBM1046", NS_CP1046TOUNICODE_CID, NS_UNICODETOCP1046_CID) #endif #ifdef XP_OS2 NS_UCONV_REG_UNREG("IBM869", NS_CP869TOUNICODE_CID, NS_UNICODETOCP869_CID) +NS_UCONV_REG_UNREG("IBM1125", NS_CP1125TOUNICODE_CID, NS_UNICODETOCP1125_CID) +NS_UCONV_REG_UNREG("IBM1131", NS_CP1131TOUNICODE_CID, NS_UNICODETOCP1131_CID) #endif // ucvja @@ -1498,6 +1504,16 @@ static const nsModuleComponentInfo components[] = NS_UNICODEDECODER_CONTRACTID_BASE "IBM869", nsCP869ToUnicodeConstructor , }, + { + DECODER_NAME_BASE "IBM1125" , NS_CP1125TOUNICODE_CID, + NS_UNICODEDECODER_CONTRACTID_BASE "IBM1125", + nsCP1125ToUnicodeConstructor , + }, + { + DECODER_NAME_BASE "IBM1131" , NS_CP1131TOUNICODE_CID, + NS_UNICODEDECODER_CONTRACTID_BASE "IBM1131", + nsCP1131ToUnicodeConstructor , + }, #endif { ENCODER_NAME_BASE "IBM850" , NS_UNICODETOCP850_CID, @@ -1547,6 +1563,16 @@ static const nsModuleComponentInfo components[] = NS_UNICODEENCODER_CONTRACTID_BASE "IBM869", nsUnicodeToCP869Constructor, }, + { + ENCODER_NAME_BASE "IBM1125" , NS_UNICODETOCP1125_CID, + NS_UNICODEENCODER_CONTRACTID_BASE "IBM1125", + nsUnicodeToCP1125Constructor, + }, + { + ENCODER_NAME_BASE "IBM1131" , NS_UNICODETOCP1131_CID, + NS_UNICODEENCODER_CONTRACTID_BASE "IBM1131", + nsUnicodeToCP1131Constructor, + }, #endif // ucvja { diff --git a/mozilla/intl/uconv/src/os2charset.properties b/mozilla/intl/uconv/src/os2charset.properties index 014f82f3d9d..31ecd42ab21 100644 --- a/mozilla/intl/uconv/src/os2charset.properties +++ b/mozilla/intl/uconv/src/os2charset.properties @@ -56,3 +56,5 @@ os2.813=ISO-8859-7 os2.915=ISO-8859-5 os2.1004=ISO-8859-1 os2.921=ISO-8859-13 +os2.1125=IBM1125 +os2.1131=IBM1131 diff --git a/mozilla/intl/uconv/ucvibm/Makefile.in b/mozilla/intl/uconv/ucvibm/Makefile.in index 1cb318846ab..e4066ae9234 100644 --- a/mozilla/intl/uconv/ucvibm/Makefile.in +++ b/mozilla/intl/uconv/ucvibm/Makefile.in @@ -80,6 +80,10 @@ ifeq ($(OS_ARCH),OS2) CPPSRCS += \ nsCP869ToUnicode.cpp \ nsUnicodeToCP869.cpp \ + nsCP1125ToUnicode.cpp \ + nsUnicodeToCP1125.cpp \ + nsCP1131ToUnicode.cpp \ + nsUnicodeToCP1131.cpp \ $(NULL) endif diff --git a/mozilla/intl/uconv/ucvibm/cp1125.uf b/mozilla/intl/uconv/ucvibm/cp1125.uf new file mode 100644 index 00000000000..016f5927987 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/cp1125.uf @@ -0,0 +1,223 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 2001 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ +/*======================================================== + This is a Generated file. Please don't edit it. + + The tool which used to generate this file is called umaptable. + You can find this tool under mozilla/intl/uconv/tools/umaptable.c. + If you have any problem of this file. Please contact + Netscape Client International Team or + ftang@netscape + + Table in Debug form +Begin of Item 0000 + Format 0 + srcBegin = 0000 + srcEnd = 007F + destBegin = 0000 +End of Item 0000 + +Begin of Item 0001 + Format 0 + srcBegin = 0410 + srcEnd = 043F + destBegin = 0080 +End of Item 0001 + +Begin of Item 0002 + Format 0 + srcBegin = 0440 + srcEnd = 044F + destBegin = 00E0 +End of Item 0002 + +Begin of Item 0003 + Format 1 + srcBegin = 00A0 + srcEnd = 00A4 + mappingOffset = 0000 + Mapping = + 00FF FFFD FFFD FFFD 00FD +End of Item 0003 + +Begin of Item 0004 + Format 2 + srcBegin = 00B1 + destBegin = 00FB +End of Item 0004 + +Begin of Item 0005 + Format 2 + srcBegin = 00F7 + destBegin = 00FA +End of Item 0005 + +Begin of Item 0006 + Format 1 + srcBegin = 0401 + srcEnd = 0407 + mappingOffset = 0005 + Mapping = + 00F0 FFFD FFFD 00F4 FFFD 00F6 00F8 +End of Item 0006 + +Begin of Item 0007 + Format 1 + srcBegin = 0451 + srcEnd = 0457 + mappingOffset = 000C + Mapping = + 00F1 FFFD FFFD 00F5 FFFD 00F7 00F9 +End of Item 0007 + +Begin of Item 0008 + Format 1 + srcBegin = 0490 + srcEnd = 0491 + mappingOffset = 0013 + Mapping = + 00F2 00F3 +End of Item 0008 + +Begin of Item 0009 + Format 2 + srcBegin = 2116 + destBegin = 00FC +End of Item 0009 + +Begin of Item 000A + Format 1 + srcBegin = 2500 + srcEnd = 253C + mappingOffset = 0015 + Mapping = + 00C4 FFFD 00B3 FFFD FFFD FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00DA FFFD FFFD FFFD + 00BF FFFD FFFD FFFD 00C0 FFFD FFFD FFFD + 00D9 FFFD FFFD FFFD 00C3 FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00B4 FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00C2 FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00C1 FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00C5 +End of Item 000A + +Begin of Item 000B + Format 1 + srcBegin = 2550 + srcEnd = 256C + mappingOffset = 0052 + Mapping = + 00CD 00BA 00D5 00D6 00C9 00B8 00B7 00BB + 00D4 00D3 00C8 00BE 00BD 00BC 00C6 00C7 + 00CC 00B5 00B6 00B9 00D1 00D2 00CB 00CF + 00D0 00CA 00D8 00D7 00CE +End of Item 000B + +Begin of Item 000C + Format 1 + srcBegin = 2580 + srcEnd = 2593 + mappingOffset = 006F + Mapping = + 00DF FFFD FFFD FFFD 00DC FFFD FFFD FFFD + 00DB FFFD FFFD FFFD 00DD FFFD FFFD FFFD + 00DE 00B0 00B1 00B2 +End of Item 000C + +Begin of Item 000D + Format 2 + srcBegin = 25A0 + destBegin = 00FE +End of Item 000D + +========================================================*/ +/* Offset=0x0000 ItemOfList */ + 0x000E, +/*-------------------------------------------------------*/ +/* Offset=0x0001 offsetToFormatArray */ + 0x0004, +/*-------------------------------------------------------*/ +/* Offset=0x0002 offsetToMapCellArray */ + 0x0008, +/*-------------------------------------------------------*/ +/* Offset=0x0003 offsetToMappingTable */ + 0x0032, +/*-------------------------------------------------------*/ +/* Offset=0x0004 Start of Format Array */ +/* Total of Format 0 : 0x0003 */ +/* Total of Format 1 : 0x0007 */ +/* Total of Format 2 : 0x0004 */ +/* Total of Format 3 : 0x0000 */ + +0x1000, 0x1122, 0x1121, 0x0021, +/*-------------------------------------------------------*/ +/* Offset=0x0008 Start of MapCell Array */ +/* 0000 */ 0x0000, 0x007F, 0x0000, +/* 0001 */ 0x0410, 0x043F, 0x0080, +/* 0002 */ 0x0440, 0x044F, 0x00E0, +/* 0003 */ 0x00A0, 0x00A4, 0x0000, +/* 0004 */ 0x00B1, 0x0000, 0x00FB, +/* 0005 */ 0x00F7, 0x0000, 0x00FA, +/* 0006 */ 0x0401, 0x0407, 0x0005, +/* 0007 */ 0x0451, 0x0457, 0x000C, +/* 0008 */ 0x0490, 0x0491, 0x0013, +/* 0009 */ 0x2116, 0x0000, 0x00FC, +/* 000A */ 0x2500, 0x253C, 0x0015, +/* 000B */ 0x2550, 0x256C, 0x0052, +/* 000C */ 0x2580, 0x2593, 0x006F, +/* 000D */ 0x25A0, 0x0000, 0x00FE, +/*-------------------------------------------------------*/ +/* Offset=0x0032 Start of MappingTable */ + +/* 0000 */ 0x00FF, 0xFFFD, 0xFFFD, 0xFFFD, 0x00FD, 0x00F0, 0xFFFD, 0xFFFD, +/* 0008 */ 0x00F4, 0xFFFD, 0x00F6, 0x00F8, 0x00F1, 0xFFFD, 0xFFFD, 0x00F5, +/* 0010 */ 0xFFFD, 0x00F7, 0x00F9, 0x00F2, 0x00F3, 0x00C4, 0xFFFD, 0x00B3, +/* 0018 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, +/* 0020 */ 0xFFFD, 0x00DA, 0xFFFD, 0xFFFD, 0xFFFD, 0x00BF, 0xFFFD, 0xFFFD, +/* 0028 */ 0xFFFD, 0x00C0, 0xFFFD, 0xFFFD, 0xFFFD, 0x00D9, 0xFFFD, 0xFFFD, +/* 0030 */ 0xFFFD, 0x00C3, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, +/* 0038 */ 0xFFFD, 0x00B4, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, +/* 0040 */ 0xFFFD, 0x00C2, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, +/* 0048 */ 0xFFFD, 0x00C1, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, +/* 0050 */ 0xFFFD, 0x00C5, 0x00CD, 0x00BA, 0x00D5, 0x00D6, 0x00C9, 0x00B8, +/* 0058 */ 0x00B7, 0x00BB, 0x00D4, 0x00D3, 0x00C8, 0x00BE, 0x00BD, 0x00BC, +/* 0060 */ 0x00C6, 0x00C7, 0x00CC, 0x00B5, 0x00B6, 0x00B9, 0x00D1, 0x00D2, +/* 0068 */ 0x00CB, 0x00CF, 0x00D0, 0x00CA, 0x00D8, 0x00D7, 0x00CE, 0x00DF, +/* 0070 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x00DC, 0xFFFD, 0xFFFD, 0xFFFD, 0x00DB, +/* 0078 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x00DD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00DE, +/* 0080 */ 0x00B0, 0x00B1, 0x00B2, +/* End of table Total Length = 0x00B5 * 2 */ diff --git a/mozilla/intl/uconv/ucvibm/cp1125.ut b/mozilla/intl/uconv/ucvibm/cp1125.ut new file mode 100644 index 00000000000..abc561a7f28 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/cp1125.ut @@ -0,0 +1,130 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 2001 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ +/*======================================================== + This is a Generated file. Please don't edit it. + + The tool which used to generate this file is called umaptable. + You can find this tool under mozilla/intl/uconv/tools/umaptable.c. + If you have any problem of this file. Please contact + Netscape Client International Team or + ftang@netscape + + Table in Debug form +Begin of Item 0000 + Format 0 + srcBegin = 0000 + srcEnd = 007F + destBegin = 0000 +End of Item 0000 + +Begin of Item 0001 + Format 0 + srcBegin = 0080 + srcEnd = 00AF + destBegin = 0410 +End of Item 0001 + +Begin of Item 0002 + Format 0 + srcBegin = 00E0 + srcEnd = 00EF + destBegin = 0440 +End of Item 0002 + +Begin of Item 0003 + Format 1 + srcBegin = 00B0 + srcEnd = 00DF + mappingOffset = 0000 + Mapping = + 2591 2592 2593 2502 2524 2561 2562 2556 + 2555 2563 2551 2557 255D 255C 255B 2510 + 2514 2534 252C 251C 2500 253C 255E 255F + 255A 2554 2569 2566 2560 2550 256C 2567 + 2568 2564 2565 2559 2558 2552 2553 256B + 256A 2518 250C 2588 2584 258C 2590 2580 +End of Item 0003 + +Begin of Item 0004 + Format 1 + srcBegin = 00F0 + srcEnd = 00FF + mappingOffset = 0030 + Mapping = + 0401 0451 0490 0491 0404 0454 0406 0456 + 0407 0457 00F7 00B1 2116 00A4 25A0 00A0 +End of Item 0004 + +========================================================*/ +/* Offset=0x0000 ItemOfList */ + 0x0005, +/*-------------------------------------------------------*/ +/* Offset=0x0001 offsetToFormatArray */ + 0x0004, +/*-------------------------------------------------------*/ +/* Offset=0x0002 offsetToMapCellArray */ + 0x0006, +/*-------------------------------------------------------*/ +/* Offset=0x0003 offsetToMappingTable */ + 0x0015, +/*-------------------------------------------------------*/ +/* Offset=0x0004 Start of Format Array */ +/* Total of Format 0 : 0x0003 */ +/* Total of Format 1 : 0x0002 */ +/* Total of Format 2 : 0x0000 */ +/* Total of Format 3 : 0x0000 */ + +0x1000, 0x0001, +/*-------------------------------------------------------*/ +/* Offset=0x0006 Start of MapCell Array */ +/* 0000 */ 0x0000, 0x007F, 0x0000, +/* 0001 */ 0x0080, 0x00AF, 0x0410, +/* 0002 */ 0x00E0, 0x00EF, 0x0440, +/* 0003 */ 0x00B0, 0x00DF, 0x0000, +/* 0004 */ 0x00F0, 0x00FF, 0x0030, +/*-------------------------------------------------------*/ +/* Offset=0x0015 Start of MappingTable */ + +/* 0000 */ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556, +/* 0008 */ 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510, +/* 0010 */ 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F, +/* 0018 */ 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567, +/* 0020 */ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B, +/* 0028 */ 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580, +/* 0030 */ 0x0401, 0x0451, 0x0490, 0x0491, 0x0404, 0x0454, 0x0406, 0x0456, +/* 0038 */ 0x0407, 0x0457, 0x00F7, 0x00B1, 0x2116, 0x00A4, 0x25A0, 0x00A0, +/* End of table Total Length = 0x0055 * 2 */ diff --git a/mozilla/intl/uconv/ucvibm/cp1131.uf b/mozilla/intl/uconv/ucvibm/cp1131.uf new file mode 100644 index 00000000000..e454a992bc1 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/cp1131.uf @@ -0,0 +1,213 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 2001 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ +/*======================================================== + This is a Generated file. Please don't edit it. + + The tool which used to generate this file is called umaptable. + You can find this tool under mozilla/intl/uconv/tools/umaptable.c. + If you have any problem of this file. Please contact + Netscape Client International Team or + ftang@netscape + + Table in Debug form +Begin of Item 0000 + Format 0 + srcBegin = 0000 + srcEnd = 007F + destBegin = 0000 +End of Item 0000 + +Begin of Item 0001 + Format 0 + srcBegin = 0410 + srcEnd = 043F + destBegin = 0080 +End of Item 0001 + +Begin of Item 0002 + Format 0 + srcBegin = 0440 + srcEnd = 044F + destBegin = 00E0 +End of Item 0002 + +Begin of Item 0003 + Format 1 + srcBegin = 00A0 + srcEnd = 00A4 + mappingOffset = 0000 + Mapping = + 00FF FFFD FFFD FFFD 00FB +End of Item 0003 + +Begin of Item 0004 + Format 2 + srcBegin = 00B7 + destBegin = 00FA +End of Item 0004 + +Begin of Item 0005 + Format 1 + srcBegin = 0401 + srcEnd = 040E + mappingOffset = 0005 + Mapping = + 00F0 FFFD FFFD 00F2 FFFD 00F8 00F4 FFFD + FFFD FFFD FFFD FFFD FFFD 00F6 +End of Item 0005 + +Begin of Item 0006 + Format 1 + srcBegin = 0451 + srcEnd = 045E + mappingOffset = 0013 + Mapping = + 00F1 FFFD FFFD 00F3 FFFD 00F9 00F5 FFFD + FFFD FFFD FFFD FFFD FFFD 00F7 +End of Item 0006 + +Begin of Item 0007 + Format 1 + srcBegin = 0490 + srcEnd = 0491 + mappingOffset = 0021 + Mapping = + 00FC 00FD +End of Item 0007 + +Begin of Item 0008 + Format 2 + srcBegin = 2219 + destBegin = 00FE +End of Item 0008 + +Begin of Item 0009 + Format 1 + srcBegin = 2500 + srcEnd = 253C + mappingOffset = 0023 + Mapping = + 00C4 FFFD 00B3 FFFD FFFD FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00DA FFFD FFFD FFFD + 00BF FFFD FFFD FFFD 00C0 FFFD FFFD FFFD + 00D9 FFFD FFFD FFFD 00C3 FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00B4 FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00C2 FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00C1 FFFD FFFD FFFD + FFFD FFFD FFFD FFFD 00C5 +End of Item 0009 + +Begin of Item 000A + Format 1 + srcBegin = 2550 + srcEnd = 256C + mappingOffset = 0060 + Mapping = + 00CD 00BA 00D5 00D6 00C9 00B8 00B7 00BB + 00D4 00D3 00C8 00BE 00BD 00BC 00C6 00C7 + 00CC 00B5 00B6 00B9 00D1 00D2 00CB 00CF + 00D0 00CA 00D8 00D7 00CE +End of Item 000A + +Begin of Item 000B + Format 1 + srcBegin = 2580 + srcEnd = 2593 + mappingOffset = 007D + Mapping = + 00DF FFFD FFFD FFFD 00DC FFFD FFFD FFFD + 00DB FFFD FFFD FFFD 00DD FFFD FFFD FFFD + 00DE 00B0 00B1 00B2 +End of Item 000B + +========================================================*/ +/* Offset=0x0000 ItemOfList */ + 0x000C, +/*-------------------------------------------------------*/ +/* Offset=0x0001 offsetToFormatArray */ + 0x0004, +/*-------------------------------------------------------*/ +/* Offset=0x0002 offsetToMapCellArray */ + 0x0008, +/*-------------------------------------------------------*/ +/* Offset=0x0003 offsetToMappingTable */ + 0x002C, +/*-------------------------------------------------------*/ +/* Offset=0x0004 Start of Format Array */ +/* Total of Format 0 : 0x0003 */ +/* Total of Format 1 : 0x0007 */ +/* Total of Format 2 : 0x0002 */ +/* Total of Format 3 : 0x0000 */ + +0x1000, 0x1112, 0x1112, 0x0000, +/*-------------------------------------------------------*/ +/* Offset=0x0008 Start of MapCell Array */ +/* 0000 */ 0x0000, 0x007F, 0x0000, +/* 0001 */ 0x0410, 0x043F, 0x0080, +/* 0002 */ 0x0440, 0x044F, 0x00E0, +/* 0003 */ 0x00A0, 0x00A4, 0x0000, +/* 0004 */ 0x00B7, 0x0000, 0x00FA, +/* 0005 */ 0x0401, 0x040E, 0x0005, +/* 0006 */ 0x0451, 0x045E, 0x0013, +/* 0007 */ 0x0490, 0x0491, 0x0021, +/* 0008 */ 0x2219, 0x0000, 0x00FE, +/* 0009 */ 0x2500, 0x253C, 0x0023, +/* 000A */ 0x2550, 0x256C, 0x0060, +/* 000B */ 0x2580, 0x2593, 0x007D, +/*-------------------------------------------------------*/ +/* Offset=0x002C Start of MappingTable */ + +/* 0000 */ 0x00FF, 0xFFFD, 0xFFFD, 0xFFFD, 0x00FB, 0x00F0, 0xFFFD, 0xFFFD, +/* 0008 */ 0x00F2, 0xFFFD, 0x00F8, 0x00F4, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, +/* 0010 */ 0xFFFD, 0xFFFD, 0x00F6, 0x00F1, 0xFFFD, 0xFFFD, 0x00F3, 0xFFFD, +/* 0018 */ 0x00F9, 0x00F5, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, +/* 0020 */ 0x00F7, 0x00FC, 0x00FD, 0x00C4, 0xFFFD, 0x00B3, 0xFFFD, 0xFFFD, +/* 0028 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00DA, +/* 0030 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x00BF, 0xFFFD, 0xFFFD, 0xFFFD, 0x00C0, +/* 0038 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x00D9, 0xFFFD, 0xFFFD, 0xFFFD, 0x00C3, +/* 0040 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00B4, +/* 0048 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00C2, +/* 0050 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00C1, +/* 0058 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00C5, +/* 0060 */ 0x00CD, 0x00BA, 0x00D5, 0x00D6, 0x00C9, 0x00B8, 0x00B7, 0x00BB, +/* 0068 */ 0x00D4, 0x00D3, 0x00C8, 0x00BE, 0x00BD, 0x00BC, 0x00C6, 0x00C7, +/* 0070 */ 0x00CC, 0x00B5, 0x00B6, 0x00B9, 0x00D1, 0x00D2, 0x00CB, 0x00CF, +/* 0078 */ 0x00D0, 0x00CA, 0x00D8, 0x00D7, 0x00CE, 0x00DF, 0xFFFD, 0xFFFD, +/* 0080 */ 0xFFFD, 0x00DC, 0xFFFD, 0xFFFD, 0xFFFD, 0x00DB, 0xFFFD, 0xFFFD, +/* 0088 */ 0xFFFD, 0x00DD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00DE, 0x00B0, 0x00B1, +/* 0090 */ 0x00B2, +/* End of table Total Length = 0x00BD * 2 */ diff --git a/mozilla/intl/uconv/ucvibm/cp1131.ut b/mozilla/intl/uconv/ucvibm/cp1131.ut new file mode 100644 index 00000000000..cefec540f0b --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/cp1131.ut @@ -0,0 +1,130 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 2001 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ +/*======================================================== + This is a Generated file. Please don't edit it. + + The tool which used to generate this file is called umaptable. + You can find this tool under mozilla/intl/uconv/tools/umaptable.c. + If you have any problem of this file. Please contact + Netscape Client International Team or + ftang@netscape + + Table in Debug form +Begin of Item 0000 + Format 0 + srcBegin = 0000 + srcEnd = 007F + destBegin = 0000 +End of Item 0000 + +Begin of Item 0001 + Format 0 + srcBegin = 0080 + srcEnd = 00AF + destBegin = 0410 +End of Item 0001 + +Begin of Item 0002 + Format 0 + srcBegin = 00E0 + srcEnd = 00EF + destBegin = 0440 +End of Item 0002 + +Begin of Item 0003 + Format 1 + srcBegin = 00B0 + srcEnd = 00DF + mappingOffset = 0000 + Mapping = + 2591 2592 2593 2502 2524 2561 2562 2556 + 2555 2563 2551 2557 255D 255C 255B 2510 + 2514 2534 252C 251C 2500 253C 255E 255F + 255A 2554 2569 2566 2560 2550 256C 2567 + 2568 2564 2565 2559 2558 2552 2553 256B + 256A 2518 250C 2588 2584 258C 2590 2580 +End of Item 0003 + +Begin of Item 0004 + Format 1 + srcBegin = 00F0 + srcEnd = 00FF + mappingOffset = 0030 + Mapping = + 0401 0451 0404 0454 0407 0457 040E 045E + 0406 0456 00B7 00A4 0490 0491 2219 00A0 +End of Item 0004 + +========================================================*/ +/* Offset=0x0000 ItemOfList */ + 0x0005, +/*-------------------------------------------------------*/ +/* Offset=0x0001 offsetToFormatArray */ + 0x0004, +/*-------------------------------------------------------*/ +/* Offset=0x0002 offsetToMapCellArray */ + 0x0006, +/*-------------------------------------------------------*/ +/* Offset=0x0003 offsetToMappingTable */ + 0x0015, +/*-------------------------------------------------------*/ +/* Offset=0x0004 Start of Format Array */ +/* Total of Format 0 : 0x0003 */ +/* Total of Format 1 : 0x0002 */ +/* Total of Format 2 : 0x0000 */ +/* Total of Format 3 : 0x0000 */ + +0x1000, 0x0001, +/*-------------------------------------------------------*/ +/* Offset=0x0006 Start of MapCell Array */ +/* 0000 */ 0x0000, 0x007F, 0x0000, +/* 0001 */ 0x0080, 0x00AF, 0x0410, +/* 0002 */ 0x00E0, 0x00EF, 0x0440, +/* 0003 */ 0x00B0, 0x00DF, 0x0000, +/* 0004 */ 0x00F0, 0x00FF, 0x0030, +/*-------------------------------------------------------*/ +/* Offset=0x0015 Start of MappingTable */ + +/* 0000 */ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556, +/* 0008 */ 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510, +/* 0010 */ 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F, +/* 0018 */ 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567, +/* 0020 */ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B, +/* 0028 */ 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580, +/* 0030 */ 0x0401, 0x0451, 0x0404, 0x0454, 0x0407, 0x0457, 0x040E, 0x045E, +/* 0038 */ 0x0406, 0x0456, 0x00B7, 0x00A4, 0x0490, 0x0491, 0x2219, 0x00A0, +/* End of table Total Length = 0x0055 * 2 */ diff --git a/mozilla/intl/uconv/ucvibm/nsCP1125ToUnicode.cpp b/mozilla/intl/uconv/ucvibm/nsCP1125ToUnicode.cpp new file mode 100644 index 00000000000..a089d0734d4 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/nsCP1125ToUnicode.cpp @@ -0,0 +1,63 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * IBM Corporation + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#include "nsUCConstructors.h" +#include "nsCP1125ToUnicode.h" + +//---------------------------------------------------------------------- +// Global functions and data [declaration] + +static const PRUint16 g_utMappingTable[] = { +#include "cp1125.ut" +}; + +static const PRInt16 g_utShiftTable[] = { + 0, u1ByteCharset , + ShiftCell(0,0,0,0,0,0,0,0) +}; + +//---------------------------------------------------------------------- +// Class nsCP1125ToUnicode [implementation] + +NS_METHOD +nsCP1125ToUnicodeConstructor(nsISupports* aOuter, REFNSIID aIID, + void **aResult) +{ + return CreateOneByteDecoder((uShiftTable*) &g_utShiftTable, + (uMappingTable*) &g_utMappingTable, + aOuter, aIID, aResult); +} diff --git a/mozilla/intl/uconv/ucvibm/nsCP1125ToUnicode.h b/mozilla/intl/uconv/ucvibm/nsCP1125ToUnicode.h new file mode 100644 index 00000000000..bcc7d612c2b --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/nsCP1125ToUnicode.h @@ -0,0 +1,50 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * IBM Corporation + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#ifndef nsCP1125ToUnicode_h___ +#define nsCP1125ToUnicode_h___ + +#include "nsISupports.h" +/** + * A character set converter from CP1125 to Unicode. + */ +NS_METHOD +nsCP1125ToUnicodeConstructor(nsISupports *aOuter, REFNSIID aIID, + void **aResult); + + +#endif /* !nsCP1125ToUnicode_h___ */ diff --git a/mozilla/intl/uconv/ucvibm/nsCP1131ToUnicode.cpp b/mozilla/intl/uconv/ucvibm/nsCP1131ToUnicode.cpp new file mode 100644 index 00000000000..073ccc92866 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/nsCP1131ToUnicode.cpp @@ -0,0 +1,63 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * IBM Corporation + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#include "nsUCConstructors.h" +#include "nsCP1131ToUnicode.h" + +//---------------------------------------------------------------------- +// Global functions and data [declaration] + +static const PRUint16 g_utMappingTable[] = { +#include "cp1131.ut" +}; + +static const PRInt16 g_utShiftTable[] = { + 0, u1ByteCharset , + ShiftCell(0,0,0,0,0,0,0,0) +}; + +//---------------------------------------------------------------------- +// Class nsCP1131ToUnicode [implementation] + +NS_METHOD +nsCP1131ToUnicodeConstructor(nsISupports* aOuter, REFNSIID aIID, + void **aResult) +{ + return CreateOneByteDecoder((uShiftTable*) &g_utShiftTable, + (uMappingTable*) &g_utMappingTable, + aOuter, aIID, aResult); +} diff --git a/mozilla/intl/uconv/ucvibm/nsCP1131ToUnicode.h b/mozilla/intl/uconv/ucvibm/nsCP1131ToUnicode.h new file mode 100644 index 00000000000..ad2a3bad7e9 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/nsCP1131ToUnicode.h @@ -0,0 +1,50 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * IBM Corporation + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#ifndef nsCP1131ToUnicode_h___ +#define nsCP1131ToUnicode_h___ + +#include "nsISupports.h" +/** + * A character set converter from CP1131 to Unicode. + */ +NS_METHOD +nsCP1131ToUnicodeConstructor(nsISupports *aOuter, REFNSIID aIID, + void **aResult); + + +#endif /* !nsCP1131ToUnicode_h___ */ diff --git a/mozilla/intl/uconv/ucvibm/nsUCvIBMCID.h b/mozilla/intl/uconv/ucvibm/nsUCvIBMCID.h index 32b5421b500..233ab692f42 100644 --- a/mozilla/intl/uconv/ucvibm/nsUCvIBMCID.h +++ b/mozilla/intl/uconv/ucvibm/nsUCvIBMCID.h @@ -149,4 +149,24 @@ #define NS_UNICODETOCP869_CID \ { 0x2d524fe1, 0xae74, 0x11d3, {0xab, 0xf7, 0x0, 0x4, 0xac, 0xee, 0xfa, 0x51}} + // Class ID for our CP125ToUnicode charset converter +// {2D524FE2-AE74-11d3-ABF7-0004ACEEFA51} +#define NS_CP1125TOUNICODE_CID \ + { 0x2d524fe2, 0xae74, 0x11d3, {0xab, 0xf7, 0x0, 0x4, 0xac, 0xee, 0xfa, 0x51}} + +// Class ID for our UnicodeToCP1125 charset converter +// {2D524FE3-AE74-11d3-ABF7-0004ACEEFA51} +#define NS_UNICODETOCP1125_CID \ + { 0x2d524fe3, 0xae74, 0x11d3, {0xab, 0xf7, 0x0, 0x4, 0xac, 0xee, 0xfa, 0x51}} + + // Class ID for our CP11311ToUnicode charset converter +// {2D524FE4-AE74-11d3-ABF7-0004ACEEFA51} +#define NS_CP1131TOUNICODE_CID \ + { 0x2d524fe4, 0xae74, 0x11d3, {0xab, 0xf7, 0x0, 0x4, 0xac, 0xee, 0xfa, 0x51}} + +// Class ID for our UnicodeToCP1131 charset converter +// {2D524FE5-AE74-11d3-ABF7-0004ACEEFA51} +#define NS_UNICODETOCP1131_CID \ + { 0x2d524fe5, 0xae74, 0x11d3, {0xab, 0xf7, 0x0, 0x4, 0xac, 0xee, 0xfa, 0x51}} + #endif /* nsUCvIBMCID_h___ */ diff --git a/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1125.cpp b/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1125.cpp new file mode 100644 index 00000000000..61d64e661b6 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1125.cpp @@ -0,0 +1,61 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * IBM Corporation + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#include "nsUCConstructors.h" +#include "nsUnicodeToCP1125.h" + +//---------------------------------------------------------------------- +// Global functions and data [declaration] + +static const PRUint16 g_ufMappingTable[] = { +#include "cp1125.uf" +}; + +static const PRInt16 g_ufShiftTable[] = { + 0, u1ByteCharset , + ShiftCell(0,0,0,0,0,0,0,0) +}; + +NS_METHOD +nsUnicodeToCP1125Constructor(nsISupports *aOuter, REFNSIID aIID, + void **aResult) +{ + return CreateTableEncoder((uShiftTable*) &g_ufShiftTable, + (uMappingTable*) &g_ufMappingTable, 1, + aOuter, aIID, aResult); +} + diff --git a/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1125.h b/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1125.h new file mode 100644 index 00000000000..7ab162adf72 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1125.h @@ -0,0 +1,52 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * IBM Corporation + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#ifndef nsUnicodeToCP1125_h___ +#define nsUnicodeToCP1125_h___ + +#include "nsISupports.h" + + +/** + * A character set converter from Unicode to CP1125. + */ +NS_METHOD +nsUnicodeToCP1125Constructor(nsISupports *aOuter, REFNSIID aIID, + void **aResult); + + +#endif /* !nsUnicodeToCP1125_h___ */ diff --git a/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1131.cpp b/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1131.cpp new file mode 100644 index 00000000000..fb995e4f785 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1131.cpp @@ -0,0 +1,61 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * IBM Corporation + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#include "nsUCConstructors.h" +#include "nsUnicodeToCP1131.h" + +//---------------------------------------------------------------------- +// Global functions and data [declaration] + +static const PRUint16 g_ufMappingTable[] = { +#include "cp1131.uf" +}; + +static const PRInt16 g_ufShiftTable[] = { + 0, u1ByteCharset , + ShiftCell(0,0,0,0,0,0,0,0) +}; + +NS_METHOD +nsUnicodeToCP1131Constructor(nsISupports *aOuter, REFNSIID aIID, + void **aResult) +{ + return CreateTableEncoder((uShiftTable*) &g_ufShiftTable, + (uMappingTable*) &g_ufMappingTable, 1, + aOuter, aIID, aResult); +} + diff --git a/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1131.h b/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1131.h new file mode 100644 index 00000000000..d8f11385f32 --- /dev/null +++ b/mozilla/intl/uconv/ucvibm/nsUnicodeToCP1131.h @@ -0,0 +1,52 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * IBM Corporation + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#ifndef nsUnicodeToCP1131_h___ +#define nsUnicodeToCP1131_h___ + +#include "nsISupports.h" + + +/** + * A character set converter from Unicode to CP1131. + */ +NS_METHOD +nsUnicodeToCP1131Constructor(nsISupports *aOuter, REFNSIID aIID, + void **aResult); + + +#endif /* !nsUnicodeToCP1131_h___ */