mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-26 22:32:46 +00:00
[#ifdef MOZ_MATHML - NOT PART OF THE DEFAULT BUILD]. Adding the ucvmath module --for Mathematical charsets (symbols for MathML/scientific documents) r:cata@nestcape.com
This commit is contained in:
parent
1450938032
commit
54fd15a45b
1
intl/uconv/ucvmath/.cvsignore
Normal file
1
intl/uconv/ucvmath/.cvsignore
Normal file
@ -0,0 +1 @@
|
||||
Makefile
|
55
intl/uconv/ucvmath/Makefile.in
Normal file
55
intl/uconv/ucvmath/Makefile.in
Normal file
@ -0,0 +1,55 @@
|
||||
#
|
||||
# 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 MathML Project.
|
||||
#
|
||||
# The Initial Developer of the Original Code is The University Of
|
||||
# Queensland. Portions created by The University Of Queensland are
|
||||
# Copyright (C) 1999 The University Of Queensland. All Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
#
|
||||
|
||||
DEPTH = ../../..
|
||||
topsrcdir = @top_srcdir@
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
MODULE = ucvmath
|
||||
LIBRARY_NAME = ucvmath
|
||||
IS_COMPONENT = 1
|
||||
|
||||
REQUIRES = $(MODULE) libxpcom
|
||||
|
||||
CPPSRCS = \
|
||||
nsUnicodeToTeXCMSYt1.cpp \
|
||||
nsUnicodeToTeXCMSYttf.cpp \
|
||||
nsUnicodeToTeXCMEXt1.cpp \
|
||||
nsUnicodeToTeXCMEXttf.cpp \
|
||||
nsUnicodeToMathematica1.cpp \
|
||||
nsUnicodeToMathematica2.cpp \
|
||||
nsUnicodeToMathematica3.cpp \
|
||||
nsUnicodeToMathematica4.cpp \
|
||||
nsUnicodeToMathematica5.cpp \
|
||||
nsUnicodeToMTExtra.cpp \
|
||||
nsUCvMathSupport.cpp \
|
||||
nsUCvMathModule.cpp \
|
||||
$(NULL)
|
||||
|
||||
EXPORTS = nsUCvMathCID.h
|
||||
EXPORTS := $(addprefix $(srcdir)/, $(EXPORTS))
|
||||
|
||||
EXTRA_DSO_LDOPTS += $(MOZ_COMPONENT_LIBS)
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
90
intl/uconv/ucvmath/makefile.win
Normal file
90
intl/uconv/ucvmath/makefile.win
Normal file
@ -0,0 +1,90 @@
|
||||
#!nmake
|
||||
#
|
||||
# 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 MathML Project.
|
||||
#
|
||||
# The Initial Developer of the Original Code is The University Of
|
||||
# Queensland. Portions created by The University Of Queensland are
|
||||
# Copyright (C) 1999 The University Of Queensland. All Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
#
|
||||
|
||||
DEPTH=..\..\..
|
||||
|
||||
DEFINES=-D_IMPL_NS_INTL -DWIN32_LEAN_AND_MEAN
|
||||
|
||||
MODULE=uconv
|
||||
REQUIRES=xpcom uconv
|
||||
|
||||
MAKE_OBJ_TYPE = DLL
|
||||
DLLNAME = ucvmath
|
||||
DLL=.\$(OBJDIR)\$(DLLNAME).dll
|
||||
|
||||
CPPSRCS = \
|
||||
nsUnicodeToTeXCMSYttf.cpp \
|
||||
nsUnicodeToTeXCMSYt1.cpp \
|
||||
nsUnicodeToTeXCMEXttf.cpp \
|
||||
nsUnicodeToTeXCMEXt1.cpp \
|
||||
nsUnicodeToMathematica1.cpp \
|
||||
nsUnicodeToMathematica2.cpp \
|
||||
nsUnicodeToMathematica3.cpp \
|
||||
nsUnicodeToMathematica4.cpp \
|
||||
nsUnicodeToMathematica5.cpp \
|
||||
nsUnicodeToMTExtra.cpp \
|
||||
nsUCvMathSupport.cpp \
|
||||
nsUCvMathModule.cpp \
|
||||
$(NULL)
|
||||
|
||||
CPP_OBJS= \
|
||||
.\$(OBJDIR)\nsUnicodeToTeXCMSYttf.obj \
|
||||
.\$(OBJDIR)\nsUnicodeToTeXCMSYt1.obj \
|
||||
.\$(OBJDIR)\nsUnicodeToTeXCMEXttf.obj \
|
||||
.\$(OBJDIR)\nsUnicodeToTeXCMEXt1.obj \
|
||||
.\$(OBJDIR)\nsUnicodeToMathematica1.obj \
|
||||
.\$(OBJDIR)\nsUnicodeToMathematica2.obj \
|
||||
.\$(OBJDIR)\nsUnicodeToMathematica3.obj \
|
||||
.\$(OBJDIR)\nsUnicodeToMathematica4.obj \
|
||||
.\$(OBJDIR)\nsUnicodeToMathematica5.obj \
|
||||
.\$(OBJDIR)\nsUnicodeToMTExtra.obj \
|
||||
.\$(OBJDIR)\nsUCvMathSupport.obj \
|
||||
.\$(OBJDIR)\nsUCvMathModule.obj \
|
||||
$(NULL)
|
||||
|
||||
EXPORTS=nsUCvMathCID.h \
|
||||
$(NULL)
|
||||
|
||||
LINCS= \
|
||||
-I$(PUBLIC)\raptor \
|
||||
-I$(PUBLIC)\xpcom \
|
||||
-I$(PUBLIC)\uconv \
|
||||
$(NULL)
|
||||
|
||||
LLIBS= \
|
||||
$(DIST)\lib\xpcom.lib \
|
||||
$(LIBNSPR)
|
||||
|
||||
LCFLAGS = \
|
||||
$(LCFLAGS) \
|
||||
$(DEFINES) \
|
||||
$(NULL)
|
||||
|
||||
include <$(DEPTH)\config\rules.mak>
|
||||
|
||||
install:: $(DLL)
|
||||
$(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).dll $(DIST)\bin\components
|
||||
$(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).lib $(DIST)\lib
|
||||
|
||||
clobber::
|
||||
rm -f $(DIST)\bin\components\$(DLLNAME).dll
|
||||
rm -f $(DIST)\bin\$(DLLNAME).lib
|
416
intl/uconv/ucvmath/mathematica1.uf
Normal file
416
intl/uconv/ucvmath/mathematica1.uf
Normal file
@ -0,0 +1,416 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 0
|
||||
srcBegin = 0028
|
||||
srcEnd = 003F
|
||||
destBegin = 0028
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 1
|
||||
srcBegin = 0020
|
||||
srcEnd = 0027
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
0020 0021 008D 0023 FFFD 0025 0026 008C
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 2
|
||||
srcBegin = 0040
|
||||
destBegin = 009E
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 1
|
||||
srcBegin = 005B
|
||||
srcEnd = 0060
|
||||
mappingOffset = 0008
|
||||
Mapping =
|
||||
005B FFFD 005D 0060 005F 008B
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 2
|
||||
srcBegin = 007E
|
||||
destBegin = 007E
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 1
|
||||
srcBegin = 00A9
|
||||
srcEnd = 00B7
|
||||
mappingOffset = 000E
|
||||
Mapping =
|
||||
00D3 FFFD FFFD 00D8 FFFD 00D2 FFFD 00B0
|
||||
00B1 FFFD FFFD FFFD FFFD FFFD 00D7
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 2
|
||||
srcBegin = 00D7
|
||||
destBegin = 0089
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 2
|
||||
srcBegin = 00F7
|
||||
destBegin = 00B8
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 2
|
||||
srcBegin = 0303
|
||||
destBegin = 008E
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 2
|
||||
srcBegin = 0331
|
||||
destBegin = 008F
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 1
|
||||
srcBegin = 0391
|
||||
srcEnd = 03D6
|
||||
mappingOffset = 001D
|
||||
Mapping =
|
||||
0041 0042 0047 0044 0045 005A 0048 0051
|
||||
0049 004B 004C 004D 004E 0058 004F 0050
|
||||
0052 FFFD 0053 0054 0055 0046 0043 0059
|
||||
0057 FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
0061 0062 0067 0064 0065 007A 0068 0071
|
||||
0069 006B 006C 006D 006E 0078 006F 0070
|
||||
0072 0056 0073 0074 0075 0066 0063 0079
|
||||
0077 FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
004A 00A1 FFFD FFFD 006A 0076
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 2
|
||||
srcBegin = 2010
|
||||
destBegin = 0080
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = 2022
|
||||
srcEnd = 2026
|
||||
mappingOffset = 0063
|
||||
Mapping =
|
||||
00B7 FFFD FFFD FFFD 00BC
|
||||
End of Item 000C
|
||||
|
||||
Begin of Item 000D
|
||||
Format 1
|
||||
srcBegin = 2032
|
||||
srcEnd = 2033
|
||||
mappingOffset = 0068
|
||||
Mapping =
|
||||
00A2 00B2
|
||||
End of Item 000D
|
||||
|
||||
Begin of Item 000E
|
||||
Format 2
|
||||
srcBegin = 2043
|
||||
destBegin = 0085
|
||||
End of Item 000E
|
||||
|
||||
Begin of Item 000F
|
||||
Format 1
|
||||
srcBegin = 2111
|
||||
srcEnd = 2122
|
||||
mappingOffset = 006A
|
||||
Mapping =
|
||||
00C1 FFFD FFFD FFFD FFFD FFFD FFFD 00C3
|
||||
FFFD FFFD FFFD 00C2 FFFD FFFD FFFD FFFD
|
||||
FFFD 00D4
|
||||
End of Item 000F
|
||||
|
||||
Begin of Item 0010
|
||||
Format 2
|
||||
srcBegin = 2135
|
||||
destBegin = 00C0
|
||||
End of Item 0010
|
||||
|
||||
Begin of Item 0011
|
||||
Format 1
|
||||
srcBegin = 2190
|
||||
srcEnd = 2194
|
||||
mappingOffset = 007C
|
||||
Mapping =
|
||||
00AC 00AD 00AE 00AF 00AB
|
||||
End of Item 0011
|
||||
|
||||
Begin of Item 0012
|
||||
Format 2
|
||||
srcBegin = 21B5
|
||||
destBegin = 00BF
|
||||
End of Item 0012
|
||||
|
||||
Begin of Item 0013
|
||||
Format 2
|
||||
srcBegin = 21D5
|
||||
destBegin = 0090
|
||||
End of Item 0013
|
||||
|
||||
Begin of Item 0014
|
||||
Format 1
|
||||
srcBegin = 2200
|
||||
srcEnd = 2211
|
||||
mappingOffset = 0081
|
||||
Mapping =
|
||||
0022 FFFD 00B6 0024 FFFD 00C6 FFFD 00D1
|
||||
00CE 00CF FFFD FFFD FFFD 0027 FFFD 00D5
|
||||
FFFD 00E5
|
||||
End of Item 0014
|
||||
|
||||
Begin of Item 0015
|
||||
Format 1
|
||||
srcBegin = 221D
|
||||
srcEnd = 2234
|
||||
mappingOffset = 0093
|
||||
Mapping =
|
||||
00B5 00A5 FFFD 00D0 FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD 00D9 00DA FFFD FFFD 00F2 FFFD
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD FFFD 005C
|
||||
End of Item 0015
|
||||
|
||||
Begin of Item 0016
|
||||
Format 1
|
||||
srcBegin = 2245
|
||||
srcEnd = 2248
|
||||
mappingOffset = 00AB
|
||||
Mapping =
|
||||
0040 FFFD FFFD 00BB
|
||||
End of Item 0016
|
||||
|
||||
Begin of Item 0017
|
||||
Format 1
|
||||
srcBegin = 2260
|
||||
srcEnd = 226B
|
||||
mappingOffset = 00AF
|
||||
Mapping =
|
||||
00B9 00BA FFFD FFFD 00A3 00B3 FFFD FFFD
|
||||
FFFD FFFD 0086 0087
|
||||
End of Item 0017
|
||||
|
||||
Begin of Item 0018
|
||||
Format 1
|
||||
srcBegin = 2282
|
||||
srcEnd = 2287
|
||||
mappingOffset = 00BB
|
||||
Mapping =
|
||||
00CC 00C9 00CB FFFD 00CD 00CA
|
||||
End of Item 0018
|
||||
|
||||
Begin of Item 0019
|
||||
Format 1
|
||||
srcBegin = 2295
|
||||
srcEnd = 2297
|
||||
mappingOffset = 00C1
|
||||
Mapping =
|
||||
00C5 FFFD 00C4
|
||||
End of Item 0019
|
||||
|
||||
Begin of Item 001A
|
||||
Format 2
|
||||
srcBegin = 22A5
|
||||
destBegin = 005E
|
||||
End of Item 001A
|
||||
|
||||
Begin of Item 001B
|
||||
Format 1
|
||||
srcBegin = 22C2
|
||||
srcEnd = 22C3
|
||||
mappingOffset = 00C4
|
||||
Mapping =
|
||||
00C8 00C7
|
||||
End of Item 001B
|
||||
|
||||
Begin of Item 001C
|
||||
Format 2
|
||||
srcBegin = 22F1
|
||||
destBegin = 0084
|
||||
End of Item 001C
|
||||
|
||||
Begin of Item 001D
|
||||
Format 2
|
||||
srcBegin = 2423
|
||||
destBegin = 0088
|
||||
End of Item 001D
|
||||
|
||||
Begin of Item 001E
|
||||
Format 1
|
||||
srcBegin = 25A0
|
||||
srcEnd = 25AA
|
||||
mappingOffset = 00C6
|
||||
Mapping =
|
||||
0082 0083 FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD 009F
|
||||
End of Item 001E
|
||||
|
||||
Begin of Item 001F
|
||||
Format 1
|
||||
srcBegin = 2660
|
||||
srcEnd = 2663
|
||||
mappingOffset = 00D1
|
||||
Mapping =
|
||||
00AA 00A9 00A8 00A7
|
||||
End of Item 001F
|
||||
|
||||
Begin of Item 0020
|
||||
Format 1
|
||||
srcBegin = E94B
|
||||
srcEnd = E94E
|
||||
mappingOffset = 00D5
|
||||
Mapping =
|
||||
008A FFFD 00A6 0081
|
||||
End of Item 0020
|
||||
|
||||
Begin of Item 0021
|
||||
Format 1
|
||||
srcBegin = ED10
|
||||
srcEnd = ED12
|
||||
mappingOffset = 00D9
|
||||
Mapping =
|
||||
00E2 00E3 00E4
|
||||
End of Item 0021
|
||||
|
||||
Begin of Item 0022
|
||||
Format 2
|
||||
srcBegin = F700
|
||||
destBegin = 00FF
|
||||
End of Item 0022
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x0023,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x000D,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x0076,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0001 */
|
||||
/* Total of Format 1 : 0x0013 */
|
||||
/* Total of Format 2 : 0x000F */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x1210, 0x2212, 0x2122, 0x1211, 0x2212, 0x1111, 0x1211, 0x1122,
|
||||
0x0211,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x000D Start of MapCell Array */
|
||||
/* 0000 */ 0x0028, 0x003F, 0x0028,
|
||||
/* 0001 */ 0x0020, 0x0027, 0x0000,
|
||||
/* 0002 */ 0x0040, 0x0000, 0x009E,
|
||||
/* 0003 */ 0x005B, 0x0060, 0x0008,
|
||||
/* 0004 */ 0x007E, 0x0000, 0x007E,
|
||||
/* 0005 */ 0x00A9, 0x00B7, 0x000E,
|
||||
/* 0006 */ 0x00D7, 0x0000, 0x0089,
|
||||
/* 0007 */ 0x00F7, 0x0000, 0x00B8,
|
||||
/* 0008 */ 0x0303, 0x0000, 0x008E,
|
||||
/* 0009 */ 0x0331, 0x0000, 0x008F,
|
||||
/* 000A */ 0x0391, 0x03D6, 0x001D,
|
||||
/* 000B */ 0x2010, 0x0000, 0x0080,
|
||||
/* 000C */ 0x2022, 0x2026, 0x0063,
|
||||
/* 000D */ 0x2032, 0x2033, 0x0068,
|
||||
/* 000E */ 0x2043, 0x0000, 0x0085,
|
||||
/* 000F */ 0x2111, 0x2122, 0x006A,
|
||||
/* 0010 */ 0x2135, 0x0000, 0x00C0,
|
||||
/* 0011 */ 0x2190, 0x2194, 0x007C,
|
||||
/* 0012 */ 0x21B5, 0x0000, 0x00BF,
|
||||
/* 0013 */ 0x21D5, 0x0000, 0x0090,
|
||||
/* 0014 */ 0x2200, 0x2211, 0x0081,
|
||||
/* 0015 */ 0x221D, 0x2234, 0x0093,
|
||||
/* 0016 */ 0x2245, 0x2248, 0x00AB,
|
||||
/* 0017 */ 0x2260, 0x226B, 0x00AF,
|
||||
/* 0018 */ 0x2282, 0x2287, 0x00BB,
|
||||
/* 0019 */ 0x2295, 0x2297, 0x00C1,
|
||||
/* 001A */ 0x22A5, 0x0000, 0x005E,
|
||||
/* 001B */ 0x22C2, 0x22C3, 0x00C4,
|
||||
/* 001C */ 0x22F1, 0x0000, 0x0084,
|
||||
/* 001D */ 0x2423, 0x0000, 0x0088,
|
||||
/* 001E */ 0x25A0, 0x25AA, 0x00C6,
|
||||
/* 001F */ 0x2660, 0x2663, 0x00D1,
|
||||
/* 0020 */ 0xE94B, 0xE94E, 0x00D5,
|
||||
/* 0021 */ 0xED10, 0xED12, 0x00D9,
|
||||
/* 0022 */ 0xF700, 0x0000, 0x00FF,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0076 Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x0020, 0x0021, 0x008D, 0x0023, 0xFFFD, 0x0025, 0x0026, 0x008C,
|
||||
/* 0008 */ 0x005B, 0xFFFD, 0x005D, 0x0060, 0x005F, 0x008B, 0x00D3, 0xFFFD,
|
||||
/* 0010 */ 0xFFFD, 0x00D8, 0xFFFD, 0x00D2, 0xFFFD, 0x00B0, 0x00B1, 0xFFFD,
|
||||
/* 0018 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00D7, 0x0041, 0x0042, 0x0047,
|
||||
/* 0020 */ 0x0044, 0x0045, 0x005A, 0x0048, 0x0051, 0x0049, 0x004B, 0x004C,
|
||||
/* 0028 */ 0x004D, 0x004E, 0x0058, 0x004F, 0x0050, 0x0052, 0xFFFD, 0x0053,
|
||||
/* 0030 */ 0x0054, 0x0055, 0x0046, 0x0043, 0x0059, 0x0057, 0xFFFD, 0xFFFD,
|
||||
/* 0038 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0061, 0x0062, 0x0067,
|
||||
/* 0040 */ 0x0064, 0x0065, 0x007A, 0x0068, 0x0071, 0x0069, 0x006B, 0x006C,
|
||||
/* 0048 */ 0x006D, 0x006E, 0x0078, 0x006F, 0x0070, 0x0072, 0x0056, 0x0073,
|
||||
/* 0050 */ 0x0074, 0x0075, 0x0066, 0x0063, 0x0079, 0x0077, 0xFFFD, 0xFFFD,
|
||||
/* 0058 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x004A, 0x00A1, 0xFFFD,
|
||||
/* 0060 */ 0xFFFD, 0x006A, 0x0076, 0x00B7, 0xFFFD, 0xFFFD, 0xFFFD, 0x00BC,
|
||||
/* 0068 */ 0x00A2, 0x00B2, 0x00C1, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0070 */ 0xFFFD, 0x00C3, 0xFFFD, 0xFFFD, 0xFFFD, 0x00C2, 0xFFFD, 0xFFFD,
|
||||
/* 0078 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x00D4, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
|
||||
/* 0080 */ 0x00AB, 0x0022, 0xFFFD, 0x00B6, 0x0024, 0xFFFD, 0x00C6, 0xFFFD,
|
||||
/* 0088 */ 0x00D1, 0x00CE, 0x00CF, 0xFFFD, 0xFFFD, 0xFFFD, 0x0027, 0xFFFD,
|
||||
/* 0090 */ 0x00D5, 0xFFFD, 0x00E5, 0x00B5, 0x00A5, 0xFFFD, 0x00D0, 0xFFFD,
|
||||
/* 0098 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00D9, 0x00DA, 0xFFFD,
|
||||
/* 00A0 */ 0xFFFD, 0x00F2, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 00A8 */ 0xFFFD, 0xFFFD, 0x005C, 0x0040, 0xFFFD, 0xFFFD, 0x00BB, 0x00B9,
|
||||
/* 00B0 */ 0x00BA, 0xFFFD, 0xFFFD, 0x00A3, 0x00B3, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 00B8 */ 0xFFFD, 0x0086, 0x0087, 0x00CC, 0x00C9, 0x00CB, 0xFFFD, 0x00CD,
|
||||
/* 00C0 */ 0x00CA, 0x00C5, 0xFFFD, 0x00C4, 0x00C8, 0x00C7, 0x0082, 0x0083,
|
||||
/* 00C8 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 00D0 */ 0x009F, 0x00AA, 0x00A9, 0x00A8, 0x00A7, 0x008A, 0xFFFD, 0x00A6,
|
||||
/* 00D8 */ 0x0081, 0x00E2, 0x00E3, 0x00E4,
|
||||
/* End of table Total Length = 0x0152 * 2 */
|
277
intl/uconv/ucvmath/mathematica2.uf
Normal file
277
intl/uconv/ucvmath/mathematica2.uf
Normal file
@ -0,0 +1,277 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 1
|
||||
srcBegin = 0028
|
||||
srcEnd = 002F
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
0048 004C FFFD FFFD FFFD FFFD FFFD 0090
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 1
|
||||
srcBegin = 005B
|
||||
srcEnd = 005D
|
||||
mappingOffset = 0008
|
||||
Mapping =
|
||||
0040 FFFD 0044
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 1
|
||||
srcBegin = 007B
|
||||
srcEnd = 007D
|
||||
mappingOffset = 000B
|
||||
Mapping =
|
||||
0038 FFFD 003C
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 2
|
||||
srcBegin = 00B0
|
||||
destBegin = 00C6
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 1
|
||||
srcBegin = 0303
|
||||
srcEnd = 0308
|
||||
mappingOffset = 000E
|
||||
Mapping =
|
||||
00F3 FFFD FFFD FFFD FFFD 00D1
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 1
|
||||
srcBegin = 2032
|
||||
srcEnd = 2036
|
||||
mappingOffset = 0014
|
||||
Mapping =
|
||||
00F7 00F8 FFFD 00F9 000F
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 1
|
||||
srcBegin = 20D6
|
||||
srcEnd = 20E1
|
||||
mappingOffset = 0019
|
||||
Mapping =
|
||||
00D5 FFFD FFFD FFFD FFFD 00D2 FFFD FFFD
|
||||
FFFD FFFD FFFD 00D8
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 2
|
||||
srcBegin = 2195
|
||||
destBegin = 00D7
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 2
|
||||
srcBegin = 21C0
|
||||
destBegin = 00D3
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 1
|
||||
srcBegin = 220F
|
||||
srcEnd = 2216
|
||||
mappingOffset = 0025
|
||||
Mapping =
|
||||
00DB 00FF 00DA FFFD FFFD FFFD FFFD 0094
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 1
|
||||
srcBegin = 2227
|
||||
srcEnd = 2233
|
||||
mappingOffset = 002D
|
||||
Mapping =
|
||||
00DF 00DE FFFD FFFD 00D9 FFFD FFFD 0098
|
||||
0099 FFFD FFFD 009B 009A
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 1
|
||||
srcBegin = 228E
|
||||
srcEnd = 2294
|
||||
mappingOffset = 003A
|
||||
Mapping =
|
||||
009D FFFD FFFD FFFD FFFD 009E 009F
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = 22C0
|
||||
srcEnd = 22C3
|
||||
mappingOffset = 0041
|
||||
Mapping =
|
||||
00EC 00EA 00DD 00DC
|
||||
End of Item 000C
|
||||
|
||||
Begin of Item 000D
|
||||
Format 1
|
||||
srcBegin = 2308
|
||||
srcEnd = 230B
|
||||
mappingOffset = 0045
|
||||
Mapping =
|
||||
0060 0070 0064 0074
|
||||
End of Item 000D
|
||||
|
||||
Begin of Item 000E
|
||||
Format 1
|
||||
srcBegin = 2322
|
||||
srcEnd = 232A
|
||||
mappingOffset = 0049
|
||||
Mapping =
|
||||
00F2 00F1 FFFD FFFD FFFD FFFD FFFD 0058
|
||||
005C
|
||||
End of Item 000E
|
||||
|
||||
Begin of Item 000F
|
||||
Format 1
|
||||
srcBegin = 301A
|
||||
srcEnd = 301B
|
||||
mappingOffset = 0052
|
||||
Mapping =
|
||||
0050 0054
|
||||
End of Item 000F
|
||||
|
||||
Begin of Item 0010
|
||||
Format 2
|
||||
srcBegin = EB1B
|
||||
destBegin = 00D4
|
||||
End of Item 0010
|
||||
|
||||
Begin of Item 0011
|
||||
Format 1
|
||||
srcBegin = EC07
|
||||
srcEnd = EC0A
|
||||
mappingOffset = 0054
|
||||
Mapping =
|
||||
00A0 00A4 00B0 00B4
|
||||
End of Item 0011
|
||||
|
||||
Begin of Item 0012
|
||||
Format 1
|
||||
srcBegin = EE04
|
||||
srcEnd = EE06
|
||||
mappingOffset = 0058
|
||||
Mapping =
|
||||
00F4 00F5 00F6
|
||||
End of Item 0012
|
||||
|
||||
Begin of Item 0013
|
||||
Format 1
|
||||
srcBegin = EF81
|
||||
srcEnd = EF82
|
||||
mappingOffset = 005B
|
||||
Mapping =
|
||||
009C 00CD
|
||||
End of Item 0013
|
||||
|
||||
Begin of Item 0014
|
||||
Format 2
|
||||
srcBegin = F8E7
|
||||
destBegin = 00D6
|
||||
End of Item 0014
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x0015,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x000A,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x0049,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0000 */
|
||||
/* Total of Format 1 : 0x0010 */
|
||||
/* Total of Format 2 : 0x0005 */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x2111, 0x2111, 0x1112, 0x1111, 0x1112, 0x0002,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x000A Start of MapCell Array */
|
||||
/* 0000 */ 0x0028, 0x002F, 0x0000,
|
||||
/* 0001 */ 0x005B, 0x005D, 0x0008,
|
||||
/* 0002 */ 0x007B, 0x007D, 0x000B,
|
||||
/* 0003 */ 0x00B0, 0x0000, 0x00C6,
|
||||
/* 0004 */ 0x0303, 0x0308, 0x000E,
|
||||
/* 0005 */ 0x2032, 0x2036, 0x0014,
|
||||
/* 0006 */ 0x20D6, 0x20E1, 0x0019,
|
||||
/* 0007 */ 0x2195, 0x0000, 0x00D7,
|
||||
/* 0008 */ 0x21C0, 0x0000, 0x00D3,
|
||||
/* 0009 */ 0x220F, 0x2216, 0x0025,
|
||||
/* 000A */ 0x2227, 0x2233, 0x002D,
|
||||
/* 000B */ 0x228E, 0x2294, 0x003A,
|
||||
/* 000C */ 0x22C0, 0x22C3, 0x0041,
|
||||
/* 000D */ 0x2308, 0x230B, 0x0045,
|
||||
/* 000E */ 0x2322, 0x232A, 0x0049,
|
||||
/* 000F */ 0x301A, 0x301B, 0x0052,
|
||||
/* 0010 */ 0xEB1B, 0x0000, 0x00D4,
|
||||
/* 0011 */ 0xEC07, 0xEC0A, 0x0054,
|
||||
/* 0012 */ 0xEE04, 0xEE06, 0x0058,
|
||||
/* 0013 */ 0xEF81, 0xEF82, 0x005B,
|
||||
/* 0014 */ 0xF8E7, 0x0000, 0x00D6,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0049 Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x0048, 0x004C, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0090,
|
||||
/* 0008 */ 0x0040, 0xFFFD, 0x0044, 0x0038, 0xFFFD, 0x003C, 0x00F3, 0xFFFD,
|
||||
/* 0010 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x00D1, 0x00F7, 0x00F8, 0xFFFD, 0x00F9,
|
||||
/* 0018 */ 0x000F, 0x00D5, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00D2, 0xFFFD,
|
||||
/* 0020 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00D8, 0x00DB, 0x00FF, 0x00DA,
|
||||
/* 0028 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0094, 0x00DF, 0x00DE, 0xFFFD,
|
||||
/* 0030 */ 0xFFFD, 0x00D9, 0xFFFD, 0xFFFD, 0x0098, 0x0099, 0xFFFD, 0xFFFD,
|
||||
/* 0038 */ 0x009B, 0x009A, 0x009D, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x009E,
|
||||
/* 0040 */ 0x009F, 0x00EC, 0x00EA, 0x00DD, 0x00DC, 0x0060, 0x0070, 0x0064,
|
||||
/* 0048 */ 0x0074, 0x00F2, 0x00F1, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0050 */ 0x0058, 0x005C, 0x0050, 0x0054, 0x00A0, 0x00A4, 0x00B0, 0x00B4,
|
||||
/* 0058 */ 0x00F4, 0x00F5, 0x00F6, 0x009C, 0x00CD,
|
||||
/* End of table Total Length = 0x00A6 * 2 */
|
500
intl/uconv/ucvmath/mathematica3.uf
Normal file
500
intl/uconv/ucvmath/mathematica3.uf
Normal file
@ -0,0 +1,500 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 2
|
||||
srcBegin = 0020
|
||||
destBegin = 0020
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 2
|
||||
srcBegin = 003D
|
||||
destBegin = 0057
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 1
|
||||
srcBegin = 00A1
|
||||
srcEnd = 00A7
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
00CC 00C9 00CB FFFD 00CF FFFD 00CD
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 1
|
||||
srcBegin = 00B5
|
||||
srcEnd = 00D0
|
||||
mappingOffset = 0007
|
||||
Mapping =
|
||||
00D0 00CE FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD 00C8 FFFD FFFD FFFD FFFD FFFD
|
||||
00DE FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD FFFD 00C2
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 1
|
||||
srcBegin = 00DD
|
||||
srcEnd = 00DE
|
||||
mappingOffset = 0023
|
||||
Mapping =
|
||||
00C0 00C4
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 2
|
||||
srcBegin = 00F0
|
||||
destBegin = 00C3
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 1
|
||||
srcBegin = 00FD
|
||||
srcEnd = 00FE
|
||||
mappingOffset = 0025
|
||||
Mapping =
|
||||
00C1 00C5
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 2
|
||||
srcBegin = 0131
|
||||
destBegin = 00D2
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 1
|
||||
srcBegin = 0141
|
||||
srcEnd = 0142
|
||||
mappingOffset = 0027
|
||||
Mapping =
|
||||
00C6 00C7
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 1
|
||||
srcBegin = 0190
|
||||
srcEnd = 019B
|
||||
mappingOffset = 0029
|
||||
Mapping =
|
||||
00FB FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD FFFD 00DF
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 2
|
||||
srcBegin = 03B5
|
||||
destBegin = 00B6
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 2
|
||||
srcBegin = 03C2
|
||||
destBegin = 00B9
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = 03DA
|
||||
srcEnd = 03E0
|
||||
mappingOffset = 0035
|
||||
Mapping =
|
||||
00B3 FFFD 00B2 FFFD FFFD FFFD 00B5
|
||||
End of Item 000C
|
||||
|
||||
Begin of Item 000D
|
||||
Format 1
|
||||
srcBegin = 03F0
|
||||
srcEnd = 03F1
|
||||
mappingOffset = 003C
|
||||
Mapping =
|
||||
00BF 00B7
|
||||
End of Item 000D
|
||||
|
||||
Begin of Item 000E
|
||||
Format 1
|
||||
srcBegin = 2020
|
||||
srcEnd = 2021
|
||||
mappingOffset = 003E
|
||||
Mapping =
|
||||
00D6 00D7
|
||||
End of Item 000E
|
||||
|
||||
Begin of Item 000F
|
||||
Format 2
|
||||
srcBegin = 210F
|
||||
destBegin = 00D1
|
||||
End of Item 000F
|
||||
|
||||
Begin of Item 0010
|
||||
Format 1
|
||||
srcBegin = 2127
|
||||
srcEnd = 2138
|
||||
mappingOffset = 0040
|
||||
Mapping =
|
||||
00B0 FFFD FFFD FFFD 00CA FFFD FFFD FFFD
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD FFFD 00BC
|
||||
00BD 00BE
|
||||
End of Item 0010
|
||||
|
||||
Begin of Item 0011
|
||||
Format 1
|
||||
srcBegin = 2204
|
||||
srcEnd = 2250
|
||||
mappingOffset = 0052
|
||||
Mapping =
|
||||
00B1 00AF FFFD FFFD FFFD FFFD FFFD 009C
|
||||
009D FFFD FFFD FFFD FFFD FFFD FFFD 00A1
|
||||
FFFD FFFD FFFD FFFD 00EB FFFD FFFD FFFD
|
||||
FFFD FFFD FFFD 00AC FFFD 00AD 00AE FFFD
|
||||
FFFD FFFD FFFD 002C 002E 0027 0028 0021
|
||||
FFFD FFFD 0022 0023 FFFD FFFD FFFD 0024
|
||||
FFFD 008B FFFD 009B FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD FFFD FFFD 00AA 004C 003F 003E
|
||||
004E FFFD FFFD 003D FFFD 004D FFFD FFFD
|
||||
FFFD 005E 0051 0050 0055
|
||||
End of Item 0011
|
||||
|
||||
Begin of Item 0012
|
||||
Format 1
|
||||
srcBegin = 2262
|
||||
srcEnd = 22B5
|
||||
mappingOffset = 009F
|
||||
Mapping =
|
||||
0054 FFFD 0062 FFFD 0063 0073 006A 007A
|
||||
0060 0070 FFFD 005F 0065 0072 0068 0078
|
||||
0064 0074 006B 007B 0088 0098 0089 0099
|
||||
0080 0090 0081 0091 0083 0093 0084 0094
|
||||
FFFD FFFD FFFD 008E FFFD FFFD 008D 008F
|
||||
FFFD FFFD FFFD FFFD 0029 006C 007C 006D
|
||||
007D 002A 002B FFFD 009E FFFD FFFD 009F
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
00A2 00A4 00A7 00A6 FFFD FFFD 00A3 FFFD
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
0030 0040 0031 0041
|
||||
End of Item 0012
|
||||
|
||||
Begin of Item 0013
|
||||
Format 1
|
||||
srcBegin = 22DA
|
||||
srcEnd = 22ED
|
||||
mappingOffset = 00F3
|
||||
Mapping =
|
||||
008A 009A FFFD FFFD FFFD FFFD 0085 0095
|
||||
006F 008C FFFD FFFD FFFD FFFD 0087 0097
|
||||
0033 0043 0034 0044
|
||||
End of Item 0013
|
||||
|
||||
Begin of Item 0014
|
||||
Format 1
|
||||
srcBegin = 2322
|
||||
srcEnd = 2323
|
||||
mappingOffset = 0107
|
||||
Mapping =
|
||||
005B 005C
|
||||
End of Item 0014
|
||||
|
||||
Begin of Item 0015
|
||||
Format 2
|
||||
srcBegin = 2353
|
||||
destBegin = 00DD
|
||||
End of Item 0015
|
||||
|
||||
Begin of Item 0016
|
||||
Format 2
|
||||
srcBegin = 2370
|
||||
destBegin = 00DC
|
||||
End of Item 0016
|
||||
|
||||
Begin of Item 0017
|
||||
Format 1
|
||||
srcBegin = 25A0
|
||||
srcEnd = 25CF
|
||||
mappingOffset = 0109
|
||||
Mapping =
|
||||
00E0 00E1 FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD 00E2 00E3 FFFD FFFD 00F0 00F1
|
||||
FFFD FFFD 00F2 00F3 FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD FFFD FFFD 00F4 00F5 FFFD FFFD
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD 00EC 00ED
|
||||
FFFD FFFD FFFD 00E7 FFFD FFFD FFFD 00E6
|
||||
End of Item 0017
|
||||
|
||||
Begin of Item 0018
|
||||
Format 2
|
||||
srcBegin = 25E6
|
||||
destBegin = 00E9
|
||||
End of Item 0018
|
||||
|
||||
Begin of Item 0019
|
||||
Format 2
|
||||
srcBegin = 2605
|
||||
destBegin = 00F8
|
||||
End of Item 0019
|
||||
|
||||
Begin of Item 001A
|
||||
Format 1
|
||||
srcBegin = 266D
|
||||
srcEnd = 266F
|
||||
mappingOffset = 0139
|
||||
Mapping =
|
||||
00D9 00DA 00DB
|
||||
End of Item 001A
|
||||
|
||||
Begin of Item 001B
|
||||
Format 2
|
||||
srcBegin = 2736
|
||||
destBegin = 00F7
|
||||
End of Item 001B
|
||||
|
||||
Begin of Item 001C
|
||||
Format 1
|
||||
srcBegin = E92E
|
||||
srcEnd = E937
|
||||
mappingOffset = 013C
|
||||
Mapping =
|
||||
0036 0037 0038 FFFD FFFD FFFD FFFD FFFD
|
||||
0061 0071
|
||||
End of Item 001C
|
||||
|
||||
Begin of Item 001D
|
||||
Format 1
|
||||
srcBegin = E948
|
||||
srcEnd = E956
|
||||
mappingOffset = 0146
|
||||
Mapping =
|
||||
00A5 FFFD FFFD FFFD 0058 FFFD FFFD FFFD
|
||||
0032 0042 FFFD FFFD 0056 005A 0059
|
||||
End of Item 001D
|
||||
|
||||
Begin of Item 001E
|
||||
Format 2
|
||||
srcBegin = E981
|
||||
destBegin = 003C
|
||||
End of Item 001E
|
||||
|
||||
Begin of Item 001F
|
||||
Format 2
|
||||
srcBegin = EA0F
|
||||
destBegin = 004F
|
||||
End of Item 001F
|
||||
|
||||
Begin of Item 0020
|
||||
Format 1
|
||||
srcBegin = EA2E
|
||||
srcEnd = EA39
|
||||
mappingOffset = 0155
|
||||
Mapping =
|
||||
0046 0047 0048 FFFD FFFD FFFD FFFD FFFD
|
||||
0067 0077 0066 0076
|
||||
End of Item 0020
|
||||
|
||||
Begin of Item 0021
|
||||
Format 1
|
||||
srcBegin = EA50
|
||||
srcEnd = EA53
|
||||
mappingOffset = 0161
|
||||
Mapping =
|
||||
0035 0045 0052 0053
|
||||
End of Item 0021
|
||||
|
||||
Begin of Item 0022
|
||||
Format 1
|
||||
srcBegin = EA60
|
||||
srcEnd = EA61
|
||||
mappingOffset = 0165
|
||||
Mapping =
|
||||
006E 007E
|
||||
End of Item 0022
|
||||
|
||||
Begin of Item 0023
|
||||
Format 1
|
||||
srcBegin = ED02
|
||||
srcEnd = ED03
|
||||
mappingOffset = 0167
|
||||
Mapping =
|
||||
00D4 00B8
|
||||
End of Item 0023
|
||||
|
||||
Begin of Item 0024
|
||||
Format 1
|
||||
srcBegin = ED13
|
||||
srcEnd = ED16
|
||||
mappingOffset = 0169
|
||||
Mapping =
|
||||
00FC FFFD FFFD 00FF
|
||||
End of Item 0024
|
||||
|
||||
Begin of Item 0025
|
||||
Format 1
|
||||
srcBegin = EF80
|
||||
srcEnd = EF81
|
||||
mappingOffset = 016D
|
||||
Mapping =
|
||||
0025 0026
|
||||
End of Item 0025
|
||||
|
||||
Begin of Item 0026
|
||||
Format 1
|
||||
srcBegin = F227
|
||||
srcEnd = F230
|
||||
mappingOffset = 016F
|
||||
Mapping =
|
||||
00FD FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD 00FE
|
||||
End of Item 0026
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x0027,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x000E,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x0083,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0000 */
|
||||
/* Total of Format 1 : 0x0019 */
|
||||
/* Total of Format 2 : 0x000E */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x1122, 0x2121, 0x2211, 0x2111, 0x1111, 0x1221, 0x2122, 0x2211,
|
||||
0x1111, 0x0111,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x000E Start of MapCell Array */
|
||||
/* 0000 */ 0x0020, 0x0000, 0x0020,
|
||||
/* 0001 */ 0x003D, 0x0000, 0x0057,
|
||||
/* 0002 */ 0x00A1, 0x00A7, 0x0000,
|
||||
/* 0003 */ 0x00B5, 0x00D0, 0x0007,
|
||||
/* 0004 */ 0x00DD, 0x00DE, 0x0023,
|
||||
/* 0005 */ 0x00F0, 0x0000, 0x00C3,
|
||||
/* 0006 */ 0x00FD, 0x00FE, 0x0025,
|
||||
/* 0007 */ 0x0131, 0x0000, 0x00D2,
|
||||
/* 0008 */ 0x0141, 0x0142, 0x0027,
|
||||
/* 0009 */ 0x0190, 0x019B, 0x0029,
|
||||
/* 000A */ 0x03B5, 0x0000, 0x00B6,
|
||||
/* 000B */ 0x03C2, 0x0000, 0x00B9,
|
||||
/* 000C */ 0x03DA, 0x03E0, 0x0035,
|
||||
/* 000D */ 0x03F0, 0x03F1, 0x003C,
|
||||
/* 000E */ 0x2020, 0x2021, 0x003E,
|
||||
/* 000F */ 0x210F, 0x0000, 0x00D1,
|
||||
/* 0010 */ 0x2127, 0x2138, 0x0040,
|
||||
/* 0011 */ 0x2204, 0x2250, 0x0052,
|
||||
/* 0012 */ 0x2262, 0x22B5, 0x009F,
|
||||
/* 0013 */ 0x22DA, 0x22ED, 0x00F3,
|
||||
/* 0014 */ 0x2322, 0x2323, 0x0107,
|
||||
/* 0015 */ 0x2353, 0x0000, 0x00DD,
|
||||
/* 0016 */ 0x2370, 0x0000, 0x00DC,
|
||||
/* 0017 */ 0x25A0, 0x25CF, 0x0109,
|
||||
/* 0018 */ 0x25E6, 0x0000, 0x00E9,
|
||||
/* 0019 */ 0x2605, 0x0000, 0x00F8,
|
||||
/* 001A */ 0x266D, 0x266F, 0x0139,
|
||||
/* 001B */ 0x2736, 0x0000, 0x00F7,
|
||||
/* 001C */ 0xE92E, 0xE937, 0x013C,
|
||||
/* 001D */ 0xE948, 0xE956, 0x0146,
|
||||
/* 001E */ 0xE981, 0x0000, 0x003C,
|
||||
/* 001F */ 0xEA0F, 0x0000, 0x004F,
|
||||
/* 0020 */ 0xEA2E, 0xEA39, 0x0155,
|
||||
/* 0021 */ 0xEA50, 0xEA53, 0x0161,
|
||||
/* 0022 */ 0xEA60, 0xEA61, 0x0165,
|
||||
/* 0023 */ 0xED02, 0xED03, 0x0167,
|
||||
/* 0024 */ 0xED13, 0xED16, 0x0169,
|
||||
/* 0025 */ 0xEF80, 0xEF81, 0x016D,
|
||||
/* 0026 */ 0xF227, 0xF230, 0x016F,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0083 Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x00CC, 0x00C9, 0x00CB, 0xFFFD, 0x00CF, 0xFFFD, 0x00CD, 0x00D0,
|
||||
/* 0008 */ 0x00CE, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0010 */ 0xFFFD, 0x00C8, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00DE,
|
||||
/* 0018 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0020 */ 0xFFFD, 0xFFFD, 0x00C2, 0x00C0, 0x00C4, 0x00C1, 0x00C5, 0x00C6,
|
||||
/* 0028 */ 0x00C7, 0x00FB, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0030 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00DF, 0x00B3, 0xFFFD, 0x00B2,
|
||||
/* 0038 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x00B5, 0x00BF, 0x00B7, 0x00D6, 0x00D7,
|
||||
/* 0040 */ 0x00B0, 0xFFFD, 0xFFFD, 0xFFFD, 0x00CA, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0048 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00BC,
|
||||
/* 0050 */ 0x00BD, 0x00BE, 0x00B1, 0x00AF, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0058 */ 0xFFFD, 0x009C, 0x009D, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0060 */ 0xFFFD, 0x00A1, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00EB, 0xFFFD,
|
||||
/* 0068 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00AC, 0xFFFD, 0x00AD,
|
||||
/* 0070 */ 0x00AE, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x002C, 0x002E, 0x0027,
|
||||
/* 0078 */ 0x0028, 0x0021, 0xFFFD, 0xFFFD, 0x0022, 0x0023, 0xFFFD, 0xFFFD,
|
||||
/* 0080 */ 0xFFFD, 0x0024, 0xFFFD, 0x008B, 0xFFFD, 0x009B, 0xFFFD, 0xFFFD,
|
||||
/* 0088 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00AA, 0x004C,
|
||||
/* 0090 */ 0x003F, 0x003E, 0x004E, 0xFFFD, 0xFFFD, 0x003D, 0xFFFD, 0x004D,
|
||||
/* 0098 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x005E, 0x0051, 0x0050, 0x0055, 0x0054,
|
||||
/* 00A0 */ 0xFFFD, 0x0062, 0xFFFD, 0x0063, 0x0073, 0x006A, 0x007A, 0x0060,
|
||||
/* 00A8 */ 0x0070, 0xFFFD, 0x005F, 0x0065, 0x0072, 0x0068, 0x0078, 0x0064,
|
||||
/* 00B0 */ 0x0074, 0x006B, 0x007B, 0x0088, 0x0098, 0x0089, 0x0099, 0x0080,
|
||||
/* 00B8 */ 0x0090, 0x0081, 0x0091, 0x0083, 0x0093, 0x0084, 0x0094, 0xFFFD,
|
||||
/* 00C0 */ 0xFFFD, 0xFFFD, 0x008E, 0xFFFD, 0xFFFD, 0x008D, 0x008F, 0xFFFD,
|
||||
/* 00C8 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x0029, 0x006C, 0x007C, 0x006D, 0x007D,
|
||||
/* 00D0 */ 0x002A, 0x002B, 0xFFFD, 0x009E, 0xFFFD, 0xFFFD, 0x009F, 0xFFFD,
|
||||
/* 00D8 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00A2,
|
||||
/* 00E0 */ 0x00A4, 0x00A7, 0x00A6, 0xFFFD, 0xFFFD, 0x00A3, 0xFFFD, 0xFFFD,
|
||||
/* 00E8 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0030,
|
||||
/* 00F0 */ 0x0040, 0x0031, 0x0041, 0x008A, 0x009A, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 00F8 */ 0xFFFD, 0x0085, 0x0095, 0x006F, 0x008C, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0100 */ 0xFFFD, 0x0087, 0x0097, 0x0033, 0x0043, 0x0034, 0x0044, 0x005B,
|
||||
/* 0108 */ 0x005C, 0x00E0, 0x00E1, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0110 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x00E2, 0x00E3, 0xFFFD, 0xFFFD, 0x00F0,
|
||||
/* 0118 */ 0x00F1, 0xFFFD, 0xFFFD, 0x00F2, 0x00F3, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0120 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00F4, 0x00F5, 0xFFFD,
|
||||
/* 0128 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00EC,
|
||||
/* 0130 */ 0x00ED, 0xFFFD, 0xFFFD, 0xFFFD, 0x00E7, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0138 */ 0x00E6, 0x00D9, 0x00DA, 0x00DB, 0x0036, 0x0037, 0x0038, 0xFFFD,
|
||||
/* 0140 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0061, 0x0071, 0x00A5, 0xFFFD,
|
||||
/* 0148 */ 0xFFFD, 0xFFFD, 0x0058, 0xFFFD, 0xFFFD, 0xFFFD, 0x0032, 0x0042,
|
||||
/* 0150 */ 0xFFFD, 0xFFFD, 0x0056, 0x005A, 0x0059, 0x0046, 0x0047, 0x0048,
|
||||
/* 0158 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0067, 0x0077, 0x0066,
|
||||
/* 0160 */ 0x0076, 0x0035, 0x0045, 0x0052, 0x0053, 0x006E, 0x007E, 0x00D4,
|
||||
/* 0168 */ 0x00B8, 0x00FC, 0xFFFD, 0xFFFD, 0x00FF, 0x0025, 0x0026, 0x00FD,
|
||||
/* 0170 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0178 */ 0x00FE,
|
||||
/* End of table Total Length = 0x01FC * 2 */
|
219
intl/uconv/ucvmath/mathematica4.uf
Normal file
219
intl/uconv/ucvmath/mathematica4.uf
Normal file
@ -0,0 +1,219 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 0
|
||||
srcBegin = EB20
|
||||
srcEnd = EB27
|
||||
destBegin = 0028
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 0
|
||||
srcBegin = EB28
|
||||
srcEnd = EB2F
|
||||
destBegin = 0038
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 2
|
||||
srcBegin = 0020
|
||||
destBegin = 0020
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 2
|
||||
srcBegin = 002F
|
||||
destBegin = 00D0
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 1
|
||||
srcBegin = 2018
|
||||
srcEnd = 2026
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
007B 007D FFFD FFFD 007C 007E FFFD FFFD
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD 00B4
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 1
|
||||
srcBegin = 2035
|
||||
srcEnd = 2036
|
||||
mappingOffset = 000F
|
||||
Mapping =
|
||||
00BE 00BF
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 1
|
||||
srcBegin = 2196
|
||||
srcEnd = 21AA
|
||||
mappingOffset = 0011
|
||||
Mapping =
|
||||
0088 0089 008A 0087 FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD 0022 0026
|
||||
0023 0027 FFFD 004E 004F
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 1
|
||||
srcBegin = 21BC
|
||||
srcEnd = 21CC
|
||||
mappingOffset = 0026
|
||||
Mapping =
|
||||
0030 0033 0043 0040 0031 0034 0045 0042
|
||||
0056 005C 0057 FFFD FFFD FFFD FFFD 0047
|
||||
0046
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 2
|
||||
srcBegin = 21E5
|
||||
destBegin = 0021
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 1
|
||||
srcBegin = 22EE
|
||||
srcEnd = 22F1
|
||||
mappingOffset = 0037
|
||||
Mapping =
|
||||
00B6 00B5 00B7 00B8
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 1
|
||||
srcBegin = EB0D
|
||||
srcEnd = EB0E
|
||||
mappingOffset = 003B
|
||||
Mapping =
|
||||
0079 007A
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 1
|
||||
srcBegin = EB1B
|
||||
srcEnd = EB1F
|
||||
mappingOffset = 003D
|
||||
Mapping =
|
||||
0032 0035 0036 0037 005D
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = EB30
|
||||
srcEnd = EB35
|
||||
mappingOffset = 0042
|
||||
Mapping =
|
||||
0024 0025 004C 004D 0077 0078
|
||||
End of Item 000C
|
||||
|
||||
Begin of Item 000D
|
||||
Format 1
|
||||
srcBegin = EC0C
|
||||
srcEnd = EC0D
|
||||
mappingOffset = 0048
|
||||
Mapping =
|
||||
0080 0070
|
||||
End of Item 000D
|
||||
|
||||
Begin of Item 000E
|
||||
Format 1
|
||||
srcBegin = FE35
|
||||
srcEnd = FE38
|
||||
mappingOffset = 004A
|
||||
Mapping =
|
||||
0090 00A0 0097 00A7
|
||||
End of Item 000E
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x000F,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x0008,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x0035,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0002 */
|
||||
/* Total of Format 1 : 0x000A */
|
||||
/* Total of Format 2 : 0x0003 */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x2200, 0x1111, 0x1112, 0x0111,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0008 Start of MapCell Array */
|
||||
/* 0000 */ 0xEB20, 0xEB27, 0x0028,
|
||||
/* 0001 */ 0xEB28, 0xEB2F, 0x0038,
|
||||
/* 0002 */ 0x0020, 0x0000, 0x0020,
|
||||
/* 0003 */ 0x002F, 0x0000, 0x00D0,
|
||||
/* 0004 */ 0x2018, 0x2026, 0x0000,
|
||||
/* 0005 */ 0x2035, 0x2036, 0x000F,
|
||||
/* 0006 */ 0x2196, 0x21AA, 0x0011,
|
||||
/* 0007 */ 0x21BC, 0x21CC, 0x0026,
|
||||
/* 0008 */ 0x21E5, 0x0000, 0x0021,
|
||||
/* 0009 */ 0x22EE, 0x22F1, 0x0037,
|
||||
/* 000A */ 0xEB0D, 0xEB0E, 0x003B,
|
||||
/* 000B */ 0xEB1B, 0xEB1F, 0x003D,
|
||||
/* 000C */ 0xEB30, 0xEB35, 0x0042,
|
||||
/* 000D */ 0xEC0C, 0xEC0D, 0x0048,
|
||||
/* 000E */ 0xFE35, 0xFE38, 0x004A,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0035 Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x007B, 0x007D, 0xFFFD, 0xFFFD, 0x007C, 0x007E, 0xFFFD, 0xFFFD,
|
||||
/* 0008 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00B4, 0x00BE,
|
||||
/* 0010 */ 0x00BF, 0x0088, 0x0089, 0x008A, 0x0087, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0018 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0022,
|
||||
/* 0020 */ 0x0026, 0x0023, 0x0027, 0xFFFD, 0x004E, 0x004F, 0x0030, 0x0033,
|
||||
/* 0028 */ 0x0043, 0x0040, 0x0031, 0x0034, 0x0045, 0x0042, 0x0056, 0x005C,
|
||||
/* 0030 */ 0x0057, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0047, 0x0046, 0x00B6,
|
||||
/* 0038 */ 0x00B5, 0x00B7, 0x00B8, 0x0079, 0x007A, 0x0032, 0x0035, 0x0036,
|
||||
/* 0040 */ 0x0037, 0x005D, 0x0024, 0x0025, 0x004C, 0x004D, 0x0077, 0x0078,
|
||||
/* 0048 */ 0x0080, 0x0070, 0x0090, 0x00A0, 0x0097, 0x00A7,
|
||||
/* End of table Total Length = 0x0083 * 2 */
|
225
intl/uconv/ucvmath/mathematica5.uf
Normal file
225
intl/uconv/ucvmath/mathematica5.uf
Normal file
@ -0,0 +1,225 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 0
|
||||
srcBegin = F012
|
||||
srcEnd = F018
|
||||
destBegin = 0092
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 0
|
||||
srcBegin = F01F
|
||||
srcEnd = F033
|
||||
destBegin = 009F
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 0
|
||||
srcBegin = F092
|
||||
srcEnd = F098
|
||||
destBegin = 00D2
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 0
|
||||
srcBegin = F09A
|
||||
srcEnd = F0B3
|
||||
destBegin = 00DA
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 0
|
||||
srcBegin = F112
|
||||
srcEnd = F119
|
||||
destBegin = 0053
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 0
|
||||
srcBegin = F129
|
||||
srcEnd = F133
|
||||
destBegin = 0070
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 2
|
||||
srcBegin = 0020
|
||||
destBegin = 0020
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 1
|
||||
srcBegin = 2018
|
||||
srcEnd = 201D
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
00F8 00F7 FFFD FFFD 00FA 00F9
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 1
|
||||
srcBegin = 2102
|
||||
srcEnd = 2134
|
||||
mappingOffset = 0006
|
||||
Mapping =
|
||||
00C2 FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
0067 0048 0087 00C7 FFFD FFFD 0049 0088
|
||||
004C 006C FFFD 00CD FFFD FFFD 0050 00CF
|
||||
00D0 0052 0091 00D1 FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD 00D9 FFFD FFFD FFFD 0099 FFFD
|
||||
FFFD FFFD 0042 0082 FFFD 0065 0045 0046
|
||||
FFFD 004D 006F
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 2
|
||||
srcBegin = 25A1
|
||||
destBegin = 00FC
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 2
|
||||
srcBegin = 25B3
|
||||
destBegin = 00FD
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 2
|
||||
srcBegin = 25CB
|
||||
destBegin = 00FB
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = F000
|
||||
srcEnd = F01E
|
||||
mappingOffset = 0039
|
||||
Mapping =
|
||||
00B4 00B5 FFFD 0083 0084 0085 0086 FFFD
|
||||
FFFD 0089 008A 008B 008C 00B6 00B7 00B8
|
||||
00B9 FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD 009A 009B 009C 00BA 00BB
|
||||
End of Item 000C
|
||||
|
||||
Begin of Item 000D
|
||||
Format 1
|
||||
srcBegin = F080
|
||||
srcEnd = F08E
|
||||
mappingOffset = 0058
|
||||
Mapping =
|
||||
00C0 00C1 FFFD 00C3 00C4 00C5 00C6 FFFD
|
||||
00C8 00C9 00BC 00CB 00CC FFFD 00CE
|
||||
End of Item 000D
|
||||
|
||||
Begin of Item 000E
|
||||
Format 1
|
||||
srcBegin = F100
|
||||
srcEnd = F127
|
||||
mappingOffset = 0067
|
||||
Mapping =
|
||||
0041 FFFD 0043 0044 FFFD FFFD 0047 FFFD
|
||||
FFFD 004A 004B FFFD FFFD 004E 004F FFFD
|
||||
0051 FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD 0061 0062 0063 0064 FFFD 0066
|
||||
FFFD 0068 0069 006A 006B FFFD 006D 006E
|
||||
End of Item 000E
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x000F,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x0008,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x0035,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0006 */
|
||||
/* Total of Format 1 : 0x0005 */
|
||||
/* Total of Format 2 : 0x0004 */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x0000, 0x1200, 0x2221, 0x0111,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0008 Start of MapCell Array */
|
||||
/* 0000 */ 0xF012, 0xF018, 0x0092,
|
||||
/* 0001 */ 0xF01F, 0xF033, 0x009F,
|
||||
/* 0002 */ 0xF092, 0xF098, 0x00D2,
|
||||
/* 0003 */ 0xF09A, 0xF0B3, 0x00DA,
|
||||
/* 0004 */ 0xF112, 0xF119, 0x0053,
|
||||
/* 0005 */ 0xF129, 0xF133, 0x0070,
|
||||
/* 0006 */ 0x0020, 0x0000, 0x0020,
|
||||
/* 0007 */ 0x2018, 0x201D, 0x0000,
|
||||
/* 0008 */ 0x2102, 0x2134, 0x0006,
|
||||
/* 0009 */ 0x25A1, 0x0000, 0x00FC,
|
||||
/* 000A */ 0x25B3, 0x0000, 0x00FD,
|
||||
/* 000B */ 0x25CB, 0x0000, 0x00FB,
|
||||
/* 000C */ 0xF000, 0xF01E, 0x0039,
|
||||
/* 000D */ 0xF080, 0xF08E, 0x0058,
|
||||
/* 000E */ 0xF100, 0xF127, 0x0067,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0035 Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x00F8, 0x00F7, 0xFFFD, 0xFFFD, 0x00FA, 0x00F9, 0x00C2, 0xFFFD,
|
||||
/* 0008 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0067, 0x0048,
|
||||
/* 0010 */ 0x0087, 0x00C7, 0xFFFD, 0xFFFD, 0x0049, 0x0088, 0x004C, 0x006C,
|
||||
/* 0018 */ 0xFFFD, 0x00CD, 0xFFFD, 0xFFFD, 0x0050, 0x00CF, 0x00D0, 0x0052,
|
||||
/* 0020 */ 0x0091, 0x00D1, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0028 */ 0x00D9, 0xFFFD, 0xFFFD, 0xFFFD, 0x0099, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0030 */ 0x0042, 0x0082, 0xFFFD, 0x0065, 0x0045, 0x0046, 0xFFFD, 0x004D,
|
||||
/* 0038 */ 0x006F, 0x00B4, 0x00B5, 0xFFFD, 0x0083, 0x0084, 0x0085, 0x0086,
|
||||
/* 0040 */ 0xFFFD, 0xFFFD, 0x0089, 0x008A, 0x008B, 0x008C, 0x00B6, 0x00B7,
|
||||
/* 0048 */ 0x00B8, 0x00B9, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0050 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x009A, 0x009B, 0x009C, 0x00BA, 0x00BB,
|
||||
/* 0058 */ 0x00C0, 0x00C1, 0xFFFD, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0xFFFD,
|
||||
/* 0060 */ 0x00C8, 0x00C9, 0x00BC, 0x00CB, 0x00CC, 0xFFFD, 0x00CE, 0x0041,
|
||||
/* 0068 */ 0xFFFD, 0x0043, 0x0044, 0xFFFD, 0xFFFD, 0x0047, 0xFFFD, 0xFFFD,
|
||||
/* 0070 */ 0x004A, 0x004B, 0xFFFD, 0xFFFD, 0x004E, 0x004F, 0xFFFD, 0x0051,
|
||||
/* 0078 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0080 */ 0xFFFD, 0x0061, 0x0062, 0x0063, 0x0064, 0xFFFD, 0x0066, 0xFFFD,
|
||||
/* 0088 */ 0x0068, 0x0069, 0x006A, 0x006B, 0xFFFD, 0x006D, 0x006E,
|
||||
/* End of table Total Length = 0x00C4 * 2 */
|
214
intl/uconv/ucvmath/mtextra.uf
Normal file
214
intl/uconv/ucvmath/mtextra.uf
Normal file
@ -0,0 +1,214 @@
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 2
|
||||
srcBegin = 0020
|
||||
destBegin = 0020
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 2
|
||||
srcBegin = 019B
|
||||
destBegin = 0044
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 1
|
||||
srcBegin = 0300
|
||||
srcEnd = 0307
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
0023 FFFD 0024 0025 FFFD FFFD FFFD 0026
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 2
|
||||
srcBegin = 2026
|
||||
destBegin = 004B
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 2
|
||||
srcBegin = 2035
|
||||
destBegin = 0060
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 1
|
||||
srcBegin = 20D0
|
||||
srcEnd = 20E1
|
||||
mappingOffset = 0008
|
||||
Mapping =
|
||||
0077 0076 FFFD FFFD FFFD FFFD 0073 0072
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD 0074
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 1
|
||||
srcBegin = 210F
|
||||
srcEnd = 2113
|
||||
mappingOffset = 001A
|
||||
Mapping =
|
||||
0068 FFFD FFFD FFFD 006C
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 2
|
||||
srcBegin = 2195
|
||||
destBegin = 0062
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 2
|
||||
srcBegin = 21A6
|
||||
destBegin = 0061
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 2
|
||||
srcBegin = 21D5
|
||||
destBegin = 0063
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 1
|
||||
srcBegin = 2210
|
||||
srcEnd = 2218
|
||||
mappingOffset = 001F
|
||||
Mapping =
|
||||
0043 FFFD FFFD 006D FFFD FFFD FFFD FFFD
|
||||
006F
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 1
|
||||
srcBegin = 2229
|
||||
srcEnd = 2235
|
||||
mappingOffset = 0028
|
||||
Mapping =
|
||||
0049 0055 FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD FFFD FFFD 0051
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = 227A
|
||||
srcEnd = 227B
|
||||
mappingOffset = 0035
|
||||
Mapping =
|
||||
0070 0066
|
||||
End of Item 000C
|
||||
|
||||
Begin of Item 000D
|
||||
Format 1
|
||||
srcBegin = 22B2
|
||||
srcEnd = 22B3
|
||||
mappingOffset = 0037
|
||||
Mapping =
|
||||
003C 003E
|
||||
End of Item 000D
|
||||
|
||||
Begin of Item 000E
|
||||
Format 1
|
||||
srcBegin = 22EE
|
||||
srcEnd = 22F1
|
||||
mappingOffset = 0039
|
||||
Mapping =
|
||||
004D 004C 004E 004F
|
||||
End of Item 000E
|
||||
|
||||
Begin of Item 000F
|
||||
Format 1
|
||||
srcBegin = 2322
|
||||
srcEnd = 2323
|
||||
mappingOffset = 003D
|
||||
Mapping =
|
||||
0029 0028
|
||||
End of Item 000F
|
||||
|
||||
Begin of Item 0010
|
||||
Format 2
|
||||
srcBegin = EB00
|
||||
destBegin = 0075
|
||||
End of Item 0010
|
||||
|
||||
Begin of Item 0011
|
||||
Format 1
|
||||
srcBegin = EC00
|
||||
srcEnd = EC06
|
||||
mappingOffset = 003F
|
||||
Mapping =
|
||||
0031 0032 0033 0034 0036 0037 0038
|
||||
End of Item 0011
|
||||
|
||||
Begin of Item 0012
|
||||
Format 1
|
||||
srcBegin = F612
|
||||
srcEnd = F613
|
||||
mappingOffset = 0046
|
||||
Mapping =
|
||||
007D 007B
|
||||
End of Item 0012
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x0013,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x0009,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x0042,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0000 */
|
||||
/* Total of Format 1 : 0x000B */
|
||||
/* Total of Format 2 : 0x0008 */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x2122, 0x2112, 0x1122, 0x1111, 0x0112,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0009 Start of MapCell Array */
|
||||
/* 0000 */ 0x0020, 0x0000, 0x0020,
|
||||
/* 0001 */ 0x019B, 0x0000, 0x0044,
|
||||
/* 0002 */ 0x0300, 0x0307, 0x0000,
|
||||
/* 0003 */ 0x2026, 0x0000, 0x004B,
|
||||
/* 0004 */ 0x2035, 0x0000, 0x0060,
|
||||
/* 0005 */ 0x20D0, 0x20E1, 0x0008,
|
||||
/* 0006 */ 0x210F, 0x2113, 0x001A,
|
||||
/* 0007 */ 0x2195, 0x0000, 0x0062,
|
||||
/* 0008 */ 0x21A6, 0x0000, 0x0061,
|
||||
/* 0009 */ 0x21D5, 0x0000, 0x0063,
|
||||
/* 000A */ 0x2210, 0x2218, 0x001F,
|
||||
/* 000B */ 0x2229, 0x2235, 0x0028,
|
||||
/* 000C */ 0x227A, 0x227B, 0x0035,
|
||||
/* 000D */ 0x22B2, 0x22B3, 0x0037,
|
||||
/* 000E */ 0x22EE, 0x22F1, 0x0039,
|
||||
/* 000F */ 0x2322, 0x2323, 0x003D,
|
||||
/* 0010 */ 0xEB00, 0x0000, 0x0075,
|
||||
/* 0011 */ 0xEC00, 0xEC06, 0x003F,
|
||||
/* 0012 */ 0xF612, 0xF613, 0x0046,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0042 Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x0023, 0xFFFD, 0x0024, 0x0025, 0xFFFD, 0xFFFD, 0xFFFD, 0x0026,
|
||||
/* 0008 */ 0x0077, 0x0076, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0073, 0x0072,
|
||||
/* 0010 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0018 */ 0xFFFD, 0x0074, 0x0068, 0xFFFD, 0xFFFD, 0xFFFD, 0x006C, 0x0043,
|
||||
/* 0020 */ 0xFFFD, 0xFFFD, 0x006D, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x006F,
|
||||
/* 0028 */ 0x0049, 0x0055, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0030 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0051, 0x0070, 0x0066, 0x003C,
|
||||
/* 0038 */ 0x003E, 0x004D, 0x004C, 0x004E, 0x004F, 0x0029, 0x0028, 0x0031,
|
||||
/* 0040 */ 0x0032, 0x0033, 0x0034, 0x0036, 0x0037, 0x0038, 0x007D, 0x007B,
|
||||
/* End of table Total Length = 0x008A * 2 */
|
89
intl/uconv/ucvmath/nsUCvMathCID.h
Normal file
89
intl/uconv/ucvmath/nsUCvMathCID.h
Normal file
@ -0,0 +1,89 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUCvMathCID_h___
|
||||
#define nsUCvMathCID_h___
|
||||
|
||||
#include "nsISupports.h"
|
||||
|
||||
// Class ID for our UnicodeToTeXCMSYttf (TeX Symbol -TTF) charset converter
|
||||
// {e332db00-e076-11d3-b32f-004005a7a7e4}
|
||||
NS_DECLARE_ID(kUnicodeToTeXCMSYttfCID,
|
||||
0xe332db00, 0xe076, 0x11d3, 0xb3, 0x2f, 0x0, 0x40, 0x05, 0xa7, 0xa7, 0xe4);
|
||||
|
||||
// Class ID for our UnicodeToTeXCMEXttf (TeX Extension -TTF) charset converter
|
||||
// {e91f9440-e076-11d3-b32f-004005a7a7e4}
|
||||
NS_DECLARE_ID(kUnicodeToTeXCMEXttfCID,
|
||||
0xe91f9440, 0xe076, 0x11d3, 0xb3, 0x2f, 0x0, 0x40, 0x05, 0xa7, 0xa7, 0xe4);
|
||||
|
||||
// Class ID for our UnicodeToTeXCMSYt1 (TeX Symbol -Type1) charset converter
|
||||
// {e768ebef-70f9-4fe3-8835-4f4f3fd996e2}
|
||||
NS_DECLARE_ID(kUnicodeToTeXCMSYt1CID,
|
||||
0xe768ebef, 0x70f9, 0x4fe3, 0x88, 0x35, 0x4f, 0x4f, 0x3f, 0xd9, 0x96, 0xe2);
|
||||
|
||||
// Class ID for our UnicodeToTeXCMEXt1 (TeX Extension -Type1) charset converter
|
||||
// {f01cb3e7-4ace-414e-a2b7-eaba03e9c86c}
|
||||
NS_DECLARE_ID(kUnicodeToTeXCMEXt1CID,
|
||||
0xf01cb3e7, 0x4ace, 0x414e, 0xa2, 0xb7, 0xea, 0xba, 0x03, 0xe9, 0xc8, 0x6c);
|
||||
|
||||
// Class ID for our UnicodeToMathematica1 charset converter
|
||||
// {758e4f20-e2f2-11d3-b32f-004005a7a7e4}
|
||||
NS_DECLARE_ID(kUnicodeToMathematica1CID,
|
||||
0x758e4f20, 0xe2f2, 0x11d3, 0xb3, 0x2f, 0x0, 0x40, 0x05, 0xa7, 0xa7, 0xe4);
|
||||
|
||||
// Class ID for our UnicodeToMathematica2 charset converter
|
||||
// {7e6e57c0-e2f2-11d3-b32f-004005a7a7e4}
|
||||
NS_DECLARE_ID(kUnicodeToMathematica2CID,
|
||||
0x7e6e57c0, 0xe2f2, 0x11d3, 0xb3, 0x2f, 0x0, 0x40, 0x05, 0xa7, 0xa7, 0xe4);
|
||||
|
||||
// Class ID for our UnicodeToMathematica3 charset converter
|
||||
// {830b5f80-11d3-b32f-004005a7a7e4}
|
||||
NS_DECLARE_ID(kUnicodeToMathematica3CID,
|
||||
0x830b5f80, 0xe2f2, 0x11d3, 0xb3, 0x2f, 0x0, 0x40, 0x05, 0xa7, 0xa7, 0xe4);
|
||||
|
||||
// Class ID for our UnicodeToMathematica4 charset converter
|
||||
// {87ed1160-e2f2-11d3-b32f-004005a7a7e4}
|
||||
NS_DECLARE_ID(kUnicodeToMathematica4CID,
|
||||
0x87ed1160, 0xe2f2, 0x11d3, 0xb3, 0x2f, 0x0, 0x40, 0x05, 0xa7, 0xa7, 0xe4);
|
||||
|
||||
// Class ID for our UnicodeToMathematica5 charset converter
|
||||
// {8a0dce80-e2f2-11d3-b32f-004005a7a7e4}
|
||||
NS_DECLARE_ID(kUnicodeToMathematica5CID,
|
||||
0x8a0dce80, 0xe2f2, 0x11d3, 0xb3, 0x2f, 0x0, 0x40, 0x05, 0xa7, 0xa7, 0xe4);
|
||||
|
||||
// Class ID for our UnicodeToMTExtra charset converter
|
||||
// {0cb0d9a0-f503-11d3-b32f-004005a7a7e4}
|
||||
NS_DECLARE_ID(kUnicodeToMTExtraCID,
|
||||
0x0cb0d9a0, 0xf503, 0x11d3, 0xb3, 0x2f, 0x0, 0x40, 0x05, 0xa7, 0xa7, 0xe4);
|
||||
|
||||
#endif /* nsUCvMathCID_h___ */
|
42
intl/uconv/ucvmath/nsUCvMathDll.h
Normal file
42
intl/uconv/ucvmath/nsUCvMathDll.h
Normal file
@ -0,0 +1,42 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUCvMathDll_h___
|
||||
#define nsUCvMathDll_h___
|
||||
|
||||
#include "prtypes.h"
|
||||
|
||||
extern PRInt32 g_InstanceCount;
|
||||
extern PRInt32 g_LockCount;
|
||||
|
||||
#endif /* nsUCvMathDll_h___ */
|
451
intl/uconv/ucvmath/nsUCvMathModule.cpp
Normal file
451
intl/uconv/ucvmath/nsUCvMathModule.cpp
Normal file
@ -0,0 +1,451 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#define NS_IMPL_IDS
|
||||
|
||||
#include "pratom.h"
|
||||
#include "nspr.h"
|
||||
#include "nsString.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsIFactory.h"
|
||||
#include "nsIRegistry.h"
|
||||
#include "nsIServiceManager.h"
|
||||
#include "nsIModule.h"
|
||||
#include "nsUCvMathCID.h"
|
||||
#include "nsUCvMathDll.h"
|
||||
|
||||
#include "nsUnicodeToTeXCMSYttf.h"
|
||||
#include "nsUnicodeToTeXCMSYt1.h"
|
||||
#include "nsUnicodeToTeXCMEXttf.h"
|
||||
#include "nsUnicodeToTeXCMEXt1.h"
|
||||
#include "nsUnicodeToMathematica1.h"
|
||||
#include "nsUnicodeToMathematica2.h"
|
||||
#include "nsUnicodeToMathematica3.h"
|
||||
#include "nsUnicodeToMathematica4.h"
|
||||
#include "nsUnicodeToMathematica5.h"
|
||||
#include "nsUnicodeToMTExtra.h"
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static NS_DEFINE_CID(kComponentManagerCID, NS_COMPONENTMANAGER_CID);
|
||||
|
||||
#define DECODER_NAME_BASE "Unicode Decoder-"
|
||||
#define ENCODER_NAME_BASE "Unicode Encoder-"
|
||||
|
||||
PRInt32 g_InstanceCount = 0;
|
||||
PRInt32 g_LockCount = 0;
|
||||
|
||||
typedef nsresult (* fpCreateInstance) (nsISupports **);
|
||||
|
||||
struct FactoryData
|
||||
{
|
||||
const nsCID * mCID;
|
||||
fpCreateInstance CreateInstance;
|
||||
char * mCharsetSrc;
|
||||
char * mCharsetDest;
|
||||
};
|
||||
|
||||
static FactoryData g_FactoryData[] =
|
||||
{
|
||||
/* TeX */
|
||||
{
|
||||
&kUnicodeToTeXCMSYttfCID,
|
||||
nsUnicodeToTeXCMSYttf::CreateInstance,
|
||||
"Unicode",
|
||||
"x-ttf-cmsy"
|
||||
},
|
||||
{
|
||||
&kUnicodeToTeXCMSYt1CID,
|
||||
nsUnicodeToTeXCMSYt1::CreateInstance,
|
||||
"Unicode",
|
||||
"x-t1-cmsy"
|
||||
},
|
||||
{
|
||||
&kUnicodeToTeXCMEXttfCID,
|
||||
nsUnicodeToTeXCMEXttf::CreateInstance,
|
||||
"Unicode",
|
||||
"x-ttf-cmex"
|
||||
},
|
||||
{
|
||||
&kUnicodeToTeXCMEXt1CID,
|
||||
nsUnicodeToTeXCMEXt1::CreateInstance,
|
||||
"Unicode",
|
||||
"x-t1-cmex"
|
||||
},
|
||||
/* Mathematica */
|
||||
{
|
||||
&kUnicodeToMathematica1CID,
|
||||
nsUnicodeToMathematica1::CreateInstance,
|
||||
"Unicode",
|
||||
"x-mathematica1"
|
||||
},
|
||||
{
|
||||
&kUnicodeToMathematica2CID,
|
||||
nsUnicodeToMathematica2::CreateInstance,
|
||||
"Unicode",
|
||||
"x-mathematica2"
|
||||
},
|
||||
{
|
||||
&kUnicodeToMathematica2CID,
|
||||
nsUnicodeToMathematica2::CreateInstance,
|
||||
"Unicode",
|
||||
"x-mathematica2"
|
||||
},
|
||||
{
|
||||
&kUnicodeToMathematica3CID,
|
||||
nsUnicodeToMathematica3::CreateInstance,
|
||||
"Unicode",
|
||||
"x-mathematica3"
|
||||
},
|
||||
{
|
||||
&kUnicodeToMathematica4CID,
|
||||
nsUnicodeToMathematica4::CreateInstance,
|
||||
"Unicode",
|
||||
"x-mathematica4"
|
||||
},
|
||||
{
|
||||
&kUnicodeToMathematica5CID,
|
||||
nsUnicodeToMathematica5::CreateInstance,
|
||||
"Unicode",
|
||||
"x-mathematica5"
|
||||
},
|
||||
/* MathType Extra */
|
||||
{
|
||||
&kUnicodeToMTExtraCID,
|
||||
nsUnicodeToMTExtra::CreateInstance,
|
||||
"Unicode",
|
||||
"x-mtextra"
|
||||
},
|
||||
};
|
||||
|
||||
#define ARRAY_SIZE(_array) \
|
||||
(sizeof(_array) / sizeof(_array[0]))
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Class nsConverterFactory [declaration]
|
||||
|
||||
/**
|
||||
* General factory class for converter objects.
|
||||
*
|
||||
* @created 24/Feb/1998
|
||||
* @author Catalin Rotaru [CATA]
|
||||
*/
|
||||
class nsConverterFactory : public nsIFactory
|
||||
{
|
||||
NS_DECL_ISUPPORTS
|
||||
|
||||
private:
|
||||
|
||||
FactoryData * mData;
|
||||
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsConverterFactory(FactoryData * aData);
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsConverterFactory();
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
// Interface nsIFactory [declaration]
|
||||
|
||||
NS_IMETHOD CreateInstance(nsISupports *aDelegate, const nsIID &aIID,
|
||||
void **aResult);
|
||||
NS_IMETHOD LockFactory(PRBool aLock);
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Class nsConverterModule [declaration]
|
||||
|
||||
class nsConverterModule : public nsIModule
|
||||
{
|
||||
NS_DECL_ISUPPORTS
|
||||
NS_DECL_NSIMODULE
|
||||
|
||||
private:
|
||||
|
||||
PRBool mInitialized;
|
||||
|
||||
void Shutdown();
|
||||
|
||||
public:
|
||||
|
||||
nsConverterModule();
|
||||
|
||||
virtual ~nsConverterModule();
|
||||
|
||||
nsresult Initialize();
|
||||
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Global functions and data [implementation]
|
||||
|
||||
static nsConverterModule * gModule = NULL;
|
||||
|
||||
extern "C" NS_EXPORT nsresult NSGetModule(nsIComponentManager * compMgr,
|
||||
nsIFile* location,
|
||||
nsIModule** return_cobj)
|
||||
{
|
||||
nsresult rv = NS_OK;
|
||||
|
||||
NS_ENSURE_ARG_POINTER(return_cobj);
|
||||
NS_ENSURE_FALSE(gModule, NS_ERROR_FAILURE);
|
||||
|
||||
// Create an initialize the module instance
|
||||
nsConverterModule * m = new nsConverterModule();
|
||||
if (!m) {
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
|
||||
// Increase refcnt and store away nsIModule interface to m in return_cobj
|
||||
rv = m->QueryInterface(NS_GET_IID(nsIModule), (void**)return_cobj);
|
||||
if (NS_FAILED(rv)) {
|
||||
delete m;
|
||||
m = nsnull;
|
||||
}
|
||||
gModule = m; // WARNING: Weak Reference
|
||||
return rv;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Class nsConverterFactory [implementation]
|
||||
|
||||
NS_IMPL_ISUPPORTS(nsConverterFactory, NS_GET_IID(nsIFactory));
|
||||
|
||||
nsConverterFactory::nsConverterFactory(FactoryData * aData)
|
||||
{
|
||||
mData = aData;
|
||||
|
||||
NS_INIT_REFCNT();
|
||||
PR_AtomicIncrement(&g_InstanceCount);
|
||||
}
|
||||
|
||||
nsConverterFactory::~nsConverterFactory()
|
||||
{
|
||||
PR_AtomicDecrement(&g_InstanceCount);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Interface nsIFactory [implementation]
|
||||
|
||||
NS_IMETHODIMP nsConverterFactory::CreateInstance(nsISupports *aDelegate,
|
||||
const nsIID &aIID,
|
||||
void **aResult)
|
||||
{
|
||||
if (aResult == NULL) return NS_ERROR_NULL_POINTER;
|
||||
if (aDelegate != NULL) return NS_ERROR_NO_AGGREGATION;
|
||||
|
||||
nsISupports * t;
|
||||
mData->CreateInstance(&t);
|
||||
if (t == NULL) return NS_ERROR_OUT_OF_MEMORY;
|
||||
|
||||
NS_ADDREF(t); // Stabilize
|
||||
|
||||
nsresult res = t->QueryInterface(aIID, aResult);
|
||||
|
||||
NS_RELEASE(t); // Destabilize and avoid leaks. Avoid calling delete <interface pointer>
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsConverterFactory::LockFactory(PRBool aLock)
|
||||
{
|
||||
if (aLock) PR_AtomicIncrement(&g_LockCount);
|
||||
else PR_AtomicDecrement(&g_LockCount);
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Class nsConverterModule [implementation]
|
||||
|
||||
NS_IMPL_ISUPPORTS(nsConverterModule, NS_GET_IID(nsIModule))
|
||||
|
||||
nsConverterModule::nsConverterModule()
|
||||
: mInitialized(PR_FALSE)
|
||||
{
|
||||
NS_INIT_ISUPPORTS();
|
||||
}
|
||||
|
||||
nsConverterModule::~nsConverterModule()
|
||||
{
|
||||
Shutdown();
|
||||
}
|
||||
|
||||
nsresult nsConverterModule::Initialize()
|
||||
{
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
void nsConverterModule::Shutdown()
|
||||
{
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------------
|
||||
// Interface nsIModule [implementation]
|
||||
|
||||
NS_IMETHODIMP nsConverterModule::GetClassObject(nsIComponentManager *aCompMgr,
|
||||
const nsCID& aClass,
|
||||
const nsIID& aIID,
|
||||
void ** r_classObj)
|
||||
{
|
||||
nsresult rv;
|
||||
|
||||
// Defensive programming: Initialize *r_classObj in case of error below
|
||||
if (!r_classObj) {
|
||||
return NS_ERROR_INVALID_POINTER;
|
||||
}
|
||||
*r_classObj = NULL;
|
||||
|
||||
if (!mInitialized) {
|
||||
rv = Initialize();
|
||||
if (NS_FAILED(rv)) {
|
||||
return rv;
|
||||
}
|
||||
mInitialized = PR_TRUE;
|
||||
}
|
||||
|
||||
FactoryData * data;
|
||||
nsConverterFactory * fact;
|
||||
|
||||
// XXX cache these factories
|
||||
for (PRUint32 i=0; i<ARRAY_SIZE(g_FactoryData); i++) {
|
||||
data = &(g_FactoryData[i]);
|
||||
if (aClass.Equals(*(data->mCID))) {
|
||||
fact = new nsConverterFactory(data);
|
||||
if (fact == NULL) {
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
}
|
||||
rv = fact->QueryInterface(aIID, (void **) r_classObj);
|
||||
if (NS_FAILED(rv)) delete fact;
|
||||
|
||||
return rv;
|
||||
}
|
||||
}
|
||||
|
||||
return NS_ERROR_FACTORY_NOT_REGISTERED;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsConverterModule::RegisterSelf(nsIComponentManager *aCompMgr,
|
||||
nsIFile* aPath,
|
||||
const char* registryLocation,
|
||||
const char* componentType)
|
||||
{
|
||||
nsresult res;
|
||||
PRUint32 i;
|
||||
nsIRegistry * registry = NULL;
|
||||
nsRegistryKey key;
|
||||
char buff[1024];
|
||||
|
||||
// get the registry
|
||||
res = nsServiceManager::GetService(NS_REGISTRY_PROGID,
|
||||
NS_GET_IID(nsIRegistry), (nsISupports**)®istry);
|
||||
if (NS_FAILED(res)) goto done;
|
||||
|
||||
// open the registry
|
||||
res = registry->OpenWellKnownRegistry(
|
||||
nsIRegistry::ApplicationComponentRegistry);
|
||||
if (NS_FAILED(res)) goto done;
|
||||
|
||||
char name[128];
|
||||
char progid[128];
|
||||
char * cid_string;
|
||||
for (i=0; i<ARRAY_SIZE(g_FactoryData); i++) {
|
||||
if(0==PL_strcmp(g_FactoryData[i].mCharsetSrc,"Unicode"))
|
||||
{
|
||||
PL_strcpy(name, ENCODER_NAME_BASE);
|
||||
PL_strcat(name, g_FactoryData[i].mCharsetDest);
|
||||
PL_strcpy(progid, NS_UNICODEENCODER_PROGID_BASE);
|
||||
PL_strcat(progid, g_FactoryData[i].mCharsetDest);
|
||||
} else {
|
||||
PL_strcpy(name, DECODER_NAME_BASE);
|
||||
PL_strcat(name, g_FactoryData[i].mCharsetSrc);
|
||||
PL_strcpy(progid, NS_UNICODEDECODER_PROGID_BASE);
|
||||
PL_strcat(progid, g_FactoryData[i].mCharsetSrc);
|
||||
}
|
||||
// register component
|
||||
res = aCompMgr->RegisterComponentSpec(*(g_FactoryData[i].mCID), name,
|
||||
progid, aPath, PR_TRUE, PR_TRUE);
|
||||
if(NS_FAILED(res) && (NS_ERROR_FACTORY_EXISTS != res)) goto done;
|
||||
|
||||
// register component info
|
||||
// XXX take these KONSTANTS out of here; refine this code
|
||||
cid_string = g_FactoryData[i].mCID->ToString();
|
||||
sprintf(buff, "%s/%s", "software/netscape/intl/uconv", cid_string);
|
||||
nsCRT::free(cid_string);
|
||||
res = registry -> AddSubtree(nsIRegistry::Common, buff, &key);
|
||||
if (NS_FAILED(res)) goto done;
|
||||
res = registry -> SetStringUTF8(key, "source", g_FactoryData[i].mCharsetSrc);
|
||||
if (NS_FAILED(res)) goto done;
|
||||
res = registry -> SetStringUTF8(key, "destination", g_FactoryData[i].mCharsetDest);
|
||||
if (NS_FAILED(res)) goto done;
|
||||
}
|
||||
|
||||
done:
|
||||
if (registry != NULL) {
|
||||
nsServiceManager::ReleaseService(NS_REGISTRY_PROGID, registry);
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsConverterModule::UnregisterSelf(nsIComponentManager *aCompMgr,
|
||||
nsIFile* aPath,
|
||||
const char* registryLocation)
|
||||
{
|
||||
// XXX also delete the stuff I added to the registry
|
||||
nsresult rv;
|
||||
|
||||
for (PRUint32 i=0; i<ARRAY_SIZE(g_FactoryData); i++) {
|
||||
rv = aCompMgr->UnregisterComponentSpec(*(g_FactoryData[i].mCID), aPath);
|
||||
}
|
||||
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsConverterModule::CanUnload(nsIComponentManager *aCompMgr,
|
||||
PRBool *okToUnload)
|
||||
{
|
||||
if (!okToUnload) {
|
||||
return NS_ERROR_INVALID_POINTER;
|
||||
}
|
||||
*okToUnload = (g_InstanceCount == 0 && g_LockCount == 0);
|
||||
return NS_OK;
|
||||
}
|
||||
|
720
intl/uconv/ucvmath/nsUCvMathSupport.cpp
Normal file
720
intl/uconv/ucvmath/nsUCvMathSupport.cpp
Normal file
@ -0,0 +1,720 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "pratom.h"
|
||||
#include "nsIComponentManager.h"
|
||||
#include "nsICharRepresentable.h"
|
||||
#include "nsUCvMathSupport.h"
|
||||
#include "nsUCvMathDll.h"
|
||||
|
||||
#define DEFAULT_BUFFER_CAPACITY 16
|
||||
|
||||
// XXX review the buffer growth limitation code
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsBasicDecoderSupport [implementation]
|
||||
|
||||
nsBasicDecoderSupport::nsBasicDecoderSupport()
|
||||
{
|
||||
NS_INIT_REFCNT();
|
||||
PR_AtomicIncrement(&g_InstanceCount);
|
||||
}
|
||||
|
||||
nsBasicDecoderSupport::~nsBasicDecoderSupport()
|
||||
{
|
||||
PR_AtomicDecrement(&g_InstanceCount);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Interface nsISupports [implementation]
|
||||
|
||||
NS_IMPL_ADDREF(nsBasicDecoderSupport);
|
||||
NS_IMPL_RELEASE(nsBasicDecoderSupport);
|
||||
|
||||
nsresult nsBasicDecoderSupport::QueryInterface(REFNSIID aIID,
|
||||
void** aInstancePtr)
|
||||
{
|
||||
if (NULL == aInstancePtr) {
|
||||
return NS_ERROR_NULL_POINTER;
|
||||
}
|
||||
|
||||
*aInstancePtr = NULL;
|
||||
|
||||
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
|
||||
|
||||
if (aIID.Equals(kIUnicodeDecoderIID)) {
|
||||
*aInstancePtr = (void*) ((nsIUnicodeDecoder*)this);
|
||||
NS_ADDREF_THIS();
|
||||
return NS_OK;
|
||||
}
|
||||
if (aIID.Equals(kISupportsIID)) {
|
||||
*aInstancePtr = (void*) ((nsISupports*)this);
|
||||
NS_ADDREF_THIS();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
return NS_NOINTERFACE;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Interface nsIUnicodeDecoder [implementation]
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsBufferDecoderSupport [implementation]
|
||||
|
||||
nsBufferDecoderSupport::nsBufferDecoderSupport()
|
||||
: nsBasicDecoderSupport()
|
||||
{
|
||||
mBufferCapacity = DEFAULT_BUFFER_CAPACITY;
|
||||
mBuffer = new char[mBufferCapacity];
|
||||
|
||||
Reset();
|
||||
}
|
||||
|
||||
nsBufferDecoderSupport::~nsBufferDecoderSupport()
|
||||
{
|
||||
delete [] mBuffer;
|
||||
}
|
||||
|
||||
void nsBufferDecoderSupport::FillBuffer(const char ** aSrc, PRInt32 aSrcLength)
|
||||
{
|
||||
PRInt32 bcr = PR_MIN(mBufferCapacity - mBufferLength, aSrcLength);
|
||||
memcpy(mBuffer + mBufferLength, *aSrc, bcr);
|
||||
mBufferLength += bcr;
|
||||
(*aSrc) += bcr;
|
||||
}
|
||||
|
||||
void nsBufferDecoderSupport::DoubleBuffer()
|
||||
{
|
||||
mBufferCapacity *= 2;
|
||||
char * newBuffer = new char [mBufferCapacity];
|
||||
if (mBufferLength > 0) memcpy(newBuffer, mBuffer, mBufferLength);
|
||||
delete [] mBuffer;
|
||||
mBuffer = newBuffer;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsBasicDecoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsBufferDecoderSupport::Convert(const char * aSrc,
|
||||
PRInt32 * aSrcLength,
|
||||
PRUnichar * aDest,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
// we do all operations using pointers internally
|
||||
const char * src = aSrc;
|
||||
const char * srcEnd = aSrc + *aSrcLength;
|
||||
PRUnichar * dest = aDest;
|
||||
PRUnichar * destEnd = aDest + *aDestLength;
|
||||
|
||||
PRInt32 bcr, bcw; // byte counts for read & write;
|
||||
nsresult res = NS_OK;
|
||||
|
||||
// do we have some residual data from the last conversion?
|
||||
if (mBufferLength > 0) if (dest == destEnd) {
|
||||
res = NS_OK_UDEC_MOREOUTPUT;
|
||||
} else for (;;) {
|
||||
// we need new data to add to the buffer
|
||||
if (src == srcEnd) {
|
||||
res = NS_OK_UDEC_MOREINPUT;
|
||||
break;
|
||||
}
|
||||
|
||||
// fill that buffer
|
||||
PRInt32 buffLen = mBufferLength; // initial buffer length
|
||||
FillBuffer(&src, srcEnd - src);
|
||||
|
||||
// convert that buffer
|
||||
bcr = mBufferLength;
|
||||
bcw = destEnd - dest;
|
||||
res = ConvertNoBuff(mBuffer, &bcr, dest, &bcw);
|
||||
dest += bcw;
|
||||
|
||||
if ((res == NS_OK_UDEC_MOREINPUT) && (bcw == 0)) {
|
||||
res = NS_ERROR_UNEXPECTED;
|
||||
break;
|
||||
} else {
|
||||
if (bcr < buffLen) {
|
||||
// we didn't convert that residual data - unfill the buffer
|
||||
src -= mBufferLength - buffLen;
|
||||
mBufferLength = buffLen;
|
||||
} else {
|
||||
// the buffer and some extra data was converted - unget the rest
|
||||
src -= mBufferLength - bcr;
|
||||
mBufferLength = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (res == NS_OK) {
|
||||
bcr = srcEnd - src;
|
||||
bcw = destEnd - dest;
|
||||
res = ConvertNoBuff(src, &bcr, dest, &bcw);
|
||||
src += bcr;
|
||||
dest += bcw;
|
||||
|
||||
// if we have partial input, store it in our internal buffer.
|
||||
if (res == NS_OK_UDEC_MOREINPUT) {
|
||||
bcr = srcEnd - src;
|
||||
// make sure buffer is large enough
|
||||
if (bcr > mBufferCapacity) {
|
||||
// somehow we got into an error state and the buffer is growing out of control
|
||||
res = NS_ERROR_UNEXPECTED;
|
||||
} else {
|
||||
FillBuffer(&src, bcr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
*aSrcLength -= srcEnd - src;
|
||||
*aDestLength -= destEnd - dest;
|
||||
return res;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsBufferDecoderSupport::Reset()
|
||||
{
|
||||
mBufferLength = 0;
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsTableDecoderSupport [implementation]
|
||||
|
||||
nsTableDecoderSupport::nsTableDecoderSupport(uShiftTable * aShiftTable,
|
||||
uMappingTable * aMappingTable)
|
||||
: nsBufferDecoderSupport()
|
||||
{
|
||||
mHelper = NULL;
|
||||
mShiftTable = aShiftTable;
|
||||
mMappingTable = aMappingTable;
|
||||
}
|
||||
|
||||
nsTableDecoderSupport::~nsTableDecoderSupport()
|
||||
{
|
||||
NS_IF_RELEASE(mHelper);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsBufferDecoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsTableDecoderSupport::ConvertNoBuff(const char * aSrc,
|
||||
PRInt32 * aSrcLength,
|
||||
PRUnichar * aDest,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
nsresult res;
|
||||
|
||||
if (mHelper == nsnull) {
|
||||
res = nsComponentManager::CreateInstance(kUnicodeDecodeHelperCID, NULL,
|
||||
kIUnicodeDecodeHelperIID, (void**) & mHelper);
|
||||
|
||||
if (NS_FAILED(res)) return NS_ERROR_UDEC_NOHELPER;
|
||||
}
|
||||
|
||||
res = mHelper->ConvertByTable(aSrc, aSrcLength, aDest, aDestLength,
|
||||
mShiftTable, mMappingTable);
|
||||
return res;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsMultiTableDecoderSupport [implementation]
|
||||
|
||||
nsMultiTableDecoderSupport::nsMultiTableDecoderSupport(
|
||||
PRInt32 aTableCount,
|
||||
uRange * aRangeArray,
|
||||
uShiftTable ** aShiftTable,
|
||||
uMappingTable ** aMappingTable)
|
||||
: nsBufferDecoderSupport()
|
||||
{
|
||||
mHelper = NULL;
|
||||
mTableCount = aTableCount;
|
||||
mRangeArray = aRangeArray;
|
||||
mShiftTable = aShiftTable;
|
||||
mMappingTable = aMappingTable;
|
||||
}
|
||||
|
||||
nsMultiTableDecoderSupport::~nsMultiTableDecoderSupport()
|
||||
{
|
||||
NS_IF_RELEASE(mHelper);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsBufferDecoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsMultiTableDecoderSupport::ConvertNoBuff(const char * aSrc,
|
||||
PRInt32 * aSrcLength,
|
||||
PRUnichar * aDest,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
nsresult res;
|
||||
|
||||
if (mHelper == nsnull) {
|
||||
res = nsComponentManager::CreateInstance(kUnicodeDecodeHelperCID, NULL,
|
||||
kIUnicodeDecodeHelperIID, (void**) &mHelper);
|
||||
|
||||
if (NS_FAILED(res)) return NS_ERROR_UDEC_NOHELPER;
|
||||
}
|
||||
|
||||
res = mHelper->ConvertByMultiTable(aSrc, aSrcLength, aDest, aDestLength,
|
||||
mTableCount, mRangeArray, mShiftTable, mMappingTable);
|
||||
return res;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsOneByteDecoderSupport [implementation]
|
||||
|
||||
nsOneByteDecoderSupport::nsOneByteDecoderSupport(
|
||||
uShiftTable * aShiftTable,
|
||||
uMappingTable * aMappingTable)
|
||||
: nsBasicDecoderSupport()
|
||||
{
|
||||
mHelper = NULL;
|
||||
mShiftTable = aShiftTable;
|
||||
mMappingTable = aMappingTable;
|
||||
}
|
||||
|
||||
nsOneByteDecoderSupport::~nsOneByteDecoderSupport()
|
||||
{
|
||||
NS_IF_RELEASE(mHelper);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsBasicDecoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsOneByteDecoderSupport::Convert(const char * aSrc,
|
||||
PRInt32 * aSrcLength,
|
||||
PRUnichar * aDest,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
nsresult res;
|
||||
|
||||
if (mHelper == nsnull) {
|
||||
res = nsComponentManager::CreateInstance(kUnicodeDecodeHelperCID, NULL,
|
||||
kIUnicodeDecodeHelperIID, (void**) &mHelper);
|
||||
if (NS_FAILED(res)) return NS_ERROR_UDEC_NOHELPER;
|
||||
|
||||
res = mHelper -> CreateFastTable(mShiftTable, mMappingTable, mFastTable,
|
||||
ONE_BYTE_TABLE_SIZE);
|
||||
if (NS_FAILED(res)) return res;
|
||||
}
|
||||
|
||||
res = mHelper->ConvertByFastTable(aSrc, aSrcLength, aDest, aDestLength,
|
||||
mFastTable, ONE_BYTE_TABLE_SIZE);
|
||||
return res;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsOneByteDecoderSupport::GetMaxLength(const char * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
// single byte to Unicode converter
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UDEC_EXACTLENGTH;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsOneByteDecoderSupport::Reset()
|
||||
{
|
||||
// nothing to reset, no internal state in this case
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsBasicEncoder [implementation]
|
||||
nsBasicEncoder::nsBasicEncoder()
|
||||
{
|
||||
NS_INIT_REFCNT();
|
||||
PR_AtomicIncrement(&g_InstanceCount);
|
||||
}
|
||||
|
||||
nsBasicEncoder::~nsBasicEncoder()
|
||||
{
|
||||
PR_AtomicDecrement(&g_InstanceCount);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Interface nsISupports [implementation]
|
||||
|
||||
NS_IMPL_ADDREF(nsBasicEncoder);
|
||||
NS_IMPL_RELEASE(nsBasicEncoder);
|
||||
|
||||
nsresult nsBasicEncoder::QueryInterface(REFNSIID aIID,
|
||||
void** aInstancePtr)
|
||||
{
|
||||
if (NULL == aInstancePtr) {
|
||||
return NS_ERROR_NULL_POINTER;
|
||||
}
|
||||
|
||||
*aInstancePtr = NULL;
|
||||
|
||||
static NS_DEFINE_IID(kISupportsIID, NS_ISUPPORTS_IID);
|
||||
|
||||
if (aIID.Equals(kIUnicodeEncoderIID)) {
|
||||
*aInstancePtr = (void*) ((nsIUnicodeEncoder*)this);
|
||||
NS_ADDREF_THIS();
|
||||
return NS_OK;
|
||||
}
|
||||
if (aIID.Equals(NS_GET_IID(nsICharRepresentable))) {
|
||||
*aInstancePtr = (void*) ((nsICharRepresentable*)this);
|
||||
NS_ADDREF_THIS();
|
||||
return NS_OK;
|
||||
}
|
||||
if (aIID.Equals(kISupportsIID)) {
|
||||
*aInstancePtr = (void*) ((nsISupports*)((nsIUnicodeEncoder*)this));
|
||||
NS_ADDREF_THIS();
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
return NS_NOINTERFACE;
|
||||
}
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsEncoderSupport [implementation]
|
||||
|
||||
nsEncoderSupport::nsEncoderSupport()
|
||||
{
|
||||
mBufferCapacity = DEFAULT_BUFFER_CAPACITY;
|
||||
mBuffer = new char[mBufferCapacity];
|
||||
|
||||
mErrBehavior = kOnError_Signal;
|
||||
mErrChar = 0;
|
||||
mErrEncoder = NULL;
|
||||
|
||||
Reset();
|
||||
}
|
||||
|
||||
nsEncoderSupport::~nsEncoderSupport()
|
||||
{
|
||||
delete [] mBuffer;
|
||||
NS_IF_RELEASE(mErrEncoder);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsEncoderSupport::ConvertNoBuff(const PRUnichar * aSrc,
|
||||
PRInt32 * aSrcLength,
|
||||
char * aDest,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
// we do all operations using pointers internally
|
||||
const PRUnichar * src = aSrc;
|
||||
const PRUnichar * srcEnd = aSrc + *aSrcLength;
|
||||
char * dest = aDest;
|
||||
char * destEnd = aDest + *aDestLength;
|
||||
|
||||
PRInt32 bcr, bcw; // byte counts for read & write;
|
||||
nsresult res;
|
||||
|
||||
for (;;) {
|
||||
bcr = srcEnd - src;
|
||||
bcw = destEnd - dest;
|
||||
res = ConvertNoBuffNoErr(src, &bcr, dest, &bcw);
|
||||
src += bcr;
|
||||
dest += bcw;
|
||||
|
||||
if (res == NS_ERROR_UENC_NOMAPPING) {
|
||||
if (mErrBehavior == kOnError_Replace) {
|
||||
const PRUnichar buff[] = {mErrChar};
|
||||
bcr = 1;
|
||||
bcw = destEnd - dest;
|
||||
src--; // back the input: maybe the guy won't consume consume anything.
|
||||
res = ConvertNoBuffNoErr(buff, &bcr, dest, &bcw);
|
||||
src += bcr;
|
||||
dest += bcw;
|
||||
if (res != NS_OK) break;
|
||||
} else if (mErrBehavior == kOnError_CallBack) {
|
||||
bcw = destEnd - dest;
|
||||
src--;
|
||||
res = mErrEncoder->Convert(*src, dest, &bcw);
|
||||
dest += bcw;
|
||||
// if enought output space then the last char was used
|
||||
if (res != NS_OK_UENC_MOREOUTPUT) src++;
|
||||
if (res != NS_OK) break;
|
||||
} else break;
|
||||
}
|
||||
else break;
|
||||
}
|
||||
|
||||
*aSrcLength -= srcEnd - src;
|
||||
*aDestLength -= destEnd - dest;
|
||||
return res;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsEncoderSupport::FinishNoBuff(char * aDest,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = 0;
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
nsresult nsEncoderSupport::FlushBuffer(char ** aDest, const char * aDestEnd)
|
||||
{
|
||||
PRInt32 bcr, bcw; // byte counts for read & write;
|
||||
nsresult res = NS_OK;
|
||||
char * dest = *aDest;
|
||||
|
||||
if (mBufferStart < mBufferEnd) {
|
||||
bcr = mBufferEnd - mBufferStart;
|
||||
bcw = aDestEnd - dest;
|
||||
if (bcw < bcr) bcr = bcw;
|
||||
memcpy(dest, mBufferStart, bcr);
|
||||
dest += bcr;
|
||||
mBufferStart += bcr;
|
||||
|
||||
if (mBufferStart < mBufferEnd) res = NS_OK_UENC_MOREOUTPUT;
|
||||
}
|
||||
|
||||
*aDest = dest;
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Interface nsIUnicodeEncoder [implementation]
|
||||
|
||||
NS_IMETHODIMP nsEncoderSupport::Convert(const PRUnichar * aSrc,
|
||||
PRInt32 * aSrcLength,
|
||||
char * aDest,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
// we do all operations using pointers internally
|
||||
const PRUnichar * src = aSrc;
|
||||
const PRUnichar * srcEnd = aSrc + *aSrcLength;
|
||||
char * dest = aDest;
|
||||
char * destEnd = aDest + *aDestLength;
|
||||
|
||||
PRInt32 bcr, bcw; // byte counts for read & write;
|
||||
nsresult res;
|
||||
|
||||
res = FlushBuffer(&dest, destEnd);
|
||||
if (res == NS_OK_UENC_MOREOUTPUT) goto final;
|
||||
|
||||
bcr = srcEnd - src;
|
||||
bcw = destEnd - dest;
|
||||
res = ConvertNoBuff(src, &bcr, dest, &bcw);
|
||||
src += bcr;
|
||||
dest += bcw;
|
||||
if ((res == NS_OK_UENC_MOREOUTPUT) && (dest < destEnd)) {
|
||||
// convert exactly one character into the internal buffer
|
||||
// at this point, there should be at least a char in the input
|
||||
for (;;) {
|
||||
bcr = 1;
|
||||
bcw = mBufferCapacity;
|
||||
res = ConvertNoBuff(src, &bcr, mBuffer, &bcw);
|
||||
|
||||
if (res == NS_OK_UENC_MOREOUTPUT) {
|
||||
delete [] mBuffer;
|
||||
mBufferCapacity *= 2;
|
||||
mBuffer = new char [mBufferCapacity];
|
||||
} else {
|
||||
src += bcr;
|
||||
mBufferStart = mBufferEnd = mBuffer;
|
||||
mBufferEnd += bcw;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
res = FlushBuffer(&dest, destEnd);
|
||||
}
|
||||
|
||||
final:
|
||||
*aSrcLength -= srcEnd - src;
|
||||
*aDestLength -= destEnd - dest;
|
||||
return res;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsEncoderSupport::Finish(char * aDest, PRInt32 * aDestLength)
|
||||
{
|
||||
// we do all operations using pointers internally
|
||||
char * dest = aDest;
|
||||
char * destEnd = aDest + *aDestLength;
|
||||
|
||||
PRInt32 bcw; // byte count for write;
|
||||
nsresult res;
|
||||
|
||||
res = FlushBuffer(&dest, destEnd);
|
||||
if (res == NS_OK_UENC_MOREOUTPUT) goto final;
|
||||
|
||||
// do the finish into the internal buffer.
|
||||
for (;;) {
|
||||
bcw = mBufferCapacity;
|
||||
res = FinishNoBuff(mBuffer, &bcw);
|
||||
|
||||
if (res == NS_OK_UENC_MOREOUTPUT) {
|
||||
delete [] mBuffer;
|
||||
mBufferCapacity *= 2;
|
||||
mBuffer = new char [mBufferCapacity];
|
||||
} else {
|
||||
mBufferStart = mBufferEnd = mBuffer;
|
||||
mBufferEnd += bcw;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
res = FlushBuffer(&dest, destEnd);
|
||||
|
||||
final:
|
||||
*aDestLength -= destEnd - dest;
|
||||
return res;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsEncoderSupport::Reset()
|
||||
{
|
||||
mBufferStart = mBufferEnd = mBuffer;
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsEncoderSupport::SetOutputErrorBehavior(
|
||||
PRInt32 aBehavior,
|
||||
nsIUnicharEncoder * aEncoder,
|
||||
PRUnichar aChar)
|
||||
{
|
||||
if ((aBehavior == kOnError_CallBack) && (aEncoder == NULL))
|
||||
return NS_ERROR_NULL_POINTER;
|
||||
|
||||
NS_IF_RELEASE(aEncoder);
|
||||
mErrEncoder = aEncoder;
|
||||
NS_IF_ADDREF(aEncoder);
|
||||
|
||||
mErrBehavior = aBehavior;
|
||||
mErrChar = aChar;
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsTableEncoderSupport [implementation]
|
||||
|
||||
nsTableEncoderSupport::nsTableEncoderSupport(uShiftTable * aShiftTable,
|
||||
uMappingTable * aMappingTable)
|
||||
: nsEncoderSupport()
|
||||
{
|
||||
mHelper = NULL;
|
||||
mShiftTable = aShiftTable;
|
||||
mMappingTable = aMappingTable;
|
||||
}
|
||||
|
||||
nsTableEncoderSupport::~nsTableEncoderSupport()
|
||||
{
|
||||
NS_IF_RELEASE(mHelper);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsTableEncoderSupport::FillInfo(PRUint32 *aInfo)
|
||||
{
|
||||
nsresult res;
|
||||
|
||||
if (mHelper == nsnull) {
|
||||
res = nsComponentManager::CreateInstance(kUnicodeEncodeHelperCID, NULL,
|
||||
kIUnicodeEncodeHelperIID, (void**) & mHelper);
|
||||
|
||||
if (NS_FAILED(res)) return NS_ERROR_UENC_NOHELPER;
|
||||
}
|
||||
|
||||
res = mHelper->FillInfo(aInfo, mMappingTable);
|
||||
return res;
|
||||
}
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsTableEncoderSupport::ConvertNoBuffNoErr(
|
||||
const PRUnichar * aSrc,
|
||||
PRInt32 * aSrcLength,
|
||||
char * aDest,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
nsresult res;
|
||||
|
||||
if (mHelper == nsnull) {
|
||||
res = nsComponentManager::CreateInstance(kUnicodeEncodeHelperCID, NULL,
|
||||
kIUnicodeEncodeHelperIID, (void**) & mHelper);
|
||||
|
||||
if (NS_FAILED(res)) return NS_ERROR_UENC_NOHELPER;
|
||||
}
|
||||
|
||||
res = mHelper->ConvertByTable(aSrc, aSrcLength, aDest, aDestLength,
|
||||
mShiftTable, mMappingTable);
|
||||
return res;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsMultiTableEncoderSupport [implementation]
|
||||
|
||||
nsMultiTableEncoderSupport::nsMultiTableEncoderSupport(
|
||||
PRInt32 aTableCount,
|
||||
uShiftTable ** aShiftTable,
|
||||
uMappingTable ** aMappingTable)
|
||||
: nsEncoderSupport()
|
||||
{
|
||||
mHelper = NULL;
|
||||
mTableCount = aTableCount;
|
||||
mShiftTable = aShiftTable;
|
||||
mMappingTable = aMappingTable;
|
||||
}
|
||||
|
||||
nsMultiTableEncoderSupport::~nsMultiTableEncoderSupport()
|
||||
{
|
||||
NS_IF_RELEASE(mHelper);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsMultiTableEncoderSupport::FillInfo(PRUint32 *aInfo)
|
||||
{
|
||||
nsresult res;
|
||||
|
||||
if (mHelper == nsnull) {
|
||||
res = nsComponentManager::CreateInstance(kUnicodeEncodeHelperCID, NULL,
|
||||
kIUnicodeEncodeHelperIID, (void**) & mHelper);
|
||||
|
||||
if (NS_FAILED(res)) return NS_ERROR_UENC_NOHELPER;
|
||||
}
|
||||
|
||||
res = mHelper->FillInfo(aInfo,mTableCount, mMappingTable);
|
||||
return res;
|
||||
}
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsMultiTableEncoderSupport::ConvertNoBuffNoErr(
|
||||
const PRUnichar * aSrc,
|
||||
PRInt32 * aSrcLength,
|
||||
char * aDest,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
nsresult res;
|
||||
|
||||
if (mHelper == nsnull) {
|
||||
res = nsComponentManager::CreateInstance(kUnicodeEncodeHelperCID, NULL,
|
||||
kIUnicodeEncodeHelperIID, (void**) & mHelper);
|
||||
|
||||
if (NS_FAILED(res)) return NS_ERROR_UENC_NOHELPER;
|
||||
}
|
||||
|
||||
res = mHelper->ConvertByMultiTable(aSrc, aSrcLength, aDest, aDestLength,
|
||||
mTableCount, mShiftTable, mMappingTable);
|
||||
return res;
|
||||
}
|
433
intl/uconv/ucvmath/nsUCvMathSupport.h
Normal file
433
intl/uconv/ucvmath/nsUCvMathSupport.h
Normal file
@ -0,0 +1,433 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUCvMathSupport_h___
|
||||
#define nsUCvMathSupport_h___
|
||||
|
||||
#include "nsIUnicodeEncoder.h"
|
||||
#include "nsIUnicodeDecoder.h"
|
||||
#include "nsIUnicodeEncodeHelper.h"
|
||||
#include "nsIUnicodeDecodeHelper.h"
|
||||
#include "nsICharRepresentable.h"
|
||||
|
||||
#define ONE_BYTE_TABLE_SIZE 256
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsBasicDecoderSupport [declaration]
|
||||
|
||||
/**
|
||||
* Support class for the Unicode decoders.
|
||||
*
|
||||
* The class source files for this class are in /ucvlatin/nsUCvMathSupport.
|
||||
* However, because these objects requires non-xpcom subclassing, local copies
|
||||
* will be made into the other directories using them. Just don't forget to
|
||||
* keep in sync with the master copy!
|
||||
*
|
||||
* This class implements:
|
||||
* - nsISupports
|
||||
* - nsIUnicodeDecoder
|
||||
*
|
||||
* @created 19/Apr/1999
|
||||
* @author Catalin Rotaru [CATA]
|
||||
*/
|
||||
class nsBasicDecoderSupport : public nsIUnicodeDecoder
|
||||
{
|
||||
NS_DECL_ISUPPORTS
|
||||
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsBasicDecoderSupport();
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsBasicDecoderSupport();
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Interface nsIUnicodeDecoder [declaration]
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsBufferDecoderSupport [declaration]
|
||||
|
||||
/**
|
||||
* Support class for the Unicode decoders.
|
||||
*
|
||||
* This class implements:
|
||||
* - the buffer management
|
||||
*
|
||||
* @created 15/Mar/1999
|
||||
* @author Catalin Rotaru [CATA]
|
||||
*/
|
||||
class nsBufferDecoderSupport : public nsBasicDecoderSupport
|
||||
{
|
||||
protected:
|
||||
|
||||
/**
|
||||
* Internal buffer for partial conversions.
|
||||
*/
|
||||
char * mBuffer;
|
||||
PRInt32 mBufferCapacity;
|
||||
PRInt32 mBufferLength;
|
||||
|
||||
/**
|
||||
* Convert method but *without* the buffer management stuff.
|
||||
*/
|
||||
NS_IMETHOD ConvertNoBuff(const char * aSrc, PRInt32 * aSrcLength,
|
||||
PRUnichar * aDest, PRInt32 * aDestLength) = 0;
|
||||
|
||||
void FillBuffer(const char ** aSrc, PRInt32 aSrcLength);
|
||||
void DoubleBuffer();
|
||||
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsBufferDecoderSupport();
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsBufferDecoderSupport();
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Interface nsIUnicodeDecoder [declaration]
|
||||
|
||||
NS_IMETHOD Convert(const char * aSrc, PRInt32 * aSrcLength,
|
||||
PRUnichar * aDest, PRInt32 * aDestLength);
|
||||
NS_IMETHOD Reset();
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsTableDecoderSupport [declaration]
|
||||
|
||||
/**
|
||||
* Support class for a single-table-driven Unicode decoder.
|
||||
*
|
||||
* @created 15/Mar/1999
|
||||
* @author Catalin Rotaru [CATA]
|
||||
*/
|
||||
class nsTableDecoderSupport : public nsBufferDecoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsTableDecoderSupport(uShiftTable * aShiftTable,
|
||||
uMappingTable * aMappingTable);
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsTableDecoderSupport();
|
||||
|
||||
protected:
|
||||
|
||||
nsIUnicodeDecodeHelper * mHelper; // decoder helper object
|
||||
uShiftTable * mShiftTable;
|
||||
uMappingTable * mMappingTable;
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsBufferDecoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD ConvertNoBuff(const char * aSrc, PRInt32 * aSrcLength,
|
||||
PRUnichar * aDest, PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsMultiTableDecoderSupport [declaration]
|
||||
|
||||
/**
|
||||
* Support class for a multi-table-driven Unicode decoder.
|
||||
*
|
||||
* @created 24/Mar/1999
|
||||
* @author Catalin Rotaru [CATA]
|
||||
*/
|
||||
class nsMultiTableDecoderSupport : public nsBufferDecoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsMultiTableDecoderSupport(PRInt32 aTableCount, uRange * aRangeArray,
|
||||
uShiftTable ** aShiftTable, uMappingTable ** aMappingTable);
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsMultiTableDecoderSupport();
|
||||
|
||||
protected:
|
||||
|
||||
nsIUnicodeDecodeHelper * mHelper; // decoder helper object
|
||||
PRInt32 mTableCount;
|
||||
uRange * mRangeArray;
|
||||
uShiftTable ** mShiftTable;
|
||||
uMappingTable ** mMappingTable;
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsBufferDecoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD ConvertNoBuff(const char * aSrc, PRInt32 * aSrcLength,
|
||||
PRUnichar * aDest, PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsBufferDecoderSupport [declaration]
|
||||
|
||||
/**
|
||||
* Support class for a single-byte Unicode decoder.
|
||||
*
|
||||
* @created 19/Apr/1999
|
||||
* @author Catalin Rotaru [CATA]
|
||||
*/
|
||||
class nsOneByteDecoderSupport : public nsBasicDecoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsOneByteDecoderSupport(uShiftTable * aShiftTable,
|
||||
uMappingTable * aMappingTable);
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsOneByteDecoderSupport();
|
||||
|
||||
protected:
|
||||
|
||||
nsIUnicodeDecodeHelper * mHelper; // decoder helper object
|
||||
uShiftTable * mShiftTable;
|
||||
uMappingTable * mMappingTable;
|
||||
PRUnichar mFastTable[ONE_BYTE_TABLE_SIZE];
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsBasicDecoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD Convert(const char * aSrc, PRInt32 * aSrcLength,
|
||||
PRUnichar * aDest, PRInt32 * aDestLength);
|
||||
NS_IMETHOD GetMaxLength(const char * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
NS_IMETHOD Reset();
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsBasicEncoder [declaration]
|
||||
|
||||
class nsBasicEncoder : public nsIUnicodeEncoder, public nsICharRepresentable
|
||||
{
|
||||
NS_DECL_ISUPPORTS
|
||||
|
||||
public:
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsBasicEncoder();
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsBasicEncoder();
|
||||
|
||||
};
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsEncoderSupport [declaration]
|
||||
|
||||
/**
|
||||
* Support class for the Unicode encoders.
|
||||
*
|
||||
* This class implements:
|
||||
* - nsISupports
|
||||
* - the buffer management
|
||||
* - error handling procedure(s)
|
||||
*
|
||||
* @created 17/Feb/1999
|
||||
* @author Catalin Rotaru [CATA]
|
||||
*/
|
||||
class nsEncoderSupport : public nsBasicEncoder
|
||||
{
|
||||
|
||||
protected:
|
||||
|
||||
/**
|
||||
* Internal buffer for partial conversions.
|
||||
*/
|
||||
char * mBuffer;
|
||||
PRInt32 mBufferCapacity;
|
||||
char * mBufferStart;
|
||||
char * mBufferEnd;
|
||||
|
||||
/**
|
||||
* Error handling stuff
|
||||
*/
|
||||
PRInt32 mErrBehavior;
|
||||
nsIUnicharEncoder * mErrEncoder;
|
||||
PRUnichar mErrChar;
|
||||
|
||||
/**
|
||||
* Convert method but *without* the buffer management stuff and *with*
|
||||
* error handling stuff.
|
||||
*/
|
||||
NS_IMETHOD ConvertNoBuff(const PRUnichar * aSrc, PRInt32 * aSrcLength,
|
||||
char * aDest, PRInt32 * aDestLength);
|
||||
|
||||
/**
|
||||
* Convert method but *without* the buffer management stuff and *without*
|
||||
* error handling stuff.
|
||||
*/
|
||||
NS_IMETHOD ConvertNoBuffNoErr(const PRUnichar * aSrc, PRInt32 * aSrcLength,
|
||||
char * aDest, PRInt32 * aDestLength) = 0;
|
||||
|
||||
/**
|
||||
* Finish method but *without* the buffer management stuff.
|
||||
*/
|
||||
NS_IMETHOD FinishNoBuff(char * aDest, PRInt32 * aDestLength);
|
||||
|
||||
/**
|
||||
* Copy as much as possible from the internal buffer to the destination.
|
||||
*/
|
||||
nsresult FlushBuffer(char ** aDest, const char * aDestEnd);
|
||||
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsEncoderSupport();
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsEncoderSupport();
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Interface nsIUnicodeEncoder [declaration]
|
||||
|
||||
NS_IMETHOD Convert(const PRUnichar * aSrc, PRInt32 * aSrcLength,
|
||||
char * aDest, PRInt32 * aDestLength);
|
||||
NS_IMETHOD Finish(char * aDest, PRInt32 * aDestLength);
|
||||
NS_IMETHOD Reset();
|
||||
NS_IMETHOD SetOutputErrorBehavior(PRInt32 aBehavior,
|
||||
nsIUnicharEncoder * aEncoder, PRUnichar aChar);
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Interface nsICharRepresentable [declaration]
|
||||
NS_IMETHOD FillInfo(PRUint32 *aInfo) = 0;
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsTableEncoderSupport [declaration]
|
||||
|
||||
/**
|
||||
* Support class for a single-table-driven Unicode encoder.
|
||||
*
|
||||
* @created 17/Feb/1999
|
||||
* @author Catalin Rotaru [CATA]
|
||||
*/
|
||||
class nsTableEncoderSupport : public nsEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsTableEncoderSupport(uShiftTable * aShiftTable,
|
||||
uMappingTable * aMappingTable);
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsTableEncoderSupport();
|
||||
NS_IMETHOD FillInfo( PRUint32 *aInfo);
|
||||
|
||||
protected:
|
||||
|
||||
nsIUnicodeEncodeHelper * mHelper; // encoder helper object
|
||||
uShiftTable * mShiftTable;
|
||||
uMappingTable * mMappingTable;
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD ConvertNoBuffNoErr(const PRUnichar * aSrc, PRInt32 * aSrcLength,
|
||||
char * aDest, PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsMultiTableEncoderSupport [declaration]
|
||||
|
||||
/**
|
||||
* Support class for a multi-table-driven Unicode encoder.
|
||||
*
|
||||
* @created 11/Mar/1999
|
||||
* @author Catalin Rotaru [CATA]
|
||||
*/
|
||||
class nsMultiTableEncoderSupport : public nsEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsMultiTableEncoderSupport(PRInt32 aTableCount, uShiftTable ** aShiftTable,
|
||||
uMappingTable ** aMappingTable);
|
||||
|
||||
/**
|
||||
* Class destructor.
|
||||
*/
|
||||
virtual ~nsMultiTableEncoderSupport();
|
||||
NS_IMETHOD FillInfo( PRUint32 *aInfo);
|
||||
|
||||
protected:
|
||||
|
||||
nsIUnicodeEncodeHelper * mHelper; // encoder helper object
|
||||
PRInt32 mTableCount;
|
||||
uShiftTable ** mShiftTable;
|
||||
uMappingTable ** mMappingTable;
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD ConvertNoBuffNoErr(const PRUnichar * aSrc, PRInt32 * aSrcLength,
|
||||
char * aDest, PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUCvMathSupport_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToMTExtra.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToMTExtra.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToMTExtra.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "mtextra.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMTExtra [implementation]
|
||||
|
||||
nsUnicodeToMTExtra::nsUnicodeToMTExtra()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToMTExtra::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToMTExtra();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToMTExtra::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToMTExtra.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToMTExtra.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToMTExtra_h___
|
||||
#define nsUnicodeToMTExtra_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMTExtra [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to MathType Extra.
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToMTExtra : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToMTExtra();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToMTExtra_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToMathematica1.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToMathematica1.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToMathematica1.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "mathematica1.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica1 [implementation]
|
||||
|
||||
nsUnicodeToMathematica1::nsUnicodeToMathematica1()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToMathematica1::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToMathematica1();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToMathematica1::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToMathematica1.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToMathematica1.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToMathematica1_h___
|
||||
#define nsUnicodeToMathematica1_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica1 [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to Math1.
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToMathematica1 : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToMathematica1();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToMathematica1_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToMathematica2.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToMathematica2.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToMathematica2.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "mathematica2.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica2 [implementation]
|
||||
|
||||
nsUnicodeToMathematica2::nsUnicodeToMathematica2()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToMathematica2::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToMathematica2();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToMathematica2::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToMathematica2.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToMathematica2.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToMathematica2_h___
|
||||
#define nsUnicodeToMathematica2_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica2 [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to Math1.
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToMathematica2 : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToMathematica2();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToMathematica2_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToMathematica3.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToMathematica3.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToMathematica3.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "mathematica3.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica3 [implementation]
|
||||
|
||||
nsUnicodeToMathematica3::nsUnicodeToMathematica3()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToMathematica3::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToMathematica3();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToMathematica3::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToMathematica3.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToMathematica3.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToMathematica3_h___
|
||||
#define nsUnicodeToMathematica3_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica3 [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to Math1.
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToMathematica3 : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToMathematica3();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToMathematica3_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToMathematica4.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToMathematica4.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToMathematica4.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "mathematica4.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica4 [implementation]
|
||||
|
||||
nsUnicodeToMathematica4::nsUnicodeToMathematica4()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToMathematica4::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToMathematica4();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToMathematica4::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToMathematica4.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToMathematica4.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToMathematica4_h___
|
||||
#define nsUnicodeToMathematica4_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica4 [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to Math1.
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToMathematica4 : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToMathematica4();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToMathematica4_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToMathematica5.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToMathematica5.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToMathematica5.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "mathematica5.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica5 [implementation]
|
||||
|
||||
nsUnicodeToMathematica5::nsUnicodeToMathematica5()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToMathematica5::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToMathematica5();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToMathematica5::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToMathematica5.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToMathematica5.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToMathematica5_h___
|
||||
#define nsUnicodeToMathematica5_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToMathematica5 [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to Math1.
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToMathematica5 : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToMathematica5();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToMathematica5_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToTeXCMEXt1.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToTeXCMEXt1.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToTeXCMEXt1.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "texcmex-t1.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToTeXCMEXt1 [implementation]
|
||||
|
||||
nsUnicodeToTeXCMEXt1::nsUnicodeToTeXCMEXt1()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToTeXCMEXt1::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToTeXCMEXt1();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToTeXCMEXt1::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToTeXCMEXt1.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToTeXCMEXt1.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToTeXCMEXt1_h___
|
||||
#define nsUnicodeToTeXCMEXt1_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToTeXCMEXt1 [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to TeXCMEXt1 (TeX's Computer Modern Extension).
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToTeXCMEXt1 : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToTeXCMEXt1();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToTeXCMEXt1_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToTeXCMEXttf.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToTeXCMEXttf.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToTeXCMEXttf.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "texcmex-ttf.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToTeXCMEXttf [implementation]
|
||||
|
||||
nsUnicodeToTeXCMEXttf::nsUnicodeToTeXCMEXttf()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToTeXCMEXttf::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToTeXCMEXttf();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToTeXCMEXttf::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToTeXCMEXttf.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToTeXCMEXttf.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToTeXCMEXttf_h___
|
||||
#define nsUnicodeToTeXCMEXttf_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToTeXCMEXttf [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to TeXCMEXttf (TeX's Computer Modern Extension).
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToTeXCMEXttf : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToTeXCMEXttf();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToTeXCMEXttf_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToTeXCMSYt1.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToTeXCMSYt1.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToTeXCMSYt1.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "texcmsy-t1.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToTeXCMSYt1 [implementation]
|
||||
|
||||
nsUnicodeToTeXCMSYt1::nsUnicodeToTeXCMSYt1()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToTeXCMSYt1::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToTeXCMSYt1();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToTeXCMSYt1::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToTeXCMSYt1.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToTeXCMSYt1.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToTeXCMSYt1_h___
|
||||
#define nsUnicodeToTeXCMSYt1_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToTeXCMSYt1 [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to TeXCMSYt1 (TeX's Computer Modern Symbol).
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToTeXCMSYt1 : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToTeXCMSYt1();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToTeXCMSYt1_h___ */
|
72
intl/uconv/ucvmath/nsUnicodeToTeXCMSYttf.cpp
Normal file
72
intl/uconv/ucvmath/nsUnicodeToTeXCMSYttf.cpp
Normal file
@ -0,0 +1,72 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#include "nsUnicodeToTeXCMSYttf.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Global functions and data [declaration]
|
||||
|
||||
static PRUint16 g_ufMappingTable[] = {
|
||||
#include "texcmsy-ttf.uf"
|
||||
};
|
||||
|
||||
static PRInt16 g_ufShiftTable[] = {
|
||||
0, u1ByteCharset ,
|
||||
ShiftCell(0,0,0,0,0,0,0,0)
|
||||
};
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToTeXCMSYttf [implementation]
|
||||
|
||||
nsUnicodeToTeXCMSYttf::nsUnicodeToTeXCMSYttf()
|
||||
: nsTableEncoderSupport((uShiftTable*) &g_ufShiftTable,
|
||||
(uMappingTable*) &g_ufMappingTable)
|
||||
{
|
||||
}
|
||||
|
||||
nsresult nsUnicodeToTeXCMSYttf::CreateInstance(nsISupports ** aResult)
|
||||
{
|
||||
*aResult = (nsIUnicodeEncoder*) new nsUnicodeToTeXCMSYttf();
|
||||
return (*aResult == NULL)? NS_ERROR_OUT_OF_MEMORY : NS_OK;
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Subclassing of nsTableEncoderSupport class [implementation]
|
||||
|
||||
NS_IMETHODIMP nsUnicodeToTeXCMSYttf::GetMaxLength(const PRUnichar * aSrc,
|
||||
PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength)
|
||||
{
|
||||
*aDestLength = aSrcLength;
|
||||
return NS_OK_UENC_EXACTLENGTH;
|
||||
}
|
69
intl/uconv/ucvmath/nsUnicodeToTeXCMSYttf.h
Normal file
69
intl/uconv/ucvmath/nsUnicodeToTeXCMSYttf.h
Normal file
@ -0,0 +1,69 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
|
||||
#ifndef nsUnicodeToTeXCMSYttf_h___
|
||||
#define nsUnicodeToTeXCMSYttf_h___
|
||||
|
||||
#include "nsUCvMathSupport.h"
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// Class nsUnicodeToTeXCMSYttf [declaration]
|
||||
|
||||
/**
|
||||
* A character set converter from Unicode to TeXCMSYttf (TeX's Computer Modern Symbol).
|
||||
*
|
||||
*/
|
||||
class nsUnicodeToTeXCMSYttf : public nsTableEncoderSupport
|
||||
{
|
||||
public:
|
||||
|
||||
/**
|
||||
* Class constructor.
|
||||
*/
|
||||
nsUnicodeToTeXCMSYttf();
|
||||
|
||||
/**
|
||||
* Static class constructor.
|
||||
*/
|
||||
static nsresult CreateInstance(nsISupports **aResult);
|
||||
|
||||
protected:
|
||||
|
||||
//--------------------------------------------------------------------
|
||||
// Subclassing of nsEncoderSupport class [declaration]
|
||||
|
||||
NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
|
||||
PRInt32 * aDestLength);
|
||||
};
|
||||
|
||||
#endif /* nsUnicodeToTeXCMSYttf_h___ */
|
173
intl/uconv/ucvmath/texcmex-t1.uf
Normal file
173
intl/uconv/ucvmath/texcmex-t1.uf
Normal file
@ -0,0 +1,173 @@
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 0
|
||||
srcBegin = E021
|
||||
srcEnd = E02B
|
||||
destBegin = 0021
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 0
|
||||
srcBegin = E030
|
||||
srcEnd = E045
|
||||
destBegin = 0030
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 0
|
||||
srcBegin = E04C
|
||||
srcEnd = E053
|
||||
destBegin = 0058
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 0
|
||||
srcBegin = E054
|
||||
srcEnd = E071
|
||||
destBegin = 0061
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 0
|
||||
srcBegin = E072
|
||||
srcEnd = E07F
|
||||
destBegin = 0000
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 0
|
||||
srcBegin = E089
|
||||
srcEnd = E099
|
||||
destBegin = 0010
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 1
|
||||
srcBegin = 220F
|
||||
srcEnd = 2211
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
0051 0060 0050
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 1
|
||||
srcBegin = 2227
|
||||
srcEnd = 222E
|
||||
mappingOffset = 0003
|
||||
Mapping =
|
||||
0056 0057 FFFD FFFD 0052 FFFD FFFD 0048
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 2
|
||||
srcBegin = 2249
|
||||
destBegin = 004C
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 1
|
||||
srcBegin = 228E
|
||||
srcEnd = 2299
|
||||
mappingOffset = 000B
|
||||
Mapping =
|
||||
0055 FFFD FFFD FFFD FFFD FFFD 0046 FFFD
|
||||
FFFD 004E FFFD 004A
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 1
|
||||
srcBegin = 22C2
|
||||
srcEnd = 22C3
|
||||
mappingOffset = 0017
|
||||
Mapping =
|
||||
0054 0053
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 1
|
||||
srcBegin = E02C
|
||||
srcEnd = E02F
|
||||
mappingOffset = 0019
|
||||
Mapping =
|
||||
002E 002F 000E 000F
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = E046
|
||||
srcEnd = E04B
|
||||
mappingOffset = 001D
|
||||
Mapping =
|
||||
0047 0049 004B FFFD 004D 004F
|
||||
End of Item 000C
|
||||
|
||||
Begin of Item 000D
|
||||
Format 1
|
||||
srcBegin = E080
|
||||
srcEnd = E081
|
||||
mappingOffset = 0023
|
||||
Mapping =
|
||||
002C 002D
|
||||
End of Item 000D
|
||||
|
||||
Begin of Item 000E
|
||||
Format 2
|
||||
srcBegin = E09A
|
||||
destBegin = 007F
|
||||
End of Item 000E
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x000F,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x0008,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x0035,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0006 */
|
||||
/* Total of Format 1 : 0x0007 */
|
||||
/* Total of Format 2 : 0x0002 */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x0000, 0x1100, 0x1112, 0x0211,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0008 Start of MapCell Array */
|
||||
/* 0000 */ 0xE021, 0xE02B, 0x0021,
|
||||
/* 0001 */ 0xE030, 0xE045, 0x0030,
|
||||
/* 0002 */ 0xE04C, 0xE053, 0x0058,
|
||||
/* 0003 */ 0xE054, 0xE071, 0x0061,
|
||||
/* 0004 */ 0xE072, 0xE07F, 0x0000,
|
||||
/* 0005 */ 0xE089, 0xE099, 0x0010,
|
||||
/* 0006 */ 0x220F, 0x2211, 0x0000,
|
||||
/* 0007 */ 0x2227, 0x222E, 0x0003,
|
||||
/* 0008 */ 0x2249, 0x0000, 0x004C,
|
||||
/* 0009 */ 0x228E, 0x2299, 0x000B,
|
||||
/* 000A */ 0x22C2, 0x22C3, 0x0017,
|
||||
/* 000B */ 0xE02C, 0xE02F, 0x0019,
|
||||
/* 000C */ 0xE046, 0xE04B, 0x001D,
|
||||
/* 000D */ 0xE080, 0xE081, 0x0023,
|
||||
/* 000E */ 0xE09A, 0x0000, 0x007F,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0035 Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x0051, 0x0060, 0x0050, 0x0056, 0x0057, 0xFFFD, 0xFFFD, 0x0052,
|
||||
/* 0008 */ 0xFFFD, 0xFFFD, 0x0048, 0x0055, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0010 */ 0xFFFD, 0x0046, 0xFFFD, 0xFFFD, 0x004E, 0xFFFD, 0x004A, 0x0054,
|
||||
/* 0018 */ 0x0053, 0x002E, 0x002F, 0x000E, 0x000F, 0x0047, 0x0049, 0x004B,
|
||||
/* 0020 */ 0xFFFD, 0x004D, 0x004F, 0x002C, 0x002D,
|
||||
/* End of table Total Length = 0x005A * 2 */
|
184
intl/uconv/ucvmath/texcmex-ttf.uf
Normal file
184
intl/uconv/ucvmath/texcmex-ttf.uf
Normal file
@ -0,0 +1,184 @@
|
||||
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape 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/NPL/
|
||||
*
|
||||
* 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 Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Roger B. Sidje <rbs@maths.uq.edu.au>
|
||||
*
|
||||
* This Original Code has been modified by Roger B. Sidje.
|
||||
* Modifications made by Roger B. Sidje described herein are
|
||||
* Copyright (C) 2000 The University Of Queensland.
|
||||
*
|
||||
* Modifications to Mozilla code or documentation
|
||||
* identified per MPL Section 3.3
|
||||
*
|
||||
* Date Modified by Description of modification
|
||||
* 08/March/2000 RBS. Support for Mathematical fonts.
|
||||
*/
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 0
|
||||
srcBegin = E021
|
||||
srcEnd = E045
|
||||
destBegin = 0021
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 0
|
||||
srcBegin = E04C
|
||||
srcEnd = E053
|
||||
destBegin = 0058
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 0
|
||||
srcBegin = E054
|
||||
srcEnd = E071
|
||||
destBegin = 0061
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 0
|
||||
srcBegin = E072
|
||||
srcEnd = E07B
|
||||
destBegin = 00A1
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 0
|
||||
srcBegin = E07C
|
||||
srcEnd = E081
|
||||
destBegin = 00AD
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 0
|
||||
srcBegin = E089
|
||||
srcEnd = E09A
|
||||
destBegin = 00B3
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 2
|
||||
srcBegin = 0020
|
||||
destBegin = 0020
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 1
|
||||
srcBegin = 220F
|
||||
srcEnd = 2211
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
0051 0060 0050
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 1
|
||||
srcBegin = 2227
|
||||
srcEnd = 222E
|
||||
mappingOffset = 0003
|
||||
Mapping =
|
||||
0056 0057 FFFD FFFD 0052 FFFD FFFD 0048
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 2
|
||||
srcBegin = 2249
|
||||
destBegin = 004C
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 1
|
||||
srcBegin = 228E
|
||||
srcEnd = 2299
|
||||
mappingOffset = 000B
|
||||
Mapping =
|
||||
0055 FFFD FFFD FFFD FFFD FFFD 0046 FFFD
|
||||
FFFD 004E FFFD 004A
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 1
|
||||
srcBegin = 22C2
|
||||
srcEnd = 22C3
|
||||
mappingOffset = 0017
|
||||
Mapping =
|
||||
0054 0053
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = E046
|
||||
srcEnd = E04B
|
||||
mappingOffset = 0019
|
||||
Mapping =
|
||||
0047 0049 004B FFFD 004D 004F
|
||||
End of Item 000C
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x000D,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x0008,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x002F,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0006 */
|
||||
/* Total of Format 1 : 0x0005 */
|
||||
/* Total of Format 2 : 0x0002 */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x0000, 0x1200, 0x1121, 0x0001,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0008 Start of MapCell Array */
|
||||
/* 0000 */ 0xE021, 0xE045, 0x0021,
|
||||
/* 0001 */ 0xE04C, 0xE053, 0x0058,
|
||||
/* 0002 */ 0xE054, 0xE071, 0x0061,
|
||||
/* 0003 */ 0xE072, 0xE07B, 0x00A1,
|
||||
/* 0004 */ 0xE07C, 0xE081, 0x00AD,
|
||||
/* 0005 */ 0xE089, 0xE09A, 0x00B3,
|
||||
/* 0006 */ 0x0020, 0x0000, 0x0020,
|
||||
/* 0007 */ 0x220F, 0x2211, 0x0000,
|
||||
/* 0008 */ 0x2227, 0x222E, 0x0003,
|
||||
/* 0009 */ 0x2249, 0x0000, 0x004C,
|
||||
/* 000A */ 0x228E, 0x2299, 0x000B,
|
||||
/* 000B */ 0x22C2, 0x22C3, 0x0017,
|
||||
/* 000C */ 0xE046, 0xE04B, 0x0019,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x002F Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x0051, 0x0060, 0x0050, 0x0056, 0x0057, 0xFFFD, 0xFFFD, 0x0052,
|
||||
/* 0008 */ 0xFFFD, 0xFFFD, 0x0048, 0x0055, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0010 */ 0xFFFD, 0x0046, 0xFFFD, 0xFFFD, 0x004E, 0xFFFD, 0x004A, 0x0054,
|
||||
/* 0018 */ 0x0053, 0x0047, 0x0049, 0x004B, 0xFFFD, 0x004D, 0x004F,
|
||||
/* End of table Total Length = 0x004E * 2 */
|
305
intl/uconv/ucvmath/texcmsy-t1.uf
Normal file
305
intl/uconv/ucvmath/texcmsy-t1.uf
Normal file
@ -0,0 +1,305 @@
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 0
|
||||
srcBegin = F112
|
||||
srcEnd = F119
|
||||
destBegin = 0053
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 2
|
||||
srcBegin = 005C
|
||||
destBegin = 006E
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 1
|
||||
srcBegin = 007B
|
||||
srcEnd = 007D
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
0066 FFFD 0067
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 1
|
||||
srcBegin = 00A7
|
||||
srcEnd = 00B6
|
||||
mappingOffset = 0003
|
||||
Mapping =
|
||||
0078 FFFD FFFD FFFD FFFD 003A FFFD FFFD
|
||||
FFFD FFFD 0006 FFFD FFFD FFFD FFFD 007B
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 2
|
||||
srcBegin = 00D7
|
||||
destBegin = 0002
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 2
|
||||
srcBegin = 00F7
|
||||
destBegin = 0004
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 2
|
||||
srcBegin = 0338
|
||||
destBegin = 0036
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 1
|
||||
srcBegin = 2020
|
||||
srcEnd = 2021
|
||||
mappingOffset = 0013
|
||||
Mapping =
|
||||
0079 007A
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 2
|
||||
srcBegin = 2032
|
||||
destBegin = 0030
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 1
|
||||
srcBegin = 210B
|
||||
srcEnd = 211C
|
||||
mappingOffset = 0015
|
||||
Mapping =
|
||||
0048 FFFD FFFD FFFD FFFD 0049 003D 004C
|
||||
FFFD FFFD FFFD FFFD FFFD 0050 FFFD FFFD
|
||||
0052 003C
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 1
|
||||
srcBegin = 212C
|
||||
srcEnd = 2135
|
||||
mappingOffset = 0027
|
||||
Mapping =
|
||||
0042 FFFD FFFD FFFD 0045 0046 FFFD 004D
|
||||
FFFD 0040
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 1
|
||||
srcBegin = 2190
|
||||
srcEnd = 2199
|
||||
mappingOffset = 0031
|
||||
Mapping =
|
||||
0020 0022 0021 0023 0024 006C 002D 0025
|
||||
0026 002E
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = 21D0
|
||||
srcEnd = 21D5
|
||||
mappingOffset = 003B
|
||||
Mapping =
|
||||
0028 002A 0029 002B 002C 006D
|
||||
End of Item 000C
|
||||
|
||||
Begin of Item 000D
|
||||
Format 1
|
||||
srcBegin = 2200
|
||||
srcEnd = 222B
|
||||
mappingOffset = 0041
|
||||
Mapping =
|
||||
0038 FFFD FFFD 0039 FFFD 003B FFFD 0072
|
||||
0032 FFFD FFFD 0033 FFFD FFFD FFFD FFFD
|
||||
0071 FFFD 0000 0007 FFFD FFFD FFFD 0003
|
||||
000E 000F 0070 FFFD FFFD 002F 0031 FFFD
|
||||
FFFD FFFD FFFD 006A FFFD 006B FFFD 005E
|
||||
005F 005C 005B 0073
|
||||
End of Item 000D
|
||||
|
||||
Begin of Item 000E
|
||||
Format 1
|
||||
srcBegin = 223C
|
||||
srcEnd = 224D
|
||||
mappingOffset = 006D
|
||||
Mapping =
|
||||
0018 FFFD FFFD FFFD 006F FFFD FFFD 0027
|
||||
FFFD FFFD FFFD FFFD 0019 FFFD FFFD FFFD
|
||||
FFFD 0010
|
||||
End of Item 000E
|
||||
|
||||
Begin of Item 000F
|
||||
Format 1
|
||||
srcBegin = 2261
|
||||
srcEnd = 226B
|
||||
mappingOffset = 007F
|
||||
Mapping =
|
||||
0011 FFFD FFFD 0014 0015 FFFD FFFD FFFD
|
||||
FFFD 001C 001D
|
||||
End of Item 000F
|
||||
|
||||
Begin of Item 0010
|
||||
Format 1
|
||||
srcBegin = 227A
|
||||
srcEnd = 22A6
|
||||
mappingOffset = 008A
|
||||
Mapping =
|
||||
001E 001F 0016 0017 FFFD FFFD FFFD FFFD
|
||||
001A 001B FFFD FFFD 0012 0013 FFFD FFFD
|
||||
FFFD FFFD FFFD FFFD 005D FFFD FFFD 0076
|
||||
0077 0075 0074 0008 0009 000A 000B 000C
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
0060 0061 003E 003F 0037
|
||||
End of Item 0010
|
||||
|
||||
Begin of Item 0011
|
||||
Format 1
|
||||
srcBegin = 22C4
|
||||
srcEnd = 22C5
|
||||
mappingOffset = 00B7
|
||||
Mapping =
|
||||
0005 0001
|
||||
End of Item 0011
|
||||
|
||||
Begin of Item 0012
|
||||
Format 1
|
||||
srcBegin = 2308
|
||||
srcEnd = 230B
|
||||
mappingOffset = 00B9
|
||||
Mapping =
|
||||
0064 0065 0062 0063
|
||||
End of Item 0012
|
||||
|
||||
Begin of Item 0013
|
||||
Format 1
|
||||
srcBegin = 2329
|
||||
srcEnd = 232A
|
||||
mappingOffset = 00BD
|
||||
Mapping =
|
||||
0068 0069
|
||||
End of Item 0013
|
||||
|
||||
Begin of Item 0014
|
||||
Format 1
|
||||
srcBegin = 25B3
|
||||
srcEnd = 25BD
|
||||
mappingOffset = 00BF
|
||||
Mapping =
|
||||
0034 FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD 0035
|
||||
End of Item 0014
|
||||
|
||||
Begin of Item 0015
|
||||
Format 2
|
||||
srcBegin = 25CB
|
||||
destBegin = 000D
|
||||
End of Item 0015
|
||||
|
||||
Begin of Item 0016
|
||||
Format 1
|
||||
srcBegin = 2660
|
||||
srcEnd = 2666
|
||||
mappingOffset = 00CA
|
||||
Mapping =
|
||||
007F FFFD FFFD 007C FFFD 007E 007D
|
||||
End of Item 0016
|
||||
|
||||
Begin of Item 0017
|
||||
Format 1
|
||||
srcBegin = F100
|
||||
srcEnd = F110
|
||||
mappingOffset = 00D1
|
||||
Mapping =
|
||||
0041 FFFD 0043 0044 FFFD FFFD 0047 FFFD
|
||||
FFFD 004A 004B FFFD FFFD 004E 004F FFFD
|
||||
0051
|
||||
End of Item 0017
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x0018,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x000B,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x0053,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0001 */
|
||||
/* Total of Format 1 : 0x0011 */
|
||||
/* Total of Format 2 : 0x0006 */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x1120, 0x1222, 0x1112, 0x1111, 0x1111, 0x1121, 0x0000,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x000B Start of MapCell Array */
|
||||
/* 0000 */ 0xF112, 0xF119, 0x0053,
|
||||
/* 0001 */ 0x005C, 0x0000, 0x006E,
|
||||
/* 0002 */ 0x007B, 0x007D, 0x0000,
|
||||
/* 0003 */ 0x00A7, 0x00B6, 0x0003,
|
||||
/* 0004 */ 0x00D7, 0x0000, 0x0002,
|
||||
/* 0005 */ 0x00F7, 0x0000, 0x0004,
|
||||
/* 0006 */ 0x0338, 0x0000, 0x0036,
|
||||
/* 0007 */ 0x2020, 0x2021, 0x0013,
|
||||
/* 0008 */ 0x2032, 0x0000, 0x0030,
|
||||
/* 0009 */ 0x210B, 0x211C, 0x0015,
|
||||
/* 000A */ 0x212C, 0x2135, 0x0027,
|
||||
/* 000B */ 0x2190, 0x2199, 0x0031,
|
||||
/* 000C */ 0x21D0, 0x21D5, 0x003B,
|
||||
/* 000D */ 0x2200, 0x222B, 0x0041,
|
||||
/* 000E */ 0x223C, 0x224D, 0x006D,
|
||||
/* 000F */ 0x2261, 0x226B, 0x007F,
|
||||
/* 0010 */ 0x227A, 0x22A6, 0x008A,
|
||||
/* 0011 */ 0x22C4, 0x22C5, 0x00B7,
|
||||
/* 0012 */ 0x2308, 0x230B, 0x00B9,
|
||||
/* 0013 */ 0x2329, 0x232A, 0x00BD,
|
||||
/* 0014 */ 0x25B3, 0x25BD, 0x00BF,
|
||||
/* 0015 */ 0x25CB, 0x0000, 0x000D,
|
||||
/* 0016 */ 0x2660, 0x2666, 0x00CA,
|
||||
/* 0017 */ 0xF100, 0xF110, 0x00D1,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0053 Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x0066, 0xFFFD, 0x0067, 0x0078, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0008 */ 0x003A, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0006, 0xFFFD, 0xFFFD,
|
||||
/* 0010 */ 0xFFFD, 0xFFFD, 0x007B, 0x0079, 0x007A, 0x0048, 0xFFFD, 0xFFFD,
|
||||
/* 0018 */ 0xFFFD, 0xFFFD, 0x0049, 0x003D, 0x004C, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0020 */ 0xFFFD, 0xFFFD, 0x0050, 0xFFFD, 0xFFFD, 0x0052, 0x003C, 0x0042,
|
||||
/* 0028 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x0045, 0x0046, 0xFFFD, 0x004D, 0xFFFD,
|
||||
/* 0030 */ 0x0040, 0x0020, 0x0022, 0x0021, 0x0023, 0x0024, 0x006C, 0x002D,
|
||||
/* 0038 */ 0x0025, 0x0026, 0x002E, 0x0028, 0x002A, 0x0029, 0x002B, 0x002C,
|
||||
/* 0040 */ 0x006D, 0x0038, 0xFFFD, 0xFFFD, 0x0039, 0xFFFD, 0x003B, 0xFFFD,
|
||||
/* 0048 */ 0x0072, 0x0032, 0xFFFD, 0xFFFD, 0x0033, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0050 */ 0xFFFD, 0x0071, 0xFFFD, 0x0000, 0x0007, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0058 */ 0x0003, 0x000E, 0x000F, 0x0070, 0xFFFD, 0xFFFD, 0x002F, 0x0031,
|
||||
/* 0060 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x006A, 0xFFFD, 0x006B, 0xFFFD,
|
||||
/* 0068 */ 0x005E, 0x005F, 0x005C, 0x005B, 0x0073, 0x0018, 0xFFFD, 0xFFFD,
|
||||
/* 0070 */ 0xFFFD, 0x006F, 0xFFFD, 0xFFFD, 0x0027, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0078 */ 0xFFFD, 0x0019, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0010, 0x0011,
|
||||
/* 0080 */ 0xFFFD, 0xFFFD, 0x0014, 0x0015, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0088 */ 0x001C, 0x001D, 0x001E, 0x001F, 0x0016, 0x0017, 0xFFFD, 0xFFFD,
|
||||
/* 0090 */ 0xFFFD, 0xFFFD, 0x001A, 0x001B, 0xFFFD, 0xFFFD, 0x0012, 0x0013,
|
||||
/* 0098 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x005D, 0xFFFD,
|
||||
/* 00A0 */ 0xFFFD, 0x0076, 0x0077, 0x0075, 0x0074, 0x0008, 0x0009, 0x000A,
|
||||
/* 00A8 */ 0x000B, 0x000C, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 00B0 */ 0xFFFD, 0xFFFD, 0x0060, 0x0061, 0x003E, 0x003F, 0x0037, 0x0005,
|
||||
/* 00B8 */ 0x0001, 0x0064, 0x0065, 0x0062, 0x0063, 0x0068, 0x0069, 0x0034,
|
||||
/* 00C0 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 00C8 */ 0xFFFD, 0x0035, 0x007F, 0xFFFD, 0xFFFD, 0x007C, 0xFFFD, 0x007E,
|
||||
/* 00D0 */ 0x007D, 0x0041, 0xFFFD, 0x0043, 0x0044, 0xFFFD, 0xFFFD, 0x0047,
|
||||
/* 00D8 */ 0xFFFD, 0xFFFD, 0x004A, 0x004B, 0xFFFD, 0xFFFD, 0x004E, 0x004F,
|
||||
/* 00E0 */ 0xFFFD, 0x0051,
|
||||
/* End of table Total Length = 0x0135 * 2 */
|
314
intl/uconv/ucvmath/texcmsy-ttf.uf
Normal file
314
intl/uconv/ucvmath/texcmsy-ttf.uf
Normal file
@ -0,0 +1,314 @@
|
||||
/*========================================================
|
||||
This is a Generated file. Please don't edit it.
|
||||
|
||||
The tool which used to generate this file is called fromu.
|
||||
If you have any problem of this file. Please contact
|
||||
Netscape Client International Team or
|
||||
ftang@netscape <Frank Tang>
|
||||
|
||||
Table in Debug form
|
||||
Begin of Item 0000
|
||||
Format 0
|
||||
srcBegin = F112
|
||||
srcEnd = F119
|
||||
destBegin = 0053
|
||||
End of Item 0000
|
||||
|
||||
Begin of Item 0001
|
||||
Format 2
|
||||
srcBegin = 0020
|
||||
destBegin = 0020
|
||||
End of Item 0001
|
||||
|
||||
Begin of Item 0002
|
||||
Format 2
|
||||
srcBegin = 005C
|
||||
destBegin = 006E
|
||||
End of Item 0002
|
||||
|
||||
Begin of Item 0003
|
||||
Format 1
|
||||
srcBegin = 007B
|
||||
srcEnd = 007D
|
||||
mappingOffset = 0000
|
||||
Mapping =
|
||||
0066 FFFD 0067
|
||||
End of Item 0003
|
||||
|
||||
Begin of Item 0004
|
||||
Format 1
|
||||
srcBegin = 00A0
|
||||
srcEnd = 00B6
|
||||
mappingOffset = 0003
|
||||
Mapping =
|
||||
00A0 FFFD FFFD FFFD FFFD FFFD FFFD 0078
|
||||
FFFD FFFD FFFD FFFD 003A FFFD FFFD FFFD
|
||||
FFFD 00A7 FFFD FFFD FFFD FFFD 007B
|
||||
End of Item 0004
|
||||
|
||||
Begin of Item 0005
|
||||
Format 2
|
||||
srcBegin = 00D7
|
||||
destBegin = 00A3
|
||||
End of Item 0005
|
||||
|
||||
Begin of Item 0006
|
||||
Format 2
|
||||
srcBegin = 00F7
|
||||
destBegin = 00A5
|
||||
End of Item 0006
|
||||
|
||||
Begin of Item 0007
|
||||
Format 2
|
||||
srcBegin = 0338
|
||||
destBegin = 0036
|
||||
End of Item 0007
|
||||
|
||||
Begin of Item 0008
|
||||
Format 1
|
||||
srcBegin = 2020
|
||||
srcEnd = 2021
|
||||
mappingOffset = 001A
|
||||
Mapping =
|
||||
0079 007A
|
||||
End of Item 0008
|
||||
|
||||
Begin of Item 0009
|
||||
Format 2
|
||||
srcBegin = 2032
|
||||
destBegin = 0030
|
||||
End of Item 0009
|
||||
|
||||
Begin of Item 000A
|
||||
Format 1
|
||||
srcBegin = 210B
|
||||
srcEnd = 211C
|
||||
mappingOffset = 001C
|
||||
Mapping =
|
||||
0048 FFFD FFFD FFFD FFFD 0049 003D 004C
|
||||
FFFD FFFD FFFD FFFD FFFD 0050 FFFD FFFD
|
||||
0052 003C
|
||||
End of Item 000A
|
||||
|
||||
Begin of Item 000B
|
||||
Format 1
|
||||
srcBegin = 212C
|
||||
srcEnd = 2135
|
||||
mappingOffset = 002E
|
||||
Mapping =
|
||||
0042 FFFD FFFD FFFD 0045 0046 FFFD 004D
|
||||
FFFD 0040
|
||||
End of Item 000B
|
||||
|
||||
Begin of Item 000C
|
||||
Format 1
|
||||
srcBegin = 2190
|
||||
srcEnd = 2199
|
||||
mappingOffset = 0038
|
||||
Mapping =
|
||||
00C3 0022 0021 0023 0024 006C 002D 0025
|
||||
0026 002E
|
||||
End of Item 000C
|
||||
|
||||
Begin of Item 000D
|
||||
Format 1
|
||||
srcBegin = 21D0
|
||||
srcEnd = 21D5
|
||||
mappingOffset = 0042
|
||||
Mapping =
|
||||
0028 002A 0029 002B 002C 006D
|
||||
End of Item 000D
|
||||
|
||||
Begin of Item 000E
|
||||
Format 1
|
||||
srcBegin = 2200
|
||||
srcEnd = 222B
|
||||
mappingOffset = 0048
|
||||
Mapping =
|
||||
0038 FFFD FFFD 0039 FFFD 003B FFFD 0072
|
||||
0032 FFFD FFFD 0033 FFFD FFFD FFFD FFFD
|
||||
0071 FFFD 00A1 00A8 FFFD FFFD FFFD 00A4
|
||||
00B1 00B2 0070 FFFD FFFD 002F 0031 FFFD
|
||||
FFFD FFFD FFFD 006A FFFD 006B FFFD 005E
|
||||
005F 005C 005B 0073
|
||||
End of Item 000E
|
||||
|
||||
Begin of Item 000F
|
||||
Format 1
|
||||
srcBegin = 223C
|
||||
srcEnd = 224D
|
||||
mappingOffset = 0074
|
||||
Mapping =
|
||||
00BB FFFD FFFD FFFD 006F FFFD FFFD 0027
|
||||
FFFD FFFD FFFD FFFD 00BC FFFD FFFD FFFD
|
||||
FFFD 00B3
|
||||
End of Item 000F
|
||||
|
||||
Begin of Item 0010
|
||||
Format 1
|
||||
srcBegin = 2261
|
||||
srcEnd = 226B
|
||||
mappingOffset = 0086
|
||||
Mapping =
|
||||
00B4 FFFD FFFD 00B7 00B8 FFFD FFFD FFFD
|
||||
FFFD 00BF 00C0
|
||||
End of Item 0010
|
||||
|
||||
Begin of Item 0011
|
||||
Format 1
|
||||
srcBegin = 227A
|
||||
srcEnd = 22A6
|
||||
mappingOffset = 0091
|
||||
Mapping =
|
||||
00C1 00C2 00B9 00BA FFFD FFFD FFFD FFFD
|
||||
00BD 00BE FFFD FFFD 00B5 00B6 FFFD FFFD
|
||||
FFFD FFFD FFFD FFFD 005D FFFD FFFD 0076
|
||||
0077 0075 0074 00A9 00AA 00AD 00AE 00AF
|
||||
FFFD FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
0060 0061 003E 003F 0037
|
||||
End of Item 0011
|
||||
|
||||
Begin of Item 0012
|
||||
Format 1
|
||||
srcBegin = 22C4
|
||||
srcEnd = 22C5
|
||||
mappingOffset = 00BE
|
||||
Mapping =
|
||||
00A6 00A2
|
||||
End of Item 0012
|
||||
|
||||
Begin of Item 0013
|
||||
Format 1
|
||||
srcBegin = 2308
|
||||
srcEnd = 230B
|
||||
mappingOffset = 00C0
|
||||
Mapping =
|
||||
0064 0065 0062 0063
|
||||
End of Item 0013
|
||||
|
||||
Begin of Item 0014
|
||||
Format 1
|
||||
srcBegin = 2329
|
||||
srcEnd = 232A
|
||||
mappingOffset = 00C4
|
||||
Mapping =
|
||||
0068 0069
|
||||
End of Item 0014
|
||||
|
||||
Begin of Item 0015
|
||||
Format 1
|
||||
srcBegin = 25B3
|
||||
srcEnd = 25BD
|
||||
mappingOffset = 00C6
|
||||
Mapping =
|
||||
0034 FFFD FFFD FFFD FFFD FFFD FFFD FFFD
|
||||
FFFD FFFD 0035
|
||||
End of Item 0015
|
||||
|
||||
Begin of Item 0016
|
||||
Format 2
|
||||
srcBegin = 25CB
|
||||
destBegin = 00B0
|
||||
End of Item 0016
|
||||
|
||||
Begin of Item 0017
|
||||
Format 1
|
||||
srcBegin = 2660
|
||||
srcEnd = 2666
|
||||
mappingOffset = 00D1
|
||||
Mapping =
|
||||
00C4 FFFD FFFD 007C FFFD 007E 007D
|
||||
End of Item 0017
|
||||
|
||||
Begin of Item 0018
|
||||
Format 1
|
||||
srcBegin = F100
|
||||
srcEnd = F110
|
||||
mappingOffset = 00D8
|
||||
Mapping =
|
||||
0041 FFFD 0043 0044 FFFD FFFD 0047 FFFD
|
||||
FFFD 004A 004B FFFD FFFD 004E 004F FFFD
|
||||
0051
|
||||
End of Item 0018
|
||||
|
||||
========================================================*/
|
||||
/* Offset=0x0000 ItemOfList */
|
||||
0x0019,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0001 offsetToFormatArray */
|
||||
0x0004,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0002 offsetToMapCellArray */
|
||||
0x000B,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0003 offsetToMappingTable */
|
||||
0x0056,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0004 Start of Format Array */
|
||||
/* Total of Format 0 : 0x0001 */
|
||||
/* Total of Format 1 : 0x0011 */
|
||||
/* Total of Format 2 : 0x0007 */
|
||||
/* Total of Format 3 : 0x0000 */
|
||||
|
||||
0x1220, 0x2221, 0x1121, 0x1111, 0x1111, 0x1211, 0x0001,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x000B Start of MapCell Array */
|
||||
/* 0000 */ 0xF112, 0xF119, 0x0053,
|
||||
/* 0001 */ 0x0020, 0x0000, 0x0020,
|
||||
/* 0002 */ 0x005C, 0x0000, 0x006E,
|
||||
/* 0003 */ 0x007B, 0x007D, 0x0000,
|
||||
/* 0004 */ 0x00A0, 0x00B6, 0x0003,
|
||||
/* 0005 */ 0x00D7, 0x0000, 0x00A3,
|
||||
/* 0006 */ 0x00F7, 0x0000, 0x00A5,
|
||||
/* 0007 */ 0x0338, 0x0000, 0x0036,
|
||||
/* 0008 */ 0x2020, 0x2021, 0x001A,
|
||||
/* 0009 */ 0x2032, 0x0000, 0x0030,
|
||||
/* 000A */ 0x210B, 0x211C, 0x001C,
|
||||
/* 000B */ 0x212C, 0x2135, 0x002E,
|
||||
/* 000C */ 0x2190, 0x2199, 0x0038,
|
||||
/* 000D */ 0x21D0, 0x21D5, 0x0042,
|
||||
/* 000E */ 0x2200, 0x222B, 0x0048,
|
||||
/* 000F */ 0x223C, 0x224D, 0x0074,
|
||||
/* 0010 */ 0x2261, 0x226B, 0x0086,
|
||||
/* 0011 */ 0x227A, 0x22A6, 0x0091,
|
||||
/* 0012 */ 0x22C4, 0x22C5, 0x00BE,
|
||||
/* 0013 */ 0x2308, 0x230B, 0x00C0,
|
||||
/* 0014 */ 0x2329, 0x232A, 0x00C4,
|
||||
/* 0015 */ 0x25B3, 0x25BD, 0x00C6,
|
||||
/* 0016 */ 0x25CB, 0x0000, 0x00B0,
|
||||
/* 0017 */ 0x2660, 0x2666, 0x00D1,
|
||||
/* 0018 */ 0xF100, 0xF110, 0x00D8,
|
||||
/*-------------------------------------------------------*/
|
||||
/* Offset=0x0056 Start of MappingTable */
|
||||
|
||||
/* 0000 */ 0x0066, 0xFFFD, 0x0067, 0x00A0, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0008 */ 0xFFFD, 0xFFFD, 0x0078, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x003A,
|
||||
/* 0010 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00A7, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0018 */ 0xFFFD, 0x007B, 0x0079, 0x007A, 0x0048, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0020 */ 0xFFFD, 0x0049, 0x003D, 0x004C, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0028 */ 0xFFFD, 0x0050, 0xFFFD, 0xFFFD, 0x0052, 0x003C, 0x0042, 0xFFFD,
|
||||
/* 0030 */ 0xFFFD, 0xFFFD, 0x0045, 0x0046, 0xFFFD, 0x004D, 0xFFFD, 0x0040,
|
||||
/* 0038 */ 0x00C3, 0x0022, 0x0021, 0x0023, 0x0024, 0x006C, 0x002D, 0x0025,
|
||||
/* 0040 */ 0x0026, 0x002E, 0x0028, 0x002A, 0x0029, 0x002B, 0x002C, 0x006D,
|
||||
/* 0048 */ 0x0038, 0xFFFD, 0xFFFD, 0x0039, 0xFFFD, 0x003B, 0xFFFD, 0x0072,
|
||||
/* 0050 */ 0x0032, 0xFFFD, 0xFFFD, 0x0033, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0058 */ 0x0071, 0xFFFD, 0x00A1, 0x00A8, 0xFFFD, 0xFFFD, 0xFFFD, 0x00A4,
|
||||
/* 0060 */ 0x00B1, 0x00B2, 0x0070, 0xFFFD, 0xFFFD, 0x002F, 0x0031, 0xFFFD,
|
||||
/* 0068 */ 0xFFFD, 0xFFFD, 0xFFFD, 0x006A, 0xFFFD, 0x006B, 0xFFFD, 0x005E,
|
||||
/* 0070 */ 0x005F, 0x005C, 0x005B, 0x0073, 0x00BB, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0078 */ 0x006F, 0xFFFD, 0xFFFD, 0x0027, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0080 */ 0x00BC, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00B3, 0x00B4, 0xFFFD,
|
||||
/* 0088 */ 0xFFFD, 0x00B7, 0x00B8, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x00BF,
|
||||
/* 0090 */ 0x00C0, 0x00C1, 0x00C2, 0x00B9, 0x00BA, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 0098 */ 0xFFFD, 0x00BD, 0x00BE, 0xFFFD, 0xFFFD, 0x00B5, 0x00B6, 0xFFFD,
|
||||
/* 00A0 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x005D, 0xFFFD, 0xFFFD,
|
||||
/* 00A8 */ 0x0076, 0x0077, 0x0075, 0x0074, 0x00A9, 0x00AA, 0x00AD, 0x00AE,
|
||||
/* 00B0 */ 0x00AF, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 00B8 */ 0xFFFD, 0x0060, 0x0061, 0x003E, 0x003F, 0x0037, 0x00A6, 0x00A2,
|
||||
/* 00C0 */ 0x0064, 0x0065, 0x0062, 0x0063, 0x0068, 0x0069, 0x0034, 0xFFFD,
|
||||
/* 00C8 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
|
||||
/* 00D0 */ 0x0035, 0x00C4, 0xFFFD, 0xFFFD, 0x007C, 0xFFFD, 0x007E, 0x007D,
|
||||
/* 00D8 */ 0x0041, 0xFFFD, 0x0043, 0x0044, 0xFFFD, 0xFFFD, 0x0047, 0xFFFD,
|
||||
/* 00E0 */ 0xFFFD, 0x004A, 0x004B, 0xFFFD, 0xFFFD, 0x004E, 0x004F, 0xFFFD,
|
||||
/* 00E8 */ 0x0051,
|
||||
/* End of table Total Length = 0x013F * 2 */
|
Loading…
Reference in New Issue
Block a user