mirror of git://sourceware.org/git/glibc.git
* iconvdata/ibm930.h: Correct Yen mapping.
* iconvdata/ibm939.h: Likewise. * iconvdata/testdata/IBM930..UTF8: Adjust test data. * iconvdata/testdata/IBM939..UTF8: Likewise. Patch by Jiro Sekiba <SEKIBA@jp.ibm.com>. * iconvdata/Makefile (modules): Add IBM1025, IBM1122, IBM1137, IBM1153, IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158. (distribute): Add ibm1025.c, ibm1025.h, ibm1122.c, ibm1122.h, ibm1137.c, ibm1137.h, ibm1153.c, ibm1153.h, ibm1154.c, ibm1154.h, ibm1155.c, ibm1155.h, ibm1156.c, ibm1156.h, ibm1157.c, ibm1157.h, ibm1158.c, and ibm1158.h. * iconvdata/TESTS: Add IBM1025, IBM1122, IBM1137, IBM1153, IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158. * iconvdata/gconv-modules: Likewise. * iconvdata/ibm1025.c: New file. * iconvdata/ibm1025.h: New file. * iconvdata/ibm1122.c: New file. * iconvdata/ibm1122.h: New file. * iconvdata/ibm1137.c: New file. * iconvdata/ibm1137.h: New file. * iconvdata/ibm1153.c: New file. * iconvdata/ibm1153.h: New file. * iconvdata/ibm1154.c: New file. * iconvdata/ibm1154.h: New file. * iconvdata/ibm1155.c: New file. * iconvdata/ibm1155.h: New file. * iconvdata/ibm1156.c: New file. * iconvdata/ibm1156.h: New file. * iconvdata/ibm1157.c: New file. * iconvdata/ibm1157.h: New file. * iconvdata/ibm1158.c: New file. * iconvdata/ibm1158.h: New file. * iconvdata/testdata/IBM1025: New file. * iconvdata/testdata/IBM1025..UTF8: New file. * iconvdata/testdata/IBM1122: New file. * iconvdata/testdata/IBM1122..UTF8: New file. * iconvdata/testdata/IBM1137: New file. * iconvdata/testdata/IBM1137..UTF8: New file. * iconvdata/testdata/IBM1153: New file. * iconvdata/testdata/IBM1153..UTF8: New file. * iconvdata/testdata/IBM1154: New file. * iconvdata/testdata/IBM1154..UTF8: New file. * iconvdata/testdata/IBM1155: New file. * iconvdata/testdata/IBM1155..UTF8: New file. * iconvdata/testdata/IBM1156: New file. * iconvdata/testdata/IBM1156..UTF8: New file. * iconvdata/testdata/IBM1157: New file. * iconvdata/testdata/IBM1157..UTF8: New file. * iconvdata/testdata/IBM1158: New file. * iconvdata/testdata/IBM1158..UTF8: New file. Contributed by Jiro Sekiba <SEKIBA@jp.ibm.com>.
This commit is contained in:
parent
744eb12b7b
commit
137e6462eb
55
ChangeLog
55
ChangeLog
|
|
@ -1,3 +1,58 @@
|
|||
2005-02-21 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* iconvdata/ibm930.h: Correct Yen mapping.
|
||||
* iconvdata/ibm939.h: Likewise.
|
||||
* iconvdata/testdata/IBM930..UTF8: Adjust test data.
|
||||
* iconvdata/testdata/IBM939..UTF8: Likewise.
|
||||
Patch by Jiro Sekiba <SEKIBA@jp.ibm.com>.
|
||||
|
||||
* iconvdata/Makefile (modules): Add IBM1025, IBM1122, IBM1137, IBM1153,
|
||||
IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158.
|
||||
(distribute): Add ibm1025.c, ibm1025.h, ibm1122.c, ibm1122.h,
|
||||
ibm1137.c, ibm1137.h, ibm1153.c, ibm1153.h, ibm1154.c, ibm1154.h,
|
||||
ibm1155.c, ibm1155.h, ibm1156.c, ibm1156.h, ibm1157.c, ibm1157.h,
|
||||
ibm1158.c, and ibm1158.h.
|
||||
* iconvdata/TESTS: Add IBM1025, IBM1122, IBM1137, IBM1153,
|
||||
IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158.
|
||||
* iconvdata/gconv-modules: Likewise.
|
||||
* iconvdata/ibm1025.c: New file.
|
||||
* iconvdata/ibm1025.h: New file.
|
||||
* iconvdata/ibm1122.c: New file.
|
||||
* iconvdata/ibm1122.h: New file.
|
||||
* iconvdata/ibm1137.c: New file.
|
||||
* iconvdata/ibm1137.h: New file.
|
||||
* iconvdata/ibm1153.c: New file.
|
||||
* iconvdata/ibm1153.h: New file.
|
||||
* iconvdata/ibm1154.c: New file.
|
||||
* iconvdata/ibm1154.h: New file.
|
||||
* iconvdata/ibm1155.c: New file.
|
||||
* iconvdata/ibm1155.h: New file.
|
||||
* iconvdata/ibm1156.c: New file.
|
||||
* iconvdata/ibm1156.h: New file.
|
||||
* iconvdata/ibm1157.c: New file.
|
||||
* iconvdata/ibm1157.h: New file.
|
||||
* iconvdata/ibm1158.c: New file.
|
||||
* iconvdata/ibm1158.h: New file.
|
||||
* iconvdata/testdata/IBM1025: New file.
|
||||
* iconvdata/testdata/IBM1025..UTF8: New file.
|
||||
* iconvdata/testdata/IBM1122: New file.
|
||||
* iconvdata/testdata/IBM1122..UTF8: New file.
|
||||
* iconvdata/testdata/IBM1137: New file.
|
||||
* iconvdata/testdata/IBM1137..UTF8: New file.
|
||||
* iconvdata/testdata/IBM1153: New file.
|
||||
* iconvdata/testdata/IBM1153..UTF8: New file.
|
||||
* iconvdata/testdata/IBM1154: New file.
|
||||
* iconvdata/testdata/IBM1154..UTF8: New file.
|
||||
* iconvdata/testdata/IBM1155: New file.
|
||||
* iconvdata/testdata/IBM1155..UTF8: New file.
|
||||
* iconvdata/testdata/IBM1156: New file.
|
||||
* iconvdata/testdata/IBM1156..UTF8: New file.
|
||||
* iconvdata/testdata/IBM1157: New file.
|
||||
* iconvdata/testdata/IBM1157..UTF8: New file.
|
||||
* iconvdata/testdata/IBM1158: New file.
|
||||
* iconvdata/testdata/IBM1158..UTF8: New file.
|
||||
Contributed by Jiro Sekiba <SEKIBA@jp.ibm.com>.
|
||||
|
||||
2005-02-10 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
* posix/regcomp.c (lower_subexp): Do not optimize empty
|
||||
|
|
|
|||
11
NEWS
11
NEWS
|
|
@ -1,10 +1,17 @@
|
|||
GNU C Library NEWS -- history of user-visible changes. 2004-12-19
|
||||
Copyright (C) 1992-2002,2003,2004 Free Software Foundation, Inc.
|
||||
GNU C Library NEWS -- history of user-visible changes. 2005-2-21
|
||||
Copyright (C) 1992-2004, 2005 Free Software Foundation, Inc.
|
||||
See the end for copying conditions.
|
||||
|
||||
Please send GNU C library bug reports via <http://sources.redhat.com/bugzilla/>
|
||||
using `glibc' in the "product" field.
|
||||
|
||||
Version 2.4
|
||||
|
||||
* More overflow detection functions.
|
||||
|
||||
* New iconv converters for IBM1025, IBM1122, IBM1137, IBM1153,
|
||||
IBM1154, IBM1155, IBM1156, IBM1157, and IBM1158 contributed by Jiro Sekiba.
|
||||
|
||||
Version 2.3.4
|
||||
|
||||
* Support for RFC 3678. Real implementations exist only for Linux so far.
|
||||
|
|
|
|||
|
|
@ -125,7 +125,6 @@ _dl_nothread_init_static_tls (struct link_map *map)
|
|||
|
||||
/* Fill in the DTV slot so that a later LD/GD access will find it. */
|
||||
dtv_t *dtv = THREAD_DTV ();
|
||||
_dl_printf("modid=%u, counter=%u\n", map->l_tls_modid, dtv[-1].counter);
|
||||
assert (map->l_tls_modid <= dtv[-1].counter);
|
||||
dtv[map->l_tls_modid].pointer.val = dest;
|
||||
dtv[map->l_tls_modid].pointer.is_static = true;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
# Copyright (C) 1997-2002, 2003, 2004 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1997-2004, 2005 Free Software Foundation, Inc.
|
||||
# This file is part of the GNU C Library.
|
||||
|
||||
# The GNU C Library is free software; you can redistribute it and/or
|
||||
|
|
@ -51,7 +51,9 @@ modules := ISO8859-1 ISO8859-2 ISO8859-3 ISO8859-4 ISO8859-5 \
|
|||
GB18030 ISO-2022-CN-EXT VISCII GBBIG5 CP10007 KOI8-T \
|
||||
GEORGIAN-PS GEORGIAN-ACADEMY ISO-IR-209 MAC-SAMI ARMSCII-8 \
|
||||
TCVN5712-1 libJISX0213 EUC-JISX0213 SHIFT_JISX0213 \
|
||||
ISO-2022-JP-3 TSCII IBM866NAV CP932 EUC-JP-MS PT154 RK1048
|
||||
ISO-2022-JP-3 TSCII IBM866NAV CP932 EUC-JP-MS PT154 RK1048 \
|
||||
IBM1025 IBM1122 IBM1137 IBM1153 IBM1154 IBM1155 IBM1156 \
|
||||
IBM1157 IBM1158
|
||||
|
||||
modules.so := $(addsuffix .so, $(modules))
|
||||
|
||||
|
|
@ -172,7 +174,10 @@ distribute := gconv-modules extra-module.mk gap.awk gaptab.awk gconv.map \
|
|||
mac-sami.c ibm1160.c ibm1160.h ibm1161.c ibm1161.h \
|
||||
ibm1163.c ibm1163.h ibm1164.c ibm1164.h jisx0213.c jisx0213.h \
|
||||
euc-jisx0213.c shift_jisx0213.c iso-2022-jp-3.c \
|
||||
tcvn5712-1.c armscii-8.c tscii.c ibm866nav.c pt154.c rk1048.c
|
||||
tcvn5712-1.c armscii-8.c tscii.c ibm866nav.c pt154.c rk1048.c \
|
||||
ibm1025.c ibm1025.h ibm1122.c ibm1122.h ibm1137.c ibm1137.h \
|
||||
ibm1153.c ibm1153.h ibm1154.c ibm1154.h ibm1155.c ibm1155.h \
|
||||
ibm1156.c ibm1156.h ibm1157.c ibm1157.h ibm1158.c ibm1158.h
|
||||
|
||||
# We build the transformation modules only when we build shared libs.
|
||||
ifeq (yes,$(build-shared))
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
# Available tests for iconv(1) (and therefore iconv(3)) in GNU libc.
|
||||
# Copyright (C) 1998-2002 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1998-2002, 2005 Free Software Foundation, Inc.
|
||||
# This file is part of the GNU C Library.
|
||||
# Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
|
||||
#
|
||||
|
|
@ -119,3 +119,12 @@ EUC-JISX0213 EUC-JISX0213 Y UTF8
|
|||
SHIFT_JISX0213 SHIFT_JISX0213 Y UTF8
|
||||
ISO-2022-JP-3 ISO-2022-JP-3 N UTF8
|
||||
TSCII TSCII Y UTF8
|
||||
IBM1025 IBM1025 N UTF8
|
||||
IBM1122 IBM1122 N UTF8
|
||||
IBM1137 IBM1137 N UTF8
|
||||
IBM1153 IBM1153 N UTF8
|
||||
IBM1154 IBM1154 N UTF8
|
||||
IBM1155 IBM1155 N UTF8
|
||||
IBM1156 IBM1156 N UTF8
|
||||
IBM1157 IBM1157 N UTF8
|
||||
IBM1158 IBM1158 N UTF8
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
# GNU libc iconv configuration.
|
||||
# Copyright (C) 1997-2003, 2004 Free Software Foundation, Inc.
|
||||
# Copyright (C) 1997-2004, 2005 Free Software Foundation, Inc.
|
||||
# This file is part of the GNU C Library.
|
||||
#
|
||||
|
||||
# The GNU C Library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
|
@ -1572,3 +1571,73 @@ module INTERNAL PT154// PT154 1
|
|||
alias STRK1048-2002// RK1048//
|
||||
module RK1048// INTERNAL RK1048 1
|
||||
module INTERNAL RK1048// RK1048 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1025// IBM1025//
|
||||
alias CP1025// IBM1025//
|
||||
alias CSIBM1025// IBM1025//
|
||||
module IBM1025// INTERNAL IBM1025 1
|
||||
module INTERNAL IBM1025// IBM1025 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1122// IBM1122//
|
||||
alias CP1122// IBM1122//
|
||||
alias CSIBM1122// IBM1122//
|
||||
module IBM1122// INTERNAL IBM1122 1
|
||||
module INTERNAL IBM1122// IBM1122 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1137// IBM1137//
|
||||
alias CP1137// IBM1137//
|
||||
alias CSIBM1137// IBM1137//
|
||||
module IBM1137// INTERNAL IBM1137 1
|
||||
module INTERNAL IBM1137// IBM1137 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1153// IBM1153//
|
||||
alias CP1153// IBM1153//
|
||||
alias CSIBM1153// IBM1153//
|
||||
module IBM1153// INTERNAL IBM1153 1
|
||||
module INTERNAL IBM1153// IBM1153 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1154// IBM1154//
|
||||
alias CP1154// IBM1154//
|
||||
alias CSIBM1154// IBM1154//
|
||||
module IBM1154// INTERNAL IBM1154 1
|
||||
module INTERNAL IBM1154// IBM1154 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1155// IBM1155//
|
||||
alias CP1155// IBM1155//
|
||||
alias CSIBM1155// IBM1155//
|
||||
module IBM1155// INTERNAL IBM1155 1
|
||||
module INTERNAL IBM1155// IBM1155 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1155// IBM1155//
|
||||
alias CP1155// IBM1155//
|
||||
alias CSIBM1155// IBM1155//
|
||||
module IBM1155// INTERNAL IBM1155 1
|
||||
module INTERNAL IBM1155// IBM1155 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1156// IBM1156//
|
||||
alias CP1156// IBM1156//
|
||||
alias CSIBM1156// IBM1156//
|
||||
module IBM1156// INTERNAL IBM1156 1
|
||||
module INTERNAL IBM1156// IBM1156 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1157// IBM1157//
|
||||
alias CP1157// IBM1157//
|
||||
alias CSIBM1157// IBM1157//
|
||||
module IBM1157// INTERNAL IBM1157 1
|
||||
module INTERNAL IBM1157// IBM1157 1
|
||||
|
||||
# from to module cost
|
||||
alias IBM-1158// IBM1158//
|
||||
alias CP1158// IBM1158//
|
||||
alias CSIBM1158// IBM1158//
|
||||
module IBM1158// INTERNAL IBM1158 1
|
||||
module INTERNAL IBM1158// IBM1158 1
|
||||
|
|
|
|||
|
|
@ -0,0 +1,29 @@
|
|||
/* Conversion from and to IBM1025.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/* Get the conversion table. */
|
||||
#define TABLES <ibm1025.h>
|
||||
|
||||
#define CHARSET_NAME "IBM1025//"
|
||||
#define HAS_HOLES 0 /* All 256 character are defined. */
|
||||
|
||||
#include <8bit-gap.c>
|
||||
|
|
@ -0,0 +1,133 @@
|
|||
/* Mapping table for IBM1025.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
static const uint32_t to_ucs4[256] =
|
||||
{
|
||||
[0x00] = 0x0000, [0x01] = 0x0001, [0x02] = 0x0002, [0x03] = 0x0003,
|
||||
[0x04] = 0x009c, [0x05] = 0x0009, [0x06] = 0x0086, [0x07] = 0x007f,
|
||||
[0x08] = 0x0097, [0x09] = 0x008d, [0x0a] = 0x008e, [0x0b] = 0x000b,
|
||||
[0x0c] = 0x000c, [0x0d] = 0x000d, [0x0e] = 0x000e, [0x0f] = 0x000f,
|
||||
[0x10] = 0x0010, [0x11] = 0x0011, [0x12] = 0x0012, [0x13] = 0x0013,
|
||||
[0x14] = 0x009d, [0x15] = 0x0085, [0x16] = 0x0008, [0x17] = 0x0087,
|
||||
[0x18] = 0x0018, [0x19] = 0x0019, [0x1a] = 0x0092, [0x1b] = 0x008f,
|
||||
[0x1c] = 0x001c, [0x1d] = 0x001d, [0x1e] = 0x001e, [0x1f] = 0x001f,
|
||||
[0x20] = 0x0080, [0x21] = 0x0081, [0x22] = 0x0082, [0x23] = 0x0083,
|
||||
[0x24] = 0x0084, [0x25] = 0x000a, [0x26] = 0x0017, [0x27] = 0x001b,
|
||||
[0x28] = 0x0088, [0x29] = 0x0089, [0x2a] = 0x008a, [0x2b] = 0x008b,
|
||||
[0x2c] = 0x008c, [0x2d] = 0x0005, [0x2e] = 0x0006, [0x2f] = 0x0007,
|
||||
[0x30] = 0x0090, [0x31] = 0x0091, [0x32] = 0x0016, [0x33] = 0x0093,
|
||||
[0x34] = 0x0094, [0x35] = 0x0095, [0x36] = 0x0096, [0x37] = 0x0004,
|
||||
[0x38] = 0x0098, [0x39] = 0x0099, [0x3a] = 0x009a, [0x3b] = 0x009b,
|
||||
[0x3c] = 0x0014, [0x3d] = 0x0015, [0x3e] = 0x009e, [0x3f] = 0x001a,
|
||||
[0x40] = 0x0020, [0x41] = 0x00a0, [0x42] = 0x0452, [0x43] = 0x0453,
|
||||
[0x44] = 0x0451, [0x45] = 0x0454, [0x46] = 0x0455, [0x47] = 0x0456,
|
||||
[0x48] = 0x0457, [0x49] = 0x0458, [0x4a] = 0x005b, [0x4b] = 0x002e,
|
||||
[0x4c] = 0x003c, [0x4d] = 0x0028, [0x4e] = 0x002b, [0x4f] = 0x0021,
|
||||
[0x50] = 0x0026, [0x51] = 0x0459, [0x52] = 0x045a, [0x53] = 0x045b,
|
||||
[0x54] = 0x045c, [0x55] = 0x045e, [0x56] = 0x045f, [0x57] = 0x042a,
|
||||
[0x58] = 0x2116, [0x59] = 0x0402, [0x5a] = 0x005d, [0x5b] = 0x0024,
|
||||
[0x5c] = 0x002a, [0x5d] = 0x0029, [0x5e] = 0x003b, [0x5f] = 0x005e,
|
||||
[0x60] = 0x002d, [0x61] = 0x002f, [0x62] = 0x0403, [0x63] = 0x0401,
|
||||
[0x64] = 0x0404, [0x65] = 0x0405, [0x66] = 0x0406, [0x67] = 0x0407,
|
||||
[0x68] = 0x0408, [0x69] = 0x0409, [0x6a] = 0x007c, [0x6b] = 0x002c,
|
||||
[0x6c] = 0x0025, [0x6d] = 0x005f, [0x6e] = 0x003e, [0x6f] = 0x003f,
|
||||
[0x70] = 0x040a, [0x71] = 0x040b, [0x72] = 0x040c, [0x73] = 0x00ad,
|
||||
[0x74] = 0x040e, [0x75] = 0x040f, [0x76] = 0x044e, [0x77] = 0x0430,
|
||||
[0x78] = 0x0431, [0x79] = 0x0060, [0x7a] = 0x003a, [0x7b] = 0x0023,
|
||||
[0x7c] = 0x0040, [0x7d] = 0x0027, [0x7e] = 0x003d, [0x7f] = 0x0022,
|
||||
[0x80] = 0x0446, [0x81] = 0x0061, [0x82] = 0x0062, [0x83] = 0x0063,
|
||||
[0x84] = 0x0064, [0x85] = 0x0065, [0x86] = 0x0066, [0x87] = 0x0067,
|
||||
[0x88] = 0x0068, [0x89] = 0x0069, [0x8a] = 0x0434, [0x8b] = 0x0435,
|
||||
[0x8c] = 0x0444, [0x8d] = 0x0433, [0x8e] = 0x0445, [0x8f] = 0x0438,
|
||||
[0x90] = 0x0439, [0x91] = 0x006a, [0x92] = 0x006b, [0x93] = 0x006c,
|
||||
[0x94] = 0x006d, [0x95] = 0x006e, [0x96] = 0x006f, [0x97] = 0x0070,
|
||||
[0x98] = 0x0071, [0x99] = 0x0072, [0x9a] = 0x043a, [0x9b] = 0x043b,
|
||||
[0x9c] = 0x043c, [0x9d] = 0x043d, [0x9e] = 0x043e, [0x9f] = 0x043f,
|
||||
[0xa0] = 0x044f, [0xa1] = 0x007e, [0xa2] = 0x0073, [0xa3] = 0x0074,
|
||||
[0xa4] = 0x0075, [0xa5] = 0x0076, [0xa6] = 0x0077, [0xa7] = 0x0078,
|
||||
[0xa8] = 0x0079, [0xa9] = 0x007a, [0xaa] = 0x0440, [0xab] = 0x0441,
|
||||
[0xac] = 0x0442, [0xad] = 0x0443, [0xae] = 0x0436, [0xaf] = 0x0432,
|
||||
[0xb0] = 0x044c, [0xb1] = 0x044b, [0xb2] = 0x0437, [0xb3] = 0x0448,
|
||||
[0xb4] = 0x044d, [0xb5] = 0x0449, [0xb6] = 0x0447, [0xb7] = 0x044a,
|
||||
[0xb8] = 0x042e, [0xb9] = 0x0410, [0xba] = 0x0411, [0xbb] = 0x0426,
|
||||
[0xbc] = 0x0414, [0xbd] = 0x0415, [0xbe] = 0x0424, [0xbf] = 0x0413,
|
||||
[0xc0] = 0x007b, [0xc1] = 0x0041, [0xc2] = 0x0042, [0xc3] = 0x0043,
|
||||
[0xc4] = 0x0044, [0xc5] = 0x0045, [0xc6] = 0x0046, [0xc7] = 0x0047,
|
||||
[0xc8] = 0x0048, [0xc9] = 0x0049, [0xca] = 0x0425, [0xcb] = 0x0418,
|
||||
[0xcc] = 0x0419, [0xcd] = 0x041a, [0xce] = 0x041b, [0xcf] = 0x041c,
|
||||
[0xd0] = 0x007d, [0xd1] = 0x004a, [0xd2] = 0x004b, [0xd3] = 0x004c,
|
||||
[0xd4] = 0x004d, [0xd5] = 0x004e, [0xd6] = 0x004f, [0xd7] = 0x0050,
|
||||
[0xd8] = 0x0051, [0xd9] = 0x0052, [0xda] = 0x041d, [0xdb] = 0x041e,
|
||||
[0xdc] = 0x041f, [0xdd] = 0x042f, [0xde] = 0x0420, [0xdf] = 0x0421,
|
||||
[0xe0] = 0x005c, [0xe1] = 0x00a7, [0xe2] = 0x0053, [0xe3] = 0x0054,
|
||||
[0xe4] = 0x0055, [0xe5] = 0x0056, [0xe6] = 0x0057, [0xe7] = 0x0058,
|
||||
[0xe8] = 0x0059, [0xe9] = 0x005a, [0xea] = 0x0422, [0xeb] = 0x0423,
|
||||
[0xec] = 0x0416, [0xed] = 0x0412, [0xee] = 0x042c, [0xef] = 0x042b,
|
||||
[0xf0] = 0x0030, [0xf1] = 0x0031, [0xf2] = 0x0032, [0xf3] = 0x0033,
|
||||
[0xf4] = 0x0034, [0xf5] = 0x0035, [0xf6] = 0x0036, [0xf7] = 0x0037,
|
||||
[0xf8] = 0x0038, [0xf9] = 0x0039, [0xfa] = 0x0417, [0xfb] = 0x0428,
|
||||
[0xfc] = 0x042d, [0xfd] = 0x0429, [0xfe] = 0x0427, [0xff] = 0x009f
|
||||
};
|
||||
|
||||
static const struct gap from_idx[] =
|
||||
{
|
||||
{ start: 0x0000, end: 0x00a0, idx: 0 },
|
||||
{ start: 0x00a7, end: 0x00ad, idx: -6 },
|
||||
{ start: 0x0401, end: 0x045f, idx: -857 },
|
||||
{ start: 0x2116, end: 0x2116, idx: -8207 },
|
||||
{ start: 0xffff, end: 0xffff, idx: 0 }
|
||||
};
|
||||
|
||||
static const char from_ucs4[] =
|
||||
{
|
||||
'\x00', '\x01', '\x02', '\x03', '\x37', '\x2d', '\x2e', '\x2f',
|
||||
'\x16', '\x05', '\x25', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
|
||||
'\x10', '\x11', '\x12', '\x13', '\x3c', '\x3d', '\x32', '\x26',
|
||||
'\x18', '\x19', '\x3f', '\x27', '\x1c', '\x1d', '\x1e', '\x1f',
|
||||
'\x40', '\x4f', '\x7f', '\x7b', '\x5b', '\x6c', '\x50', '\x7d',
|
||||
'\x4d', '\x5d', '\x5c', '\x4e', '\x6b', '\x60', '\x4b', '\x61',
|
||||
'\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
|
||||
'\xf8', '\xf9', '\x7a', '\x5e', '\x4c', '\x7e', '\x6e', '\x6f',
|
||||
'\x7c', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
|
||||
'\xc8', '\xc9', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6',
|
||||
'\xd7', '\xd8', '\xd9', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6',
|
||||
'\xe7', '\xe8', '\xe9', '\x4a', '\xe0', '\x5a', '\x5f', '\x6d',
|
||||
'\x79', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
|
||||
'\x88', '\x89', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96',
|
||||
'\x97', '\x98', '\x99', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6',
|
||||
'\xa7', '\xa8', '\xa9', '\xc0', '\x6a', '\xd0', '\xa1', '\x07',
|
||||
'\x20', '\x21', '\x22', '\x23', '\x24', '\x15', '\x06', '\x17',
|
||||
'\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x09', '\x0a', '\x1b',
|
||||
'\x30', '\x31', '\x1a', '\x33', '\x34', '\x35', '\x36', '\x08',
|
||||
'\x38', '\x39', '\x3a', '\x3b', '\x04', '\x14', '\x3e', '\xff',
|
||||
'\x41', '\xe1', '\x00', '\x00', '\x00', '\x00', '\x00', '\x73',
|
||||
'\x63', '\x59', '\x62', '\x64', '\x65', '\x66', '\x67', '\x68',
|
||||
'\x69', '\x70', '\x71', '\x72', '\x00', '\x74', '\x75', '\xb9',
|
||||
'\xba', '\xed', '\xbf', '\xbc', '\xbd', '\xec', '\xfa', '\xcb',
|
||||
'\xcc', '\xcd', '\xce', '\xcf', '\xda', '\xdb', '\xdc', '\xde',
|
||||
'\xdf', '\xea', '\xeb', '\xbe', '\xca', '\xbb', '\xfe', '\xfb',
|
||||
'\xfd', '\x57', '\xef', '\xee', '\xfc', '\xb8', '\xdd', '\x77',
|
||||
'\x78', '\xaf', '\x8d', '\x8a', '\x8b', '\xae', '\xb2', '\x8f',
|
||||
'\x90', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e', '\x9f', '\xaa',
|
||||
'\xab', '\xac', '\xad', '\x8c', '\x8e', '\x80', '\xb6', '\xb3',
|
||||
'\xb5', '\xb7', '\xb1', '\xb0', '\xb4', '\x76', '\xa0', '\x00',
|
||||
'\x44', '\x42', '\x43', '\x45', '\x46', '\x47', '\x48', '\x49',
|
||||
'\x51', '\x52', '\x53', '\x54', '\x00', '\x55', '\x56', '\x58'
|
||||
};
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/* Conversion from and to IBM1122.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/* Get the conversion table. */
|
||||
#define TABLES <ibm1122.h>
|
||||
|
||||
#define CHARSET_NAME "IBM1122//"
|
||||
#define HAS_HOLES 0 /* All 256 character are defined. */
|
||||
|
||||
#include <8bit-gap.c>
|
||||
|
|
@ -0,0 +1,133 @@
|
|||
/* Mapping table for IBM1122.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
static const uint32_t to_ucs4[256] =
|
||||
{
|
||||
[0x00] = 0x0000, [0x01] = 0x0001, [0x02] = 0x0002, [0x03] = 0x0003,
|
||||
[0x04] = 0x009c, [0x05] = 0x0009, [0x06] = 0x0086, [0x07] = 0x007f,
|
||||
[0x08] = 0x0097, [0x09] = 0x008d, [0x0a] = 0x008e, [0x0b] = 0x000b,
|
||||
[0x0c] = 0x000c, [0x0d] = 0x000d, [0x0e] = 0x000e, [0x0f] = 0x000f,
|
||||
[0x10] = 0x0010, [0x11] = 0x0011, [0x12] = 0x0012, [0x13] = 0x0013,
|
||||
[0x14] = 0x009d, [0x15] = 0x0085, [0x16] = 0x0008, [0x17] = 0x0087,
|
||||
[0x18] = 0x0018, [0x19] = 0x0019, [0x1a] = 0x0092, [0x1b] = 0x008f,
|
||||
[0x1c] = 0x001c, [0x1d] = 0x001d, [0x1e] = 0x001e, [0x1f] = 0x001f,
|
||||
[0x20] = 0x0080, [0x21] = 0x0081, [0x22] = 0x0082, [0x23] = 0x0083,
|
||||
[0x24] = 0x0084, [0x25] = 0x000a, [0x26] = 0x0017, [0x27] = 0x001b,
|
||||
[0x28] = 0x0088, [0x29] = 0x0089, [0x2a] = 0x008a, [0x2b] = 0x008b,
|
||||
[0x2c] = 0x008c, [0x2d] = 0x0005, [0x2e] = 0x0006, [0x2f] = 0x0007,
|
||||
[0x30] = 0x0090, [0x31] = 0x0091, [0x32] = 0x0016, [0x33] = 0x0093,
|
||||
[0x34] = 0x0094, [0x35] = 0x0095, [0x36] = 0x0096, [0x37] = 0x0004,
|
||||
[0x38] = 0x0098, [0x39] = 0x0099, [0x3a] = 0x009a, [0x3b] = 0x009b,
|
||||
[0x3c] = 0x0014, [0x3d] = 0x0015, [0x3e] = 0x009e, [0x3f] = 0x001a,
|
||||
[0x40] = 0x0020, [0x41] = 0x00a0, [0x42] = 0x00e2, [0x43] = 0x007b,
|
||||
[0x44] = 0x00e0, [0x45] = 0x00e1, [0x46] = 0x00e3, [0x47] = 0x007d,
|
||||
[0x48] = 0x00e7, [0x49] = 0x00f1, [0x4a] = 0x00a7, [0x4b] = 0x002e,
|
||||
[0x4c] = 0x003c, [0x4d] = 0x0028, [0x4e] = 0x002b, [0x4f] = 0x0021,
|
||||
[0x50] = 0x0026, [0x51] = 0x0060, [0x52] = 0x00ea, [0x53] = 0x00eb,
|
||||
[0x54] = 0x00e8, [0x55] = 0x00ed, [0x56] = 0x00ee, [0x57] = 0x00ef,
|
||||
[0x58] = 0x00ec, [0x59] = 0x00df, [0x5a] = 0x00a4, [0x5b] = 0x00c5,
|
||||
[0x5c] = 0x002a, [0x5d] = 0x0029, [0x5e] = 0x003b, [0x5f] = 0x005e,
|
||||
[0x60] = 0x002d, [0x61] = 0x002f, [0x62] = 0x00c2, [0x63] = 0x0023,
|
||||
[0x64] = 0x00c0, [0x65] = 0x00c1, [0x66] = 0x00c3, [0x67] = 0x0024,
|
||||
[0x68] = 0x00c7, [0x69] = 0x00d1, [0x6a] = 0x00f6, [0x6b] = 0x002c,
|
||||
[0x6c] = 0x0025, [0x6d] = 0x005f, [0x6e] = 0x003e, [0x6f] = 0x003f,
|
||||
[0x70] = 0x00f8, [0x71] = 0x005c, [0x72] = 0x00ca, [0x73] = 0x00cb,
|
||||
[0x74] = 0x00c8, [0x75] = 0x00cd, [0x76] = 0x00ce, [0x77] = 0x00cf,
|
||||
[0x78] = 0x00cc, [0x79] = 0x00e9, [0x7a] = 0x003a, [0x7b] = 0x00c4,
|
||||
[0x7c] = 0x00d6, [0x7d] = 0x0027, [0x7e] = 0x003d, [0x7f] = 0x0022,
|
||||
[0x80] = 0x00d8, [0x81] = 0x0061, [0x82] = 0x0062, [0x83] = 0x0063,
|
||||
[0x84] = 0x0064, [0x85] = 0x0065, [0x86] = 0x0066, [0x87] = 0x0067,
|
||||
[0x88] = 0x0068, [0x89] = 0x0069, [0x8a] = 0x00ab, [0x8b] = 0x00bb,
|
||||
[0x8c] = 0x0161, [0x8d] = 0x00fd, [0x8e] = 0x017e, [0x8f] = 0x00b1,
|
||||
[0x90] = 0x00b0, [0x91] = 0x006a, [0x92] = 0x006b, [0x93] = 0x006c,
|
||||
[0x94] = 0x006d, [0x95] = 0x006e, [0x96] = 0x006f, [0x97] = 0x0070,
|
||||
[0x98] = 0x0071, [0x99] = 0x0072, [0x9a] = 0x00aa, [0x9b] = 0x00ba,
|
||||
[0x9c] = 0x00e6, [0x9d] = 0x00b8, [0x9e] = 0x00c6, [0x9f] = 0x005d,
|
||||
[0xa0] = 0x00b5, [0xa1] = 0x00fc, [0xa2] = 0x0073, [0xa3] = 0x0074,
|
||||
[0xa4] = 0x0075, [0xa5] = 0x0076, [0xa6] = 0x0077, [0xa7] = 0x0078,
|
||||
[0xa8] = 0x0079, [0xa9] = 0x007a, [0xaa] = 0x00a1, [0xab] = 0x00bf,
|
||||
[0xac] = 0x0160, [0xad] = 0x00dd, [0xae] = 0x017d, [0xaf] = 0x00ae,
|
||||
[0xb0] = 0x00a2, [0xb1] = 0x00a3, [0xb2] = 0x00a5, [0xb3] = 0x00b7,
|
||||
[0xb4] = 0x00a9, [0xb5] = 0x005b, [0xb6] = 0x00b6, [0xb7] = 0x00bc,
|
||||
[0xb8] = 0x00bd, [0xb9] = 0x00be, [0xba] = 0x00ac, [0xbb] = 0x007c,
|
||||
[0xbc] = 0x00af, [0xbd] = 0x00a8, [0xbe] = 0x00b4, [0xbf] = 0x00d7,
|
||||
[0xc0] = 0x00e4, [0xc1] = 0x0041, [0xc2] = 0x0042, [0xc3] = 0x0043,
|
||||
[0xc4] = 0x0044, [0xc5] = 0x0045, [0xc6] = 0x0046, [0xc7] = 0x0047,
|
||||
[0xc8] = 0x0048, [0xc9] = 0x0049, [0xca] = 0x00ad, [0xcb] = 0x00f4,
|
||||
[0xcc] = 0x00a6, [0xcd] = 0x00f2, [0xce] = 0x00f3, [0xcf] = 0x00f5,
|
||||
[0xd0] = 0x00e5, [0xd1] = 0x004a, [0xd2] = 0x004b, [0xd3] = 0x004c,
|
||||
[0xd4] = 0x004d, [0xd5] = 0x004e, [0xd6] = 0x004f, [0xd7] = 0x0050,
|
||||
[0xd8] = 0x0051, [0xd9] = 0x0052, [0xda] = 0x00b9, [0xdb] = 0x00fb,
|
||||
[0xdc] = 0x007e, [0xdd] = 0x00f9, [0xde] = 0x00fa, [0xdf] = 0x00ff,
|
||||
[0xe0] = 0x00c9, [0xe1] = 0x00f7, [0xe2] = 0x0053, [0xe3] = 0x0054,
|
||||
[0xe4] = 0x0055, [0xe5] = 0x0056, [0xe6] = 0x0057, [0xe7] = 0x0058,
|
||||
[0xe8] = 0x0059, [0xe9] = 0x005a, [0xea] = 0x00b2, [0xeb] = 0x00d4,
|
||||
[0xec] = 0x0040, [0xed] = 0x00d2, [0xee] = 0x00d3, [0xef] = 0x00d5,
|
||||
[0xf0] = 0x0030, [0xf1] = 0x0031, [0xf2] = 0x0032, [0xf3] = 0x0033,
|
||||
[0xf4] = 0x0034, [0xf5] = 0x0035, [0xf6] = 0x0036, [0xf7] = 0x0037,
|
||||
[0xf8] = 0x0038, [0xf9] = 0x0039, [0xfa] = 0x00b3, [0xfb] = 0x00db,
|
||||
[0xfc] = 0x00dc, [0xfd] = 0x00d9, [0xfe] = 0x00da, [0xff] = 0x009f
|
||||
};
|
||||
|
||||
static const struct gap from_idx[] =
|
||||
{
|
||||
{ start: 0x0000, end: 0x00ff, idx: 0 },
|
||||
{ start: 0x0160, end: 0x0161, idx: -96 },
|
||||
{ start: 0x017d, end: 0x017e, idx: -123 },
|
||||
{ start: 0x203e, end: 0x203e, idx: -7994 },
|
||||
{ start: 0xffff, end: 0xffff, idx: 0 }
|
||||
};
|
||||
|
||||
static const char from_ucs4[] =
|
||||
{
|
||||
'\x00', '\x01', '\x02', '\x03', '\x37', '\x2d', '\x2e', '\x2f',
|
||||
'\x16', '\x05', '\x25', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
|
||||
'\x10', '\x11', '\x12', '\x13', '\x3c', '\x3d', '\x32', '\x26',
|
||||
'\x18', '\x19', '\x3f', '\x27', '\x1c', '\x1d', '\x1e', '\x1f',
|
||||
'\x40', '\x4f', '\x7f', '\x63', '\x67', '\x6c', '\x50', '\x7d',
|
||||
'\x4d', '\x5d', '\x5c', '\x4e', '\x6b', '\x60', '\x4b', '\x61',
|
||||
'\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
|
||||
'\xf8', '\xf9', '\x7a', '\x5e', '\x4c', '\x7e', '\x6e', '\x6f',
|
||||
'\xec', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
|
||||
'\xc8', '\xc9', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6',
|
||||
'\xd7', '\xd8', '\xd9', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6',
|
||||
'\xe7', '\xe8', '\xe9', '\xb5', '\x71', '\x9f', '\x5f', '\x6d',
|
||||
'\x51', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
|
||||
'\x88', '\x89', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96',
|
||||
'\x97', '\x98', '\x99', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6',
|
||||
'\xa7', '\xa8', '\xa9', '\x43', '\xbb', '\x47', '\xdc', '\x07',
|
||||
'\x20', '\x21', '\x22', '\x23', '\x24', '\x15', '\x06', '\x17',
|
||||
'\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x09', '\x0a', '\x1b',
|
||||
'\x30', '\x31', '\x1a', '\x33', '\x34', '\x35', '\x36', '\x08',
|
||||
'\x38', '\x39', '\x3a', '\x3b', '\x04', '\x14', '\x3e', '\xff',
|
||||
'\x41', '\xaa', '\xb0', '\xb1', '\x5a', '\xb2', '\xcc', '\x4a',
|
||||
'\xbd', '\xb4', '\x9a', '\x8a', '\xba', '\xca', '\xaf', '\xbc',
|
||||
'\x90', '\x8f', '\xea', '\xfa', '\xbe', '\xa0', '\xb6', '\xb3',
|
||||
'\x9d', '\xda', '\x9b', '\x8b', '\xb7', '\xb8', '\xb9', '\xab',
|
||||
'\x64', '\x65', '\x62', '\x66', '\x7b', '\x5b', '\x9e', '\x68',
|
||||
'\x74', '\xe0', '\x72', '\x73', '\x78', '\x75', '\x76', '\x77',
|
||||
'\x00', '\x69', '\xed', '\xee', '\xeb', '\xef', '\x7c', '\xbf',
|
||||
'\x80', '\xfd', '\xfe', '\xfb', '\xfc', '\xad', '\x00', '\x59',
|
||||
'\x44', '\x45', '\x42', '\x46', '\xc0', '\xd0', '\x9c', '\x48',
|
||||
'\x54', '\x79', '\x52', '\x53', '\x58', '\x55', '\x56', '\x57',
|
||||
'\x00', '\x49', '\xcd', '\xce', '\xcb', '\xcf', '\x6a', '\xe1',
|
||||
'\x70', '\xdd', '\xde', '\xdb', '\xa1', '\x8d', '\x00', '\xdf',
|
||||
'\xac', '\x8c', '\xae', '\x8e', '\xbc'
|
||||
};
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/* Conversion from and to IBM1137.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/* Get the conversion table. */
|
||||
#define TABLES <ibm1137.h>
|
||||
|
||||
#define CHARSET_NAME "IBM1137//"
|
||||
#define HAS_HOLES 1 /* Not all 256 character are defined. */
|
||||
|
||||
#include <8bit-gap.c>
|
||||
|
|
@ -0,0 +1,133 @@
|
|||
/* Mapping table for IBM1137.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
static const uint32_t to_ucs4[256] =
|
||||
{
|
||||
[0x00] = 0x0000, [0x01] = 0x0001, [0x02] = 0x0002, [0x03] = 0x0003,
|
||||
[0x04] = 0x009c, [0x05] = 0x0009, [0x06] = 0x0086, [0x07] = 0x007f,
|
||||
[0x08] = 0x0097, [0x09] = 0x008d, [0x0a] = 0x008e, [0x0b] = 0x000b,
|
||||
[0x0c] = 0x000c, [0x0d] = 0x000d, [0x0e] = 0x000e, [0x0f] = 0x000f,
|
||||
[0x10] = 0x0010, [0x11] = 0x0011, [0x12] = 0x0012, [0x13] = 0x0013,
|
||||
[0x14] = 0x009d, [0x15] = 0x0085, [0x16] = 0x0008, [0x17] = 0x0087,
|
||||
[0x18] = 0x0018, [0x19] = 0x0019, [0x1a] = 0x0092, [0x1b] = 0x008f,
|
||||
[0x1c] = 0x001c, [0x1d] = 0x001d, [0x1e] = 0x001e, [0x1f] = 0x001f,
|
||||
[0x20] = 0x0080, [0x21] = 0x0081, [0x22] = 0x0082, [0x23] = 0x0083,
|
||||
[0x24] = 0x0084, [0x25] = 0x000a, [0x26] = 0x0017, [0x27] = 0x001b,
|
||||
[0x28] = 0x0088, [0x29] = 0x0089, [0x2a] = 0x008a, [0x2b] = 0x008b,
|
||||
[0x2c] = 0x008c, [0x2d] = 0x0005, [0x2e] = 0x0006, [0x2f] = 0x0007,
|
||||
[0x30] = 0x0090, [0x31] = 0x0091, [0x32] = 0x0016, [0x33] = 0x0093,
|
||||
[0x34] = 0x0094, [0x35] = 0x0095, [0x36] = 0x0096, [0x37] = 0x0004,
|
||||
[0x38] = 0x0098, [0x39] = 0x0099, [0x3a] = 0x009a, [0x3b] = 0x009b,
|
||||
[0x3c] = 0x0014, [0x3d] = 0x0015, [0x3e] = 0x009e, [0x3f] = 0x001a,
|
||||
[0x40] = 0x0020, [0x41] = 0x00a0, [0x42] = 0x0901, [0x43] = 0x0902,
|
||||
[0x44] = 0x0903, [0x45] = 0x0905, [0x46] = 0x0906, [0x47] = 0x0907,
|
||||
[0x48] = 0x0908, [0x49] = 0x0909, [0x4a] = 0x090a, [0x4b] = 0x002e,
|
||||
[0x4c] = 0x003c, [0x4d] = 0x0028, [0x4e] = 0x002b, [0x4f] = 0x007c,
|
||||
[0x50] = 0x0026, [0x51] = 0x090b, [0x52] = 0x090c, [0x53] = 0x090d,
|
||||
[0x54] = 0x090e, [0x55] = 0x090f, [0x56] = 0x0910, [0x57] = 0x0911,
|
||||
[0x58] = 0x0912, [0x59] = 0x0913, [0x5a] = 0x0021, [0x5b] = 0x0024,
|
||||
[0x5c] = 0x002a, [0x5d] = 0x0029, [0x5e] = 0x003b, [0x5f] = 0x005e,
|
||||
[0x60] = 0x002d, [0x61] = 0x002f, [0x62] = 0x0914, [0x63] = 0x0915,
|
||||
[0x64] = 0x0916, [0x65] = 0x0917, [0x66] = 0x0918, [0x67] = 0x0919,
|
||||
[0x68] = 0x091a, [0x69] = 0x091b, [0x6a] = 0x091c, [0x6b] = 0x002c,
|
||||
[0x6c] = 0x0025, [0x6d] = 0x005f, [0x6e] = 0x003e, [0x6f] = 0x003f,
|
||||
[0x70] = 0x091d, [0x71] = 0x091e, [0x72] = 0x091f, [0x73] = 0x0920,
|
||||
[0x74] = 0x0921, [0x75] = 0x0922, [0x76] = 0x0923, [0x77] = 0x0924,
|
||||
[0x78] = 0x0925, [0x79] = 0x0060, [0x7a] = 0x003a, [0x7b] = 0x0023,
|
||||
[0x7c] = 0x0040, [0x7d] = 0x0027, [0x7e] = 0x003d, [0x7f] = 0x0022,
|
||||
[0x80] = 0x0926, [0x81] = 0x0061, [0x82] = 0x0062, [0x83] = 0x0063,
|
||||
[0x84] = 0x0064, [0x85] = 0x0065, [0x86] = 0x0066, [0x87] = 0x0067,
|
||||
[0x88] = 0x0068, [0x89] = 0x0069, [0x8a] = 0x0927, [0x8b] = 0x0928,
|
||||
[0x8c] = 0x092a, [0x8d] = 0x092b, [0x8e] = 0x092c, [0x8f] = 0x092d,
|
||||
[0x90] = 0x092e, [0x91] = 0x006a, [0x92] = 0x006b, [0x93] = 0x006c,
|
||||
[0x94] = 0x006d, [0x95] = 0x006e, [0x96] = 0x006f, [0x97] = 0x0070,
|
||||
[0x98] = 0x0071, [0x99] = 0x0072, [0x9a] = 0x092f, [0x9b] = 0x0930,
|
||||
[0x9c] = 0x0932, [0x9d] = 0x0933, [0x9e] = 0x0935, [0x9f] = 0x0936,
|
||||
[0xa0] = 0x200c, [0xa1] = 0x007e, [0xa2] = 0x0073, [0xa3] = 0x0074,
|
||||
[0xa4] = 0x0075, [0xa5] = 0x0076, [0xa6] = 0x0077, [0xa7] = 0x0078,
|
||||
[0xa8] = 0x0079, [0xa9] = 0x007a, [0xaa] = 0x0937, [0xab] = 0x0938,
|
||||
[0xac] = 0x0939, [0xad] = 0x005b, [0xae] = 0x093c, [0xaf] = 0x093d,
|
||||
[0xb0] = 0x093e, [0xb1] = 0x093f, [0xb2] = 0x0940, [0xb3] = 0x0941,
|
||||
[0xb4] = 0x0942, [0xb5] = 0x0943, [0xb6] = 0x0944, [0xb7] = 0x0945,
|
||||
[0xb8] = 0x0946, [0xb9] = 0x0947, [0xba] = 0x0948, [0xbb] = 0x0949,
|
||||
[0xbc] = 0x094a, [0xbd] = 0x005d, [0xbe] = 0x094b, [0xbf] = 0x094c,
|
||||
[0xc0] = 0x007b, [0xc1] = 0x0041, [0xc2] = 0x0042, [0xc3] = 0x0043,
|
||||
[0xc4] = 0x0044, [0xc5] = 0x0045, [0xc6] = 0x0046, [0xc7] = 0x0047,
|
||||
[0xc8] = 0x0048, [0xc9] = 0x0049, [0xca] = 0x094d, [0xcb] = 0x0950,
|
||||
[0xcc] = 0x0951, [0xcd] = 0x0952, [0xd0] = 0x007d, [0xd1] = 0x004a,
|
||||
[0xd2] = 0x004b, [0xd3] = 0x004c, [0xd4] = 0x004d, [0xd5] = 0x004e,
|
||||
[0xd6] = 0x004f, [0xd7] = 0x0050, [0xd8] = 0x0051, [0xd9] = 0x0052,
|
||||
[0xda] = 0x0960, [0xdb] = 0x0961, [0xdc] = 0x0962, [0xdd] = 0x0963,
|
||||
[0xde] = 0x0964, [0xdf] = 0x0965, [0xe0] = 0x005c, [0xe1] = 0x200d,
|
||||
[0xe2] = 0x0053, [0xe3] = 0x0054, [0xe4] = 0x0055, [0xe5] = 0x0056,
|
||||
[0xe6] = 0x0057, [0xe7] = 0x0058, [0xe8] = 0x0059, [0xe9] = 0x005a,
|
||||
[0xea] = 0x0966, [0xeb] = 0x0967, [0xec] = 0x0968, [0xed] = 0x0969,
|
||||
[0xee] = 0x096a, [0xef] = 0x096b, [0xf0] = 0x0030, [0xf1] = 0x0031,
|
||||
[0xf2] = 0x0032, [0xf3] = 0x0033, [0xf4] = 0x0034, [0xf5] = 0x0035,
|
||||
[0xf6] = 0x0036, [0xf7] = 0x0037, [0xf8] = 0x0038, [0xf9] = 0x0039,
|
||||
[0xfa] = 0x096c, [0xfb] = 0x096d, [0xfc] = 0x096e, [0xfd] = 0x096f,
|
||||
[0xfe] = 0x0970, [0xff] = 0x009f
|
||||
};
|
||||
|
||||
static const struct gap from_idx[] =
|
||||
{
|
||||
{ start: 0x0000, end: 0x00a0, idx: 0 },
|
||||
{ start: 0x0901, end: 0x0952, idx: -2144 },
|
||||
{ start: 0x0960, end: 0x0970, idx: -2157 },
|
||||
{ start: 0x200c, end: 0x200d, idx: -7944 },
|
||||
{ start: 0xffff, end: 0xffff, idx: 0 }
|
||||
};
|
||||
|
||||
static const char from_ucs4[] =
|
||||
{
|
||||
'\x00', '\x01', '\x02', '\x03', '\x37', '\x2d', '\x2e', '\x2f',
|
||||
'\x16', '\x05', '\x25', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
|
||||
'\x10', '\x11', '\x12', '\x13', '\x3c', '\x3d', '\x32', '\x26',
|
||||
'\x18', '\x19', '\x3f', '\x27', '\x1c', '\x1d', '\x1e', '\x1f',
|
||||
'\x40', '\x5a', '\x7f', '\x7b', '\x5b', '\x6c', '\x50', '\x7d',
|
||||
'\x4d', '\x5d', '\x5c', '\x4e', '\x6b', '\x60', '\x4b', '\x61',
|
||||
'\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
|
||||
'\xf8', '\xf9', '\x7a', '\x5e', '\x4c', '\x7e', '\x6e', '\x6f',
|
||||
'\x7c', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
|
||||
'\xc8', '\xc9', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6',
|
||||
'\xd7', '\xd8', '\xd9', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6',
|
||||
'\xe7', '\xe8', '\xe9', '\xad', '\xe0', '\xbd', '\x5f', '\x6d',
|
||||
'\x79', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
|
||||
'\x88', '\x89', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96',
|
||||
'\x97', '\x98', '\x99', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6',
|
||||
'\xa7', '\xa8', '\xa9', '\xc0', '\x4f', '\xd0', '\xa1', '\x07',
|
||||
'\x20', '\x21', '\x22', '\x23', '\x24', '\x15', '\x06', '\x17',
|
||||
'\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x09', '\x0a', '\x1b',
|
||||
'\x30', '\x31', '\x1a', '\x33', '\x34', '\x35', '\x36', '\x08',
|
||||
'\x38', '\x39', '\x3a', '\x3b', '\x04', '\x14', '\x3e', '\xff',
|
||||
'\x41', '\x42', '\x43', '\x44', '\x00', '\x45', '\x46', '\x47',
|
||||
'\x48', '\x49', '\x4a', '\x51', '\x52', '\x53', '\x54', '\x55',
|
||||
'\x56', '\x57', '\x58', '\x59', '\x62', '\x63', '\x64', '\x65',
|
||||
'\x66', '\x67', '\x68', '\x69', '\x6a', '\x70', '\x71', '\x72',
|
||||
'\x73', '\x74', '\x75', '\x76', '\x77', '\x78', '\x80', '\x8a',
|
||||
'\x8b', '\x00', '\x8c', '\x8d', '\x8e', '\x8f', '\x90', '\x9a',
|
||||
'\x9b', '\x00', '\x9c', '\x9d', '\x00', '\x9e', '\x9f', '\xaa',
|
||||
'\xab', '\xac', '\x00', '\x00', '\xae', '\xaf', '\xb0', '\xb1',
|
||||
'\xb2', '\xb3', '\xb4', '\xb5', '\xb6', '\xb7', '\xb8', '\xb9',
|
||||
'\xba', '\xbb', '\xbc', '\xbe', '\xbf', '\xca', '\x00', '\x00',
|
||||
'\xcb', '\xcc', '\xcd', '\xda', '\xdb', '\xdc', '\xdd', '\xde',
|
||||
'\xdf', '\xea', '\xeb', '\xec', '\xed', '\xee', '\xef', '\xfa',
|
||||
'\xfb', '\xfc', '\xfd', '\xfe', '\xa0', '\xe1'
|
||||
};
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/* Conversion from and to IBM1153.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/* Get the conversion table. */
|
||||
#define TABLES <ibm1153.h>
|
||||
|
||||
#define CHARSET_NAME "IBM1153//"
|
||||
#define HAS_HOLES 0 /* All 256 character are defined. */
|
||||
|
||||
#include <8bit-gap.c>
|
||||
|
|
@ -0,0 +1,147 @@
|
|||
/* Mapping table for IBM1153.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
static const uint32_t to_ucs4[256] =
|
||||
{
|
||||
[0x00] = 0x0000, [0x01] = 0x0001, [0x02] = 0x0002, [0x03] = 0x0003,
|
||||
[0x04] = 0x009c, [0x05] = 0x0009, [0x06] = 0x0086, [0x07] = 0x007f,
|
||||
[0x08] = 0x0097, [0x09] = 0x008d, [0x0a] = 0x008e, [0x0b] = 0x000b,
|
||||
[0x0c] = 0x000c, [0x0d] = 0x000d, [0x0e] = 0x000e, [0x0f] = 0x000f,
|
||||
[0x10] = 0x0010, [0x11] = 0x0011, [0x12] = 0x0012, [0x13] = 0x0013,
|
||||
[0x14] = 0x009d, [0x15] = 0x0085, [0x16] = 0x0008, [0x17] = 0x0087,
|
||||
[0x18] = 0x0018, [0x19] = 0x0019, [0x1a] = 0x0092, [0x1b] = 0x008f,
|
||||
[0x1c] = 0x001c, [0x1d] = 0x001d, [0x1e] = 0x001e, [0x1f] = 0x001f,
|
||||
[0x20] = 0x0080, [0x21] = 0x0081, [0x22] = 0x0082, [0x23] = 0x0083,
|
||||
[0x24] = 0x0084, [0x25] = 0x000a, [0x26] = 0x0017, [0x27] = 0x001b,
|
||||
[0x28] = 0x0088, [0x29] = 0x0089, [0x2a] = 0x008a, [0x2b] = 0x008b,
|
||||
[0x2c] = 0x008c, [0x2d] = 0x0005, [0x2e] = 0x0006, [0x2f] = 0x0007,
|
||||
[0x30] = 0x0090, [0x31] = 0x0091, [0x32] = 0x0016, [0x33] = 0x0093,
|
||||
[0x34] = 0x0094, [0x35] = 0x0095, [0x36] = 0x0096, [0x37] = 0x0004,
|
||||
[0x38] = 0x0098, [0x39] = 0x0099, [0x3a] = 0x009a, [0x3b] = 0x009b,
|
||||
[0x3c] = 0x0014, [0x3d] = 0x0015, [0x3e] = 0x009e, [0x3f] = 0x001a,
|
||||
[0x40] = 0x0020, [0x41] = 0x00a0, [0x42] = 0x00e2, [0x43] = 0x00e4,
|
||||
[0x44] = 0x0163, [0x45] = 0x00e1, [0x46] = 0x0103, [0x47] = 0x010d,
|
||||
[0x48] = 0x00e7, [0x49] = 0x0107, [0x4a] = 0x005b, [0x4b] = 0x002e,
|
||||
[0x4c] = 0x003c, [0x4d] = 0x0028, [0x4e] = 0x002b, [0x4f] = 0x0021,
|
||||
[0x50] = 0x0026, [0x51] = 0x00e9, [0x52] = 0x0119, [0x53] = 0x00eb,
|
||||
[0x54] = 0x016f, [0x55] = 0x00ed, [0x56] = 0x00ee, [0x57] = 0x013e,
|
||||
[0x58] = 0x013a, [0x59] = 0x00df, [0x5a] = 0x005d, [0x5b] = 0x0024,
|
||||
[0x5c] = 0x002a, [0x5d] = 0x0029, [0x5e] = 0x003b, [0x5f] = 0x005e,
|
||||
[0x60] = 0x002d, [0x61] = 0x002f, [0x62] = 0x00c2, [0x63] = 0x00c4,
|
||||
[0x64] = 0x02dd, [0x65] = 0x00c1, [0x66] = 0x0102, [0x67] = 0x010c,
|
||||
[0x68] = 0x00c7, [0x69] = 0x0106, [0x6a] = 0x007c, [0x6b] = 0x002c,
|
||||
[0x6c] = 0x0025, [0x6d] = 0x005f, [0x6e] = 0x003e, [0x6f] = 0x003f,
|
||||
[0x70] = 0x02c7, [0x71] = 0x00c9, [0x72] = 0x0118, [0x73] = 0x00cb,
|
||||
[0x74] = 0x016e, [0x75] = 0x00cd, [0x76] = 0x00ce, [0x77] = 0x013d,
|
||||
[0x78] = 0x0139, [0x79] = 0x0060, [0x7a] = 0x003a, [0x7b] = 0x0023,
|
||||
[0x7c] = 0x0040, [0x7d] = 0x0027, [0x7e] = 0x003d, [0x7f] = 0x0022,
|
||||
[0x80] = 0x02d8, [0x81] = 0x0061, [0x82] = 0x0062, [0x83] = 0x0063,
|
||||
[0x84] = 0x0064, [0x85] = 0x0065, [0x86] = 0x0066, [0x87] = 0x0067,
|
||||
[0x88] = 0x0068, [0x89] = 0x0069, [0x8a] = 0x015b, [0x8b] = 0x0148,
|
||||
[0x8c] = 0x0111, [0x8d] = 0x00fd, [0x8e] = 0x0159, [0x8f] = 0x015f,
|
||||
[0x90] = 0x00b0, [0x91] = 0x006a, [0x92] = 0x006b, [0x93] = 0x006c,
|
||||
[0x94] = 0x006d, [0x95] = 0x006e, [0x96] = 0x006f, [0x97] = 0x0070,
|
||||
[0x98] = 0x0071, [0x99] = 0x0072, [0x9a] = 0x0142, [0x9b] = 0x0144,
|
||||
[0x9c] = 0x0161, [0x9d] = 0x00b8, [0x9e] = 0x02db, [0x9f] = 0x20ac,
|
||||
[0xa0] = 0x0105, [0xa1] = 0x007e, [0xa2] = 0x0073, [0xa3] = 0x0074,
|
||||
[0xa4] = 0x0075, [0xa5] = 0x0076, [0xa6] = 0x0077, [0xa7] = 0x0078,
|
||||
[0xa8] = 0x0079, [0xa9] = 0x007a, [0xaa] = 0x015a, [0xab] = 0x0147,
|
||||
[0xac] = 0x0110, [0xad] = 0x00dd, [0xae] = 0x0158, [0xaf] = 0x015e,
|
||||
[0xb0] = 0x02d9, [0xb1] = 0x0104, [0xb2] = 0x017c, [0xb3] = 0x0162,
|
||||
[0xb4] = 0x017b, [0xb5] = 0x00a7, [0xb6] = 0x017e, [0xb7] = 0x017a,
|
||||
[0xb8] = 0x017d, [0xb9] = 0x0179, [0xba] = 0x0141, [0xbb] = 0x0143,
|
||||
[0xbc] = 0x0160, [0xbd] = 0x00a8, [0xbe] = 0x00b4, [0xbf] = 0x00d7,
|
||||
[0xc0] = 0x007b, [0xc1] = 0x0041, [0xc2] = 0x0042, [0xc3] = 0x0043,
|
||||
[0xc4] = 0x0044, [0xc5] = 0x0045, [0xc6] = 0x0046, [0xc7] = 0x0047,
|
||||
[0xc8] = 0x0048, [0xc9] = 0x0049, [0xca] = 0x00ad, [0xcb] = 0x00f4,
|
||||
[0xcc] = 0x00f6, [0xcd] = 0x0155, [0xce] = 0x00f3, [0xcf] = 0x0151,
|
||||
[0xd0] = 0x007d, [0xd1] = 0x004a, [0xd2] = 0x004b, [0xd3] = 0x004c,
|
||||
[0xd4] = 0x004d, [0xd5] = 0x004e, [0xd6] = 0x004f, [0xd7] = 0x0050,
|
||||
[0xd8] = 0x0051, [0xd9] = 0x0052, [0xda] = 0x011a, [0xdb] = 0x0171,
|
||||
[0xdc] = 0x00fc, [0xdd] = 0x0165, [0xde] = 0x00fa, [0xdf] = 0x011b,
|
||||
[0xe0] = 0x005c, [0xe1] = 0x00f7, [0xe2] = 0x0053, [0xe3] = 0x0054,
|
||||
[0xe4] = 0x0055, [0xe5] = 0x0056, [0xe6] = 0x0057, [0xe7] = 0x0058,
|
||||
[0xe8] = 0x0059, [0xe9] = 0x005a, [0xea] = 0x010f, [0xeb] = 0x00d4,
|
||||
[0xec] = 0x00d6, [0xed] = 0x0154, [0xee] = 0x00d3, [0xef] = 0x0150,
|
||||
[0xf0] = 0x0030, [0xf1] = 0x0031, [0xf2] = 0x0032, [0xf3] = 0x0033,
|
||||
[0xf4] = 0x0034, [0xf5] = 0x0035, [0xf6] = 0x0036, [0xf7] = 0x0037,
|
||||
[0xf8] = 0x0038, [0xf9] = 0x0039, [0xfa] = 0x010e, [0xfb] = 0x0170,
|
||||
[0xfc] = 0x00dc, [0xfd] = 0x0164, [0xfe] = 0x00da, [0xff] = 0x009f
|
||||
};
|
||||
|
||||
static const struct gap from_idx[] =
|
||||
{
|
||||
{ start: 0x0000, end: 0x00a0, idx: 0 },
|
||||
{ start: 0x00a7, end: 0x00b8, idx: -6 },
|
||||
{ start: 0x00c1, end: 0x0111, idx: -14 },
|
||||
{ start: 0x0118, end: 0x011b, idx: -20 },
|
||||
{ start: 0x0139, end: 0x0148, idx: -49 },
|
||||
{ start: 0x0150, end: 0x0165, idx: -56 },
|
||||
{ start: 0x016e, end: 0x0171, idx: -64 },
|
||||
{ start: 0x0179, end: 0x017e, idx: -71 },
|
||||
{ start: 0x02c7, end: 0x02c7, idx: -399 },
|
||||
{ start: 0x02d8, end: 0x02dd, idx: -415 },
|
||||
{ start: 0x20ac, end: 0x20ac, idx: -8045 },
|
||||
{ start: 0xffff, end: 0xffff, idx: 0 }
|
||||
};
|
||||
|
||||
static const char from_ucs4[] =
|
||||
{
|
||||
'\x00', '\x01', '\x02', '\x03', '\x37', '\x2d', '\x2e', '\x2f',
|
||||
'\x16', '\x05', '\x25', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
|
||||
'\x10', '\x11', '\x12', '\x13', '\x3c', '\x3d', '\x32', '\x26',
|
||||
'\x18', '\x19', '\x3f', '\x27', '\x1c', '\x1d', '\x1e', '\x1f',
|
||||
'\x40', '\x4f', '\x7f', '\x7b', '\x5b', '\x6c', '\x50', '\x7d',
|
||||
'\x4d', '\x5d', '\x5c', '\x4e', '\x6b', '\x60', '\x4b', '\x61',
|
||||
'\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
|
||||
'\xf8', '\xf9', '\x7a', '\x5e', '\x4c', '\x7e', '\x6e', '\x6f',
|
||||
'\x7c', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
|
||||
'\xc8', '\xc9', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6',
|
||||
'\xd7', '\xd8', '\xd9', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6',
|
||||
'\xe7', '\xe8', '\xe9', '\x4a', '\xe0', '\x5a', '\x5f', '\x6d',
|
||||
'\x79', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
|
||||
'\x88', '\x89', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96',
|
||||
'\x97', '\x98', '\x99', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6',
|
||||
'\xa7', '\xa8', '\xa9', '\xc0', '\x6a', '\xd0', '\xa1', '\x07',
|
||||
'\x20', '\x21', '\x22', '\x23', '\x24', '\x15', '\x06', '\x17',
|
||||
'\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x09', '\x0a', '\x1b',
|
||||
'\x30', '\x31', '\x1a', '\x33', '\x34', '\x35', '\x36', '\x08',
|
||||
'\x38', '\x39', '\x3a', '\x3b', '\x04', '\x14', '\x3e', '\xff',
|
||||
'\x41', '\xb5', '\xbd', '\x00', '\x00', '\x00', '\x00', '\xca',
|
||||
'\x00', '\x00', '\x90', '\x00', '\x00', '\x00', '\xbe', '\x00',
|
||||
'\x00', '\x00', '\x9d', '\x65', '\x62', '\x00', '\x63', '\x00',
|
||||
'\x00', '\x68', '\x00', '\x71', '\x00', '\x73', '\x00', '\x75',
|
||||
'\x76', '\x00', '\xac', '\x00', '\x00', '\xee', '\xeb', '\x00',
|
||||
'\xec', '\xbf', '\x00', '\x00', '\xfe', '\x00', '\xfc', '\xad',
|
||||
'\x00', '\x59', '\x00', '\x45', '\x42', '\x00', '\x43', '\x00',
|
||||
'\x00', '\x48', '\x00', '\x51', '\x00', '\x53', '\x00', '\x55',
|
||||
'\x56', '\x00', '\x00', '\x00', '\x00', '\xce', '\xcb', '\x00',
|
||||
'\xcc', '\xe1', '\x00', '\x00', '\xde', '\x00', '\xdc', '\x8d',
|
||||
'\x00', '\x00', '\x00', '\x00', '\x66', '\x46', '\xb1', '\xa0',
|
||||
'\x69', '\x49', '\x00', '\x00', '\x00', '\x00', '\x67', '\x47',
|
||||
'\xfa', '\xea', '\xac', '\x8c', '\x72', '\x52', '\xda', '\xdf',
|
||||
'\x78', '\x58', '\x00', '\x00', '\x77', '\x57', '\x00', '\x00',
|
||||
'\xba', '\x9a', '\xbb', '\x9b', '\x00', '\x00', '\xab', '\x8b',
|
||||
'\xef', '\xcf', '\x00', '\x00', '\xed', '\xcd', '\x00', '\x00',
|
||||
'\xae', '\x8e', '\xaa', '\x8a', '\x00', '\x00', '\xaf', '\x8f',
|
||||
'\xbc', '\x9c', '\xb3', '\x44', '\xfd', '\xdd', '\x74', '\x54',
|
||||
'\xfb', '\xdb', '\xb9', '\xb7', '\xb4', '\xb2', '\xb8', '\xb6',
|
||||
'\x70', '\x80', '\xb0', '\x00', '\x9e', '\x00', '\x64', '\x9f'
|
||||
};
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/* Conversion from and to IBM1154.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/* Get the conversion table. */
|
||||
#define TABLES <ibm1154.h>
|
||||
|
||||
#define CHARSET_NAME "IBM1154//"
|
||||
#define HAS_HOLES 0 /* All 256 character are defined. */
|
||||
|
||||
#include <8bit-gap.c>
|
||||
|
|
@ -0,0 +1,134 @@
|
|||
/* Mapping table for IBM1154.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
static const uint32_t to_ucs4[256] =
|
||||
{
|
||||
[0x00] = 0x0000, [0x01] = 0x0001, [0x02] = 0x0002, [0x03] = 0x0003,
|
||||
[0x04] = 0x009c, [0x05] = 0x0009, [0x06] = 0x0086, [0x07] = 0x007f,
|
||||
[0x08] = 0x0097, [0x09] = 0x008d, [0x0a] = 0x008e, [0x0b] = 0x000b,
|
||||
[0x0c] = 0x000c, [0x0d] = 0x000d, [0x0e] = 0x000e, [0x0f] = 0x000f,
|
||||
[0x10] = 0x0010, [0x11] = 0x0011, [0x12] = 0x0012, [0x13] = 0x0013,
|
||||
[0x14] = 0x009d, [0x15] = 0x0085, [0x16] = 0x0008, [0x17] = 0x0087,
|
||||
[0x18] = 0x0018, [0x19] = 0x0019, [0x1a] = 0x0092, [0x1b] = 0x008f,
|
||||
[0x1c] = 0x001c, [0x1d] = 0x001d, [0x1e] = 0x001e, [0x1f] = 0x001f,
|
||||
[0x20] = 0x0080, [0x21] = 0x0081, [0x22] = 0x0082, [0x23] = 0x0083,
|
||||
[0x24] = 0x0084, [0x25] = 0x000a, [0x26] = 0x0017, [0x27] = 0x001b,
|
||||
[0x28] = 0x0088, [0x29] = 0x0089, [0x2a] = 0x008a, [0x2b] = 0x008b,
|
||||
[0x2c] = 0x008c, [0x2d] = 0x0005, [0x2e] = 0x0006, [0x2f] = 0x0007,
|
||||
[0x30] = 0x0090, [0x31] = 0x0091, [0x32] = 0x0016, [0x33] = 0x0093,
|
||||
[0x34] = 0x0094, [0x35] = 0x0095, [0x36] = 0x0096, [0x37] = 0x0004,
|
||||
[0x38] = 0x0098, [0x39] = 0x0099, [0x3a] = 0x009a, [0x3b] = 0x009b,
|
||||
[0x3c] = 0x0014, [0x3d] = 0x0015, [0x3e] = 0x009e, [0x3f] = 0x001a,
|
||||
[0x40] = 0x0020, [0x41] = 0x00a0, [0x42] = 0x0452, [0x43] = 0x0453,
|
||||
[0x44] = 0x0451, [0x45] = 0x0454, [0x46] = 0x0455, [0x47] = 0x0456,
|
||||
[0x48] = 0x0457, [0x49] = 0x0458, [0x4a] = 0x005b, [0x4b] = 0x002e,
|
||||
[0x4c] = 0x003c, [0x4d] = 0x0028, [0x4e] = 0x002b, [0x4f] = 0x0021,
|
||||
[0x50] = 0x0026, [0x51] = 0x0459, [0x52] = 0x045a, [0x53] = 0x045b,
|
||||
[0x54] = 0x045c, [0x55] = 0x045e, [0x56] = 0x045f, [0x57] = 0x042a,
|
||||
[0x58] = 0x2116, [0x59] = 0x0402, [0x5a] = 0x005d, [0x5b] = 0x0024,
|
||||
[0x5c] = 0x002a, [0x5d] = 0x0029, [0x5e] = 0x003b, [0x5f] = 0x005e,
|
||||
[0x60] = 0x002d, [0x61] = 0x002f, [0x62] = 0x0403, [0x63] = 0x0401,
|
||||
[0x64] = 0x0404, [0x65] = 0x0405, [0x66] = 0x0406, [0x67] = 0x0407,
|
||||
[0x68] = 0x0408, [0x69] = 0x0409, [0x6a] = 0x007c, [0x6b] = 0x002c,
|
||||
[0x6c] = 0x0025, [0x6d] = 0x005f, [0x6e] = 0x003e, [0x6f] = 0x003f,
|
||||
[0x70] = 0x040a, [0x71] = 0x040b, [0x72] = 0x040c, [0x73] = 0x00ad,
|
||||
[0x74] = 0x040e, [0x75] = 0x040f, [0x76] = 0x044e, [0x77] = 0x0430,
|
||||
[0x78] = 0x0431, [0x79] = 0x0060, [0x7a] = 0x003a, [0x7b] = 0x0023,
|
||||
[0x7c] = 0x0040, [0x7d] = 0x0027, [0x7e] = 0x003d, [0x7f] = 0x0022,
|
||||
[0x80] = 0x0446, [0x81] = 0x0061, [0x82] = 0x0062, [0x83] = 0x0063,
|
||||
[0x84] = 0x0064, [0x85] = 0x0065, [0x86] = 0x0066, [0x87] = 0x0067,
|
||||
[0x88] = 0x0068, [0x89] = 0x0069, [0x8a] = 0x0434, [0x8b] = 0x0435,
|
||||
[0x8c] = 0x0444, [0x8d] = 0x0433, [0x8e] = 0x0445, [0x8f] = 0x0438,
|
||||
[0x90] = 0x0439, [0x91] = 0x006a, [0x92] = 0x006b, [0x93] = 0x006c,
|
||||
[0x94] = 0x006d, [0x95] = 0x006e, [0x96] = 0x006f, [0x97] = 0x0070,
|
||||
[0x98] = 0x0071, [0x99] = 0x0072, [0x9a] = 0x043a, [0x9b] = 0x043b,
|
||||
[0x9c] = 0x043c, [0x9d] = 0x043d, [0x9e] = 0x043e, [0x9f] = 0x043f,
|
||||
[0xa0] = 0x044f, [0xa1] = 0x007e, [0xa2] = 0x0073, [0xa3] = 0x0074,
|
||||
[0xa4] = 0x0075, [0xa5] = 0x0076, [0xa6] = 0x0077, [0xa7] = 0x0078,
|
||||
[0xa8] = 0x0079, [0xa9] = 0x007a, [0xaa] = 0x0440, [0xab] = 0x0441,
|
||||
[0xac] = 0x0442, [0xad] = 0x0443, [0xae] = 0x0436, [0xaf] = 0x0432,
|
||||
[0xb0] = 0x044c, [0xb1] = 0x044b, [0xb2] = 0x0437, [0xb3] = 0x0448,
|
||||
[0xb4] = 0x044d, [0xb5] = 0x0449, [0xb6] = 0x0447, [0xb7] = 0x044a,
|
||||
[0xb8] = 0x042e, [0xb9] = 0x0410, [0xba] = 0x0411, [0xbb] = 0x0426,
|
||||
[0xbc] = 0x0414, [0xbd] = 0x0415, [0xbe] = 0x0424, [0xbf] = 0x0413,
|
||||
[0xc0] = 0x007b, [0xc1] = 0x0041, [0xc2] = 0x0042, [0xc3] = 0x0043,
|
||||
[0xc4] = 0x0044, [0xc5] = 0x0045, [0xc6] = 0x0046, [0xc7] = 0x0047,
|
||||
[0xc8] = 0x0048, [0xc9] = 0x0049, [0xca] = 0x0425, [0xcb] = 0x0418,
|
||||
[0xcc] = 0x0419, [0xcd] = 0x041a, [0xce] = 0x041b, [0xcf] = 0x041c,
|
||||
[0xd0] = 0x007d, [0xd1] = 0x004a, [0xd2] = 0x004b, [0xd3] = 0x004c,
|
||||
[0xd4] = 0x004d, [0xd5] = 0x004e, [0xd6] = 0x004f, [0xd7] = 0x0050,
|
||||
[0xd8] = 0x0051, [0xd9] = 0x0052, [0xda] = 0x041d, [0xdb] = 0x041e,
|
||||
[0xdc] = 0x041f, [0xdd] = 0x042f, [0xde] = 0x0420, [0xdf] = 0x0421,
|
||||
[0xe0] = 0x005c, [0xe1] = 0x20ac, [0xe2] = 0x0053, [0xe3] = 0x0054,
|
||||
[0xe4] = 0x0055, [0xe5] = 0x0056, [0xe6] = 0x0057, [0xe7] = 0x0058,
|
||||
[0xe8] = 0x0059, [0xe9] = 0x005a, [0xea] = 0x0422, [0xeb] = 0x0423,
|
||||
[0xec] = 0x0416, [0xed] = 0x0412, [0xee] = 0x042c, [0xef] = 0x042b,
|
||||
[0xf0] = 0x0030, [0xf1] = 0x0031, [0xf2] = 0x0032, [0xf3] = 0x0033,
|
||||
[0xf4] = 0x0034, [0xf5] = 0x0035, [0xf6] = 0x0036, [0xf7] = 0x0037,
|
||||
[0xf8] = 0x0038, [0xf9] = 0x0039, [0xfa] = 0x0417, [0xfb] = 0x0428,
|
||||
[0xfc] = 0x042d, [0xfd] = 0x0429, [0xfe] = 0x0427, [0xff] = 0x009f
|
||||
};
|
||||
|
||||
static const struct gap from_idx[] =
|
||||
{
|
||||
{ start: 0x0000, end: 0x00a0, idx: 0 },
|
||||
{ start: 0x00ad, end: 0x00ad, idx: -12 },
|
||||
{ start: 0x0401, end: 0x045f, idx: -863 },
|
||||
{ start: 0x20ac, end: 0x20ac, idx: -8107 },
|
||||
{ start: 0x2116, end: 0x2116, idx: -8212 },
|
||||
{ start: 0xffff, end: 0xffff, idx: 0 }
|
||||
};
|
||||
|
||||
static const char from_ucs4[] =
|
||||
{
|
||||
'\x00', '\x01', '\x02', '\x03', '\x37', '\x2d', '\x2e', '\x2f',
|
||||
'\x16', '\x05', '\x25', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
|
||||
'\x10', '\x11', '\x12', '\x13', '\x3c', '\x3d', '\x32', '\x26',
|
||||
'\x18', '\x19', '\x3f', '\x27', '\x1c', '\x1d', '\x1e', '\x1f',
|
||||
'\x40', '\x4f', '\x7f', '\x7b', '\x5b', '\x6c', '\x50', '\x7d',
|
||||
'\x4d', '\x5d', '\x5c', '\x4e', '\x6b', '\x60', '\x4b', '\x61',
|
||||
'\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
|
||||
'\xf8', '\xf9', '\x7a', '\x5e', '\x4c', '\x7e', '\x6e', '\x6f',
|
||||
'\x7c', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
|
||||
'\xc8', '\xc9', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6',
|
||||
'\xd7', '\xd8', '\xd9', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6',
|
||||
'\xe7', '\xe8', '\xe9', '\x4a', '\xe0', '\x5a', '\x5f', '\x6d',
|
||||
'\x79', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
|
||||
'\x88', '\x89', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96',
|
||||
'\x97', '\x98', '\x99', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6',
|
||||
'\xa7', '\xa8', '\xa9', '\xc0', '\x6a', '\xd0', '\xa1', '\x07',
|
||||
'\x20', '\x21', '\x22', '\x23', '\x24', '\x15', '\x06', '\x17',
|
||||
'\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x09', '\x0a', '\x1b',
|
||||
'\x30', '\x31', '\x1a', '\x33', '\x34', '\x35', '\x36', '\x08',
|
||||
'\x38', '\x39', '\x3a', '\x3b', '\x04', '\x14', '\x3e', '\xff',
|
||||
'\x41', '\x73', '\x63', '\x59', '\x62', '\x64', '\x65', '\x66',
|
||||
'\x67', '\x68', '\x69', '\x70', '\x71', '\x72', '\x00', '\x74',
|
||||
'\x75', '\xb9', '\xba', '\xed', '\xbf', '\xbc', '\xbd', '\xec',
|
||||
'\xfa', '\xcb', '\xcc', '\xcd', '\xce', '\xcf', '\xda', '\xdb',
|
||||
'\xdc', '\xde', '\xdf', '\xea', '\xeb', '\xbe', '\xca', '\xbb',
|
||||
'\xfe', '\xfb', '\xfd', '\x57', '\xef', '\xee', '\xfc', '\xb8',
|
||||
'\xdd', '\x77', '\x78', '\xaf', '\x8d', '\x8a', '\x8b', '\xae',
|
||||
'\xb2', '\x8f', '\x90', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e',
|
||||
'\x9f', '\xaa', '\xab', '\xac', '\xad', '\x8c', '\x8e', '\x80',
|
||||
'\xb6', '\xb3', '\xb5', '\xb7', '\xb1', '\xb0', '\xb4', '\x76',
|
||||
'\xa0', '\x00', '\x44', '\x42', '\x43', '\x45', '\x46', '\x47',
|
||||
'\x48', '\x49', '\x51', '\x52', '\x53', '\x54', '\x00', '\x55',
|
||||
'\x56', '\xe1', '\x58'
|
||||
};
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/* Conversion from and to IBM1155.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/* Get the conversion table. */
|
||||
#define TABLES <ibm1155.h>
|
||||
|
||||
#define CHARSET_NAME "IBM1155//"
|
||||
#define HAS_HOLES 0 /* All 256 character are defined. */
|
||||
|
||||
#include <8bit-gap.c>
|
||||
|
|
@ -0,0 +1,134 @@
|
|||
/* Mapping table for IBM1155.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
static const uint32_t to_ucs4[256] =
|
||||
{
|
||||
[0x00] = 0x0000, [0x01] = 0x0001, [0x02] = 0x0002, [0x03] = 0x0003,
|
||||
[0x04] = 0x009c, [0x05] = 0x0009, [0x06] = 0x0086, [0x07] = 0x007f,
|
||||
[0x08] = 0x0097, [0x09] = 0x008d, [0x0a] = 0x008e, [0x0b] = 0x000b,
|
||||
[0x0c] = 0x000c, [0x0d] = 0x000d, [0x0e] = 0x000e, [0x0f] = 0x000f,
|
||||
[0x10] = 0x0010, [0x11] = 0x0011, [0x12] = 0x0012, [0x13] = 0x0013,
|
||||
[0x14] = 0x009d, [0x15] = 0x0085, [0x16] = 0x0008, [0x17] = 0x0087,
|
||||
[0x18] = 0x0018, [0x19] = 0x0019, [0x1a] = 0x0092, [0x1b] = 0x008f,
|
||||
[0x1c] = 0x001c, [0x1d] = 0x001d, [0x1e] = 0x001e, [0x1f] = 0x001f,
|
||||
[0x20] = 0x0080, [0x21] = 0x0081, [0x22] = 0x0082, [0x23] = 0x0083,
|
||||
[0x24] = 0x0084, [0x25] = 0x000a, [0x26] = 0x0017, [0x27] = 0x001b,
|
||||
[0x28] = 0x0088, [0x29] = 0x0089, [0x2a] = 0x008a, [0x2b] = 0x008b,
|
||||
[0x2c] = 0x008c, [0x2d] = 0x0005, [0x2e] = 0x0006, [0x2f] = 0x0007,
|
||||
[0x30] = 0x0090, [0x31] = 0x0091, [0x32] = 0x0016, [0x33] = 0x0093,
|
||||
[0x34] = 0x0094, [0x35] = 0x0095, [0x36] = 0x0096, [0x37] = 0x0004,
|
||||
[0x38] = 0x0098, [0x39] = 0x0099, [0x3a] = 0x009a, [0x3b] = 0x009b,
|
||||
[0x3c] = 0x0014, [0x3d] = 0x0015, [0x3e] = 0x009e, [0x3f] = 0x001a,
|
||||
[0x40] = 0x0020, [0x41] = 0x00a0, [0x42] = 0x00e2, [0x43] = 0x00e4,
|
||||
[0x44] = 0x00e0, [0x45] = 0x00e1, [0x46] = 0x00e3, [0x47] = 0x00e5,
|
||||
[0x48] = 0x007b, [0x49] = 0x00f1, [0x4a] = 0x00c7, [0x4b] = 0x002e,
|
||||
[0x4c] = 0x003c, [0x4d] = 0x0028, [0x4e] = 0x002b, [0x4f] = 0x0021,
|
||||
[0x50] = 0x0026, [0x51] = 0x00e9, [0x52] = 0x00ea, [0x53] = 0x00eb,
|
||||
[0x54] = 0x00e8, [0x55] = 0x00ed, [0x56] = 0x00ee, [0x57] = 0x00ef,
|
||||
[0x58] = 0x00ec, [0x59] = 0x00df, [0x5a] = 0x011e, [0x5b] = 0x0130,
|
||||
[0x5c] = 0x002a, [0x5d] = 0x0029, [0x5e] = 0x003b, [0x5f] = 0x005e,
|
||||
[0x60] = 0x002d, [0x61] = 0x002f, [0x62] = 0x00c2, [0x63] = 0x00c4,
|
||||
[0x64] = 0x00c0, [0x65] = 0x00c1, [0x66] = 0x00c3, [0x67] = 0x00c5,
|
||||
[0x68] = 0x005b, [0x69] = 0x00d1, [0x6a] = 0x015f, [0x6b] = 0x002c,
|
||||
[0x6c] = 0x0025, [0x6d] = 0x005f, [0x6e] = 0x003e, [0x6f] = 0x003f,
|
||||
[0x70] = 0x00f8, [0x71] = 0x00c9, [0x72] = 0x00ca, [0x73] = 0x00cb,
|
||||
[0x74] = 0x00c8, [0x75] = 0x00cd, [0x76] = 0x00ce, [0x77] = 0x00cf,
|
||||
[0x78] = 0x00cc, [0x79] = 0x0131, [0x7a] = 0x003a, [0x7b] = 0x00d6,
|
||||
[0x7c] = 0x015e, [0x7d] = 0x0027, [0x7e] = 0x003d, [0x7f] = 0x00dc,
|
||||
[0x80] = 0x00d8, [0x81] = 0x0061, [0x82] = 0x0062, [0x83] = 0x0063,
|
||||
[0x84] = 0x0064, [0x85] = 0x0065, [0x86] = 0x0066, [0x87] = 0x0067,
|
||||
[0x88] = 0x0068, [0x89] = 0x0069, [0x8a] = 0x00ab, [0x8b] = 0x00bb,
|
||||
[0x8c] = 0x007d, [0x8d] = 0x0060, [0x8e] = 0x00a6, [0x8f] = 0x00b1,
|
||||
[0x90] = 0x00b0, [0x91] = 0x006a, [0x92] = 0x006b, [0x93] = 0x006c,
|
||||
[0x94] = 0x006d, [0x95] = 0x006e, [0x96] = 0x006f, [0x97] = 0x0070,
|
||||
[0x98] = 0x0071, [0x99] = 0x0072, [0x9a] = 0x00aa, [0x9b] = 0x00ba,
|
||||
[0x9c] = 0x00e6, [0x9d] = 0x00b8, [0x9e] = 0x00c6, [0x9f] = 0x20ac,
|
||||
[0xa0] = 0x00b5, [0xa1] = 0x00f6, [0xa2] = 0x0073, [0xa3] = 0x0074,
|
||||
[0xa4] = 0x0075, [0xa5] = 0x0076, [0xa6] = 0x0077, [0xa7] = 0x0078,
|
||||
[0xa8] = 0x0079, [0xa9] = 0x007a, [0xaa] = 0x00a1, [0xab] = 0x00bf,
|
||||
[0xac] = 0x005d, [0xad] = 0x0024, [0xae] = 0x0040, [0xaf] = 0x00ae,
|
||||
[0xb0] = 0x00a2, [0xb1] = 0x00a3, [0xb2] = 0x00a5, [0xb3] = 0x00b7,
|
||||
[0xb4] = 0x00a9, [0xb5] = 0x00a7, [0xb6] = 0x00b6, [0xb7] = 0x00bc,
|
||||
[0xb8] = 0x00bd, [0xb9] = 0x00be, [0xba] = 0x00ac, [0xbb] = 0x007c,
|
||||
[0xbc] = 0x00af, [0xbd] = 0x00a8, [0xbe] = 0x00b4, [0xbf] = 0x00d7,
|
||||
[0xc0] = 0x00e7, [0xc1] = 0x0041, [0xc2] = 0x0042, [0xc3] = 0x0043,
|
||||
[0xc4] = 0x0044, [0xc5] = 0x0045, [0xc6] = 0x0046, [0xc7] = 0x0047,
|
||||
[0xc8] = 0x0048, [0xc9] = 0x0049, [0xca] = 0x00ad, [0xcb] = 0x00f4,
|
||||
[0xcc] = 0x007e, [0xcd] = 0x00f2, [0xce] = 0x00f3, [0xcf] = 0x00f5,
|
||||
[0xd0] = 0x011f, [0xd1] = 0x004a, [0xd2] = 0x004b, [0xd3] = 0x004c,
|
||||
[0xd4] = 0x004d, [0xd5] = 0x004e, [0xd6] = 0x004f, [0xd7] = 0x0050,
|
||||
[0xd8] = 0x0051, [0xd9] = 0x0052, [0xda] = 0x00b9, [0xdb] = 0x00fb,
|
||||
[0xdc] = 0x005c, [0xdd] = 0x00f9, [0xde] = 0x00fa, [0xdf] = 0x00ff,
|
||||
[0xe0] = 0x00fc, [0xe1] = 0x00f7, [0xe2] = 0x0053, [0xe3] = 0x0054,
|
||||
[0xe4] = 0x0055, [0xe5] = 0x0056, [0xe6] = 0x0057, [0xe7] = 0x0058,
|
||||
[0xe8] = 0x0059, [0xe9] = 0x005a, [0xea] = 0x00b2, [0xeb] = 0x00d4,
|
||||
[0xec] = 0x0023, [0xed] = 0x00d2, [0xee] = 0x00d3, [0xef] = 0x00d5,
|
||||
[0xf0] = 0x0030, [0xf1] = 0x0031, [0xf2] = 0x0032, [0xf3] = 0x0033,
|
||||
[0xf4] = 0x0034, [0xf5] = 0x0035, [0xf6] = 0x0036, [0xf7] = 0x0037,
|
||||
[0xf8] = 0x0038, [0xf9] = 0x0039, [0xfa] = 0x00b3, [0xfb] = 0x00db,
|
||||
[0xfc] = 0x0022, [0xfd] = 0x00d9, [0xfe] = 0x00da, [0xff] = 0x009f
|
||||
};
|
||||
|
||||
static const struct gap from_idx[] =
|
||||
{
|
||||
{ start: 0x0000, end: 0x00ff, idx: 0 },
|
||||
{ start: 0x011e, end: 0x011f, idx: -30 },
|
||||
{ start: 0x0130, end: 0x0131, idx: -46 },
|
||||
{ start: 0x015e, end: 0x015f, idx: -90 },
|
||||
{ start: 0x20ac, end: 0x20ac, idx: -8102 },
|
||||
{ start: 0xffff, end: 0xffff, idx: 0 }
|
||||
};
|
||||
|
||||
static const char from_ucs4[] =
|
||||
{
|
||||
'\x00', '\x01', '\x02', '\x03', '\x37', '\x2d', '\x2e', '\x2f',
|
||||
'\x16', '\x05', '\x25', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
|
||||
'\x10', '\x11', '\x12', '\x13', '\x3c', '\x3d', '\x32', '\x26',
|
||||
'\x18', '\x19', '\x3f', '\x27', '\x1c', '\x1d', '\x1e', '\x1f',
|
||||
'\x40', '\x4f', '\xfc', '\xec', '\xad', '\x6c', '\x50', '\x7d',
|
||||
'\x4d', '\x5d', '\x5c', '\x4e', '\x6b', '\x60', '\x4b', '\x61',
|
||||
'\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
|
||||
'\xf8', '\xf9', '\x7a', '\x5e', '\x4c', '\x7e', '\x6e', '\x6f',
|
||||
'\xae', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
|
||||
'\xc8', '\xc9', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6',
|
||||
'\xd7', '\xd8', '\xd9', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6',
|
||||
'\xe7', '\xe8', '\xe9', '\x68', '\xdc', '\xac', '\x5f', '\x6d',
|
||||
'\x8d', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
|
||||
'\x88', '\x89', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96',
|
||||
'\x97', '\x98', '\x99', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6',
|
||||
'\xa7', '\xa8', '\xa9', '\x48', '\xbb', '\x8c', '\xcc', '\x07',
|
||||
'\x20', '\x21', '\x22', '\x23', '\x24', '\x15', '\x06', '\x17',
|
||||
'\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x09', '\x0a', '\x1b',
|
||||
'\x30', '\x31', '\x1a', '\x33', '\x34', '\x35', '\x36', '\x08',
|
||||
'\x38', '\x39', '\x3a', '\x3b', '\x04', '\x14', '\x3e', '\xff',
|
||||
'\x41', '\xaa', '\xb0', '\xb1', '\x00', '\xb2', '\x8e', '\xb5',
|
||||
'\xbd', '\xb4', '\x9a', '\x8a', '\xba', '\xca', '\xaf', '\xbc',
|
||||
'\x90', '\x8f', '\xea', '\xfa', '\xbe', '\xa0', '\xb6', '\xb3',
|
||||
'\x9d', '\xda', '\x9b', '\x8b', '\xb7', '\xb8', '\xb9', '\xab',
|
||||
'\x64', '\x65', '\x62', '\x66', '\x63', '\x67', '\x9e', '\x4a',
|
||||
'\x74', '\x71', '\x72', '\x73', '\x78', '\x75', '\x76', '\x77',
|
||||
'\x00', '\x69', '\xed', '\xee', '\xeb', '\xef', '\x7b', '\xbf',
|
||||
'\x80', '\xfd', '\xfe', '\xfb', '\x7f', '\x00', '\x00', '\x59',
|
||||
'\x44', '\x45', '\x42', '\x46', '\x43', '\x47', '\x9c', '\xc0',
|
||||
'\x54', '\x51', '\x52', '\x53', '\x58', '\x55', '\x56', '\x57',
|
||||
'\x00', '\x49', '\xcd', '\xce', '\xcb', '\xcf', '\xa1', '\xe1',
|
||||
'\x70', '\xdd', '\xde', '\xdb', '\xe0', '\x00', '\x00', '\xdf',
|
||||
'\x5a', '\xd0', '\x5b', '\x79', '\x7c', '\x6a', '\x9f'
|
||||
};
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/* Conversion from and to IBM1156.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/* Get the conversion table. */
|
||||
#define TABLES <ibm1156.h>
|
||||
|
||||
#define CHARSET_NAME "IBM1156//"
|
||||
#define HAS_HOLES 0 /* All 256 character are defined. */
|
||||
|
||||
#include <8bit-gap.c>
|
||||
|
|
@ -0,0 +1,149 @@
|
|||
/* Mapping table for IBM1156.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
static const uint32_t to_ucs4[256] =
|
||||
{
|
||||
[0x00] = 0x0000, [0x01] = 0x0001, [0x02] = 0x0002, [0x03] = 0x0003,
|
||||
[0x04] = 0x009c, [0x05] = 0x0009, [0x06] = 0x0086, [0x07] = 0x007f,
|
||||
[0x08] = 0x0097, [0x09] = 0x008d, [0x0a] = 0x008e, [0x0b] = 0x000b,
|
||||
[0x0c] = 0x000c, [0x0d] = 0x000d, [0x0e] = 0x000e, [0x0f] = 0x000f,
|
||||
[0x10] = 0x0010, [0x11] = 0x0011, [0x12] = 0x0012, [0x13] = 0x0013,
|
||||
[0x14] = 0x009d, [0x15] = 0x0085, [0x16] = 0x0008, [0x17] = 0x0087,
|
||||
[0x18] = 0x0018, [0x19] = 0x0019, [0x1a] = 0x0092, [0x1b] = 0x008f,
|
||||
[0x1c] = 0x001c, [0x1d] = 0x001d, [0x1e] = 0x001e, [0x1f] = 0x001f,
|
||||
[0x20] = 0x0080, [0x21] = 0x0081, [0x22] = 0x0082, [0x23] = 0x0083,
|
||||
[0x24] = 0x0084, [0x25] = 0x000a, [0x26] = 0x0017, [0x27] = 0x001b,
|
||||
[0x28] = 0x0088, [0x29] = 0x0089, [0x2a] = 0x008a, [0x2b] = 0x008b,
|
||||
[0x2c] = 0x008c, [0x2d] = 0x0005, [0x2e] = 0x0006, [0x2f] = 0x0007,
|
||||
[0x30] = 0x0090, [0x31] = 0x0091, [0x32] = 0x0016, [0x33] = 0x0093,
|
||||
[0x34] = 0x0094, [0x35] = 0x0095, [0x36] = 0x0096, [0x37] = 0x0004,
|
||||
[0x38] = 0x0098, [0x39] = 0x0099, [0x3a] = 0x009a, [0x3b] = 0x009b,
|
||||
[0x3c] = 0x0014, [0x3d] = 0x0015, [0x3e] = 0x009e, [0x3f] = 0x001a,
|
||||
[0x40] = 0x0020, [0x41] = 0x00a0, [0x42] = 0x0161, [0x43] = 0x00e4,
|
||||
[0x44] = 0x0105, [0x45] = 0x012f, [0x46] = 0x016b, [0x47] = 0x00e5,
|
||||
[0x48] = 0x0113, [0x49] = 0x017e, [0x4a] = 0x00a2, [0x4b] = 0x002e,
|
||||
[0x4c] = 0x003c, [0x4d] = 0x0028, [0x4e] = 0x002b, [0x4f] = 0x007c,
|
||||
[0x50] = 0x0026, [0x51] = 0x00e9, [0x52] = 0x0119, [0x53] = 0x0117,
|
||||
[0x54] = 0x010d, [0x55] = 0x0173, [0x56] = 0x201e, [0x57] = 0x201c,
|
||||
[0x58] = 0x0123, [0x59] = 0x00df, [0x5a] = 0x0021, [0x5b] = 0x0024,
|
||||
[0x5c] = 0x002a, [0x5d] = 0x0029, [0x5e] = 0x003b, [0x5f] = 0x00ac,
|
||||
[0x60] = 0x002d, [0x61] = 0x002f, [0x62] = 0x0160, [0x63] = 0x00c4,
|
||||
[0x64] = 0x0104, [0x65] = 0x012e, [0x66] = 0x016a, [0x67] = 0x00c5,
|
||||
[0x68] = 0x0112, [0x69] = 0x017d, [0x6a] = 0x00a6, [0x6b] = 0x002c,
|
||||
[0x6c] = 0x0025, [0x6d] = 0x005f, [0x6e] = 0x003e, [0x6f] = 0x003f,
|
||||
[0x70] = 0x00f8, [0x71] = 0x00c9, [0x72] = 0x0118, [0x73] = 0x0116,
|
||||
[0x74] = 0x010c, [0x75] = 0x0172, [0x76] = 0x012a, [0x77] = 0x013b,
|
||||
[0x78] = 0x0122, [0x79] = 0x0060, [0x7a] = 0x003a, [0x7b] = 0x0023,
|
||||
[0x7c] = 0x0040, [0x7d] = 0x0027, [0x7e] = 0x003d, [0x7f] = 0x0022,
|
||||
[0x80] = 0x00d8, [0x81] = 0x0061, [0x82] = 0x0062, [0x83] = 0x0063,
|
||||
[0x84] = 0x0064, [0x85] = 0x0065, [0x86] = 0x0066, [0x87] = 0x0067,
|
||||
[0x88] = 0x0068, [0x89] = 0x0069, [0x8a] = 0x00ab, [0x8b] = 0x00bb,
|
||||
[0x8c] = 0x0101, [0x8d] = 0x017c, [0x8e] = 0x0144, [0x8f] = 0x00b1,
|
||||
[0x90] = 0x00b0, [0x91] = 0x006a, [0x92] = 0x006b, [0x93] = 0x006c,
|
||||
[0x94] = 0x006d, [0x95] = 0x006e, [0x96] = 0x006f, [0x97] = 0x0070,
|
||||
[0x98] = 0x0071, [0x99] = 0x0072, [0x9a] = 0x0156, [0x9b] = 0x0157,
|
||||
[0x9c] = 0x00e6, [0x9d] = 0x0137, [0x9e] = 0x00c6, [0x9f] = 0x20ac,
|
||||
[0xa0] = 0x00b5, [0xa1] = 0x007e, [0xa2] = 0x0073, [0xa3] = 0x0074,
|
||||
[0xa4] = 0x0075, [0xa5] = 0x0076, [0xa6] = 0x0077, [0xa7] = 0x0078,
|
||||
[0xa8] = 0x0079, [0xa9] = 0x007a, [0xaa] = 0x201d, [0xab] = 0x017a,
|
||||
[0xac] = 0x0100, [0xad] = 0x017b, [0xae] = 0x0143, [0xaf] = 0x00ae,
|
||||
[0xb0] = 0x005e, [0xb1] = 0x00a3, [0xb2] = 0x012b, [0xb3] = 0x00b7,
|
||||
[0xb4] = 0x00a9, [0xb5] = 0x00a7, [0xb6] = 0x00b6, [0xb7] = 0x00bc,
|
||||
[0xb8] = 0x00bd, [0xb9] = 0x00be, [0xba] = 0x005b, [0xbb] = 0x005d,
|
||||
[0xbc] = 0x0179, [0xbd] = 0x0136, [0xbe] = 0x013c, [0xbf] = 0x00d7,
|
||||
[0xc0] = 0x007b, [0xc1] = 0x0041, [0xc2] = 0x0042, [0xc3] = 0x0043,
|
||||
[0xc4] = 0x0044, [0xc5] = 0x0045, [0xc6] = 0x0046, [0xc7] = 0x0047,
|
||||
[0xc8] = 0x0048, [0xc9] = 0x0049, [0xca] = 0x00ad, [0xcb] = 0x014d,
|
||||
[0xcc] = 0x00f6, [0xcd] = 0x0146, [0xce] = 0x00f3, [0xcf] = 0x00f5,
|
||||
[0xd0] = 0x007d, [0xd1] = 0x004a, [0xd2] = 0x004b, [0xd3] = 0x004c,
|
||||
[0xd4] = 0x004d, [0xd5] = 0x004e, [0xd6] = 0x004f, [0xd7] = 0x0050,
|
||||
[0xd8] = 0x0051, [0xd9] = 0x0052, [0xda] = 0x00b9, [0xdb] = 0x0107,
|
||||
[0xdc] = 0x00fc, [0xdd] = 0x0142, [0xde] = 0x015b, [0xdf] = 0x2019,
|
||||
[0xe0] = 0x005c, [0xe1] = 0x00f7, [0xe2] = 0x0053, [0xe3] = 0x0054,
|
||||
[0xe4] = 0x0055, [0xe5] = 0x0056, [0xe6] = 0x0057, [0xe7] = 0x0058,
|
||||
[0xe8] = 0x0059, [0xe9] = 0x005a, [0xea] = 0x00b2, [0xeb] = 0x014c,
|
||||
[0xec] = 0x00d6, [0xed] = 0x0145, [0xee] = 0x00d3, [0xef] = 0x00d5,
|
||||
[0xf0] = 0x0030, [0xf1] = 0x0031, [0xf2] = 0x0032, [0xf3] = 0x0033,
|
||||
[0xf4] = 0x0034, [0xf5] = 0x0035, [0xf6] = 0x0036, [0xf7] = 0x0037,
|
||||
[0xf8] = 0x0038, [0xf9] = 0x0039, [0xfa] = 0x00b3, [0xfb] = 0x0106,
|
||||
[0xfc] = 0x00dc, [0xfd] = 0x0141, [0xfe] = 0x015a, [0xff] = 0x009f
|
||||
};
|
||||
|
||||
static const struct gap from_idx[] =
|
||||
{
|
||||
{ start: 0x0000, end: 0x00c9, idx: 0 },
|
||||
{ start: 0x00d3, end: 0x00e9, idx: -9 },
|
||||
{ start: 0x00f3, end: 0x0119, idx: -18 },
|
||||
{ start: 0x0122, end: 0x0123, idx: -26 },
|
||||
{ start: 0x012a, end: 0x012f, idx: -32 },
|
||||
{ start: 0x0136, end: 0x014d, idx: -38 },
|
||||
{ start: 0x0156, end: 0x0161, idx: -46 },
|
||||
{ start: 0x016a, end: 0x016b, idx: -54 },
|
||||
{ start: 0x0172, end: 0x017e, idx: -60 },
|
||||
{ start: 0x2019, end: 0x201e, idx: -7894 },
|
||||
{ start: 0x20ac, end: 0x20ac, idx: -8035 },
|
||||
{ start: 0xffff, end: 0xffff, idx: 0 }
|
||||
};
|
||||
|
||||
static const char from_ucs4[] =
|
||||
{
|
||||
'\x00', '\x01', '\x02', '\x03', '\x37', '\x2d', '\x2e', '\x2f',
|
||||
'\x16', '\x05', '\x25', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
|
||||
'\x10', '\x11', '\x12', '\x13', '\x3c', '\x3d', '\x32', '\x26',
|
||||
'\x18', '\x19', '\x3f', '\x27', '\x1c', '\x1d', '\x1e', '\x1f',
|
||||
'\x40', '\x5a', '\x7f', '\x7b', '\x5b', '\x6c', '\x50', '\x7d',
|
||||
'\x4d', '\x5d', '\x5c', '\x4e', '\x6b', '\x60', '\x4b', '\x61',
|
||||
'\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
|
||||
'\xf8', '\xf9', '\x7a', '\x5e', '\x4c', '\x7e', '\x6e', '\x6f',
|
||||
'\x7c', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
|
||||
'\xc8', '\xc9', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6',
|
||||
'\xd7', '\xd8', '\xd9', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6',
|
||||
'\xe7', '\xe8', '\xe9', '\xba', '\xe0', '\xbb', '\xb0', '\x6d',
|
||||
'\x79', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
|
||||
'\x88', '\x89', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96',
|
||||
'\x97', '\x98', '\x99', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6',
|
||||
'\xa7', '\xa8', '\xa9', '\xc0', '\x4f', '\xd0', '\xa1', '\x07',
|
||||
'\x20', '\x21', '\x22', '\x23', '\x24', '\x15', '\x06', '\x17',
|
||||
'\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x09', '\x0a', '\x1b',
|
||||
'\x30', '\x31', '\x1a', '\x33', '\x34', '\x35', '\x36', '\x08',
|
||||
'\x38', '\x39', '\x3a', '\x3b', '\x04', '\x14', '\x3e', '\xff',
|
||||
'\x41', '\x00', '\x4a', '\xb1', '\x00', '\x00', '\x6a', '\xb5',
|
||||
'\x00', '\xb4', '\x00', '\x8a', '\x5f', '\xca', '\xaf', '\x00',
|
||||
'\x90', '\x8f', '\xea', '\xfa', '\x00', '\xa0', '\xb6', '\xb3',
|
||||
'\x00', '\xda', '\x00', '\x8b', '\xb7', '\xb8', '\xb9', '\x00',
|
||||
'\x00', '\x00', '\x00', '\x00', '\x63', '\x67', '\x9e', '\x00',
|
||||
'\x00', '\x71', '\xee', '\x00', '\xef', '\xec', '\xbf', '\x80',
|
||||
'\x00', '\x00', '\x00', '\xfc', '\x00', '\x00', '\x59', '\x00',
|
||||
'\x00', '\x00', '\x00', '\x43', '\x47', '\x9c', '\x00', '\x00',
|
||||
'\x51', '\xce', '\x00', '\xcf', '\xcc', '\xe1', '\x70', '\x00',
|
||||
'\x00', '\x00', '\xdc', '\x00', '\x00', '\x00', '\xac', '\x8c',
|
||||
'\x00', '\x00', '\x64', '\x44', '\xfb', '\xdb', '\x00', '\x00',
|
||||
'\x00', '\x00', '\x74', '\x54', '\x00', '\x00', '\x00', '\x00',
|
||||
'\x68', '\x48', '\x00', '\x00', '\x73', '\x53', '\x72', '\x52',
|
||||
'\x78', '\x58', '\x76', '\xb2', '\x00', '\x00', '\x65', '\x45',
|
||||
'\xbd', '\x9d', '\x00', '\x00', '\x00', '\x77', '\xbe', '\x00',
|
||||
'\x00', '\x00', '\x00', '\xfd', '\xdd', '\xae', '\x8e', '\xed',
|
||||
'\xcd', '\x00', '\x00', '\x00', '\x00', '\x00', '\xeb', '\xcb',
|
||||
'\x9a', '\x9b', '\x00', '\x00', '\xfe', '\xde', '\x00', '\x00',
|
||||
'\x00', '\x00', '\x62', '\x42', '\x66', '\x46', '\x75', '\x55',
|
||||
'\x00', '\x00', '\x00', '\x00', '\x00', '\xbc', '\xab', '\xad',
|
||||
'\x8d', '\x69', '\x49', '\xdf', '\x00', '\x00', '\x57', '\xaa',
|
||||
'\x56', '\x9f'
|
||||
};
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/* Conversion from and to IBM1157.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/* Get the conversion table. */
|
||||
#define TABLES <ibm1157.h>
|
||||
|
||||
#define CHARSET_NAME "IBM1157//"
|
||||
#define HAS_HOLES 0 /* All 256 character are defined. */
|
||||
|
||||
#include <8bit-gap.c>
|
||||
|
|
@ -0,0 +1,134 @@
|
|||
/* Mapping table for IBM1157.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
static const uint32_t to_ucs4[256] =
|
||||
{
|
||||
[0x00] = 0x0000, [0x01] = 0x0001, [0x02] = 0x0002, [0x03] = 0x0003,
|
||||
[0x04] = 0x009c, [0x05] = 0x0009, [0x06] = 0x0086, [0x07] = 0x007f,
|
||||
[0x08] = 0x0097, [0x09] = 0x008d, [0x0a] = 0x008e, [0x0b] = 0x000b,
|
||||
[0x0c] = 0x000c, [0x0d] = 0x000d, [0x0e] = 0x000e, [0x0f] = 0x000f,
|
||||
[0x10] = 0x0010, [0x11] = 0x0011, [0x12] = 0x0012, [0x13] = 0x0013,
|
||||
[0x14] = 0x009d, [0x15] = 0x0085, [0x16] = 0x0008, [0x17] = 0x0087,
|
||||
[0x18] = 0x0018, [0x19] = 0x0019, [0x1a] = 0x0092, [0x1b] = 0x008f,
|
||||
[0x1c] = 0x001c, [0x1d] = 0x001d, [0x1e] = 0x001e, [0x1f] = 0x001f,
|
||||
[0x20] = 0x0080, [0x21] = 0x0081, [0x22] = 0x0082, [0x23] = 0x0083,
|
||||
[0x24] = 0x0084, [0x25] = 0x000a, [0x26] = 0x0017, [0x27] = 0x001b,
|
||||
[0x28] = 0x0088, [0x29] = 0x0089, [0x2a] = 0x008a, [0x2b] = 0x008b,
|
||||
[0x2c] = 0x008c, [0x2d] = 0x0005, [0x2e] = 0x0006, [0x2f] = 0x0007,
|
||||
[0x30] = 0x0090, [0x31] = 0x0091, [0x32] = 0x0016, [0x33] = 0x0093,
|
||||
[0x34] = 0x0094, [0x35] = 0x0095, [0x36] = 0x0096, [0x37] = 0x0004,
|
||||
[0x38] = 0x0098, [0x39] = 0x0099, [0x3a] = 0x009a, [0x3b] = 0x009b,
|
||||
[0x3c] = 0x0014, [0x3d] = 0x0015, [0x3e] = 0x009e, [0x3f] = 0x001a,
|
||||
[0x40] = 0x0020, [0x41] = 0x00a0, [0x42] = 0x00e2, [0x43] = 0x007b,
|
||||
[0x44] = 0x00e0, [0x45] = 0x00e1, [0x46] = 0x00e3, [0x47] = 0x007d,
|
||||
[0x48] = 0x00e7, [0x49] = 0x00f1, [0x4a] = 0x00a7, [0x4b] = 0x002e,
|
||||
[0x4c] = 0x003c, [0x4d] = 0x0028, [0x4e] = 0x002b, [0x4f] = 0x0021,
|
||||
[0x50] = 0x0026, [0x51] = 0x0060, [0x52] = 0x00ea, [0x53] = 0x00eb,
|
||||
[0x54] = 0x00e8, [0x55] = 0x00ed, [0x56] = 0x00ee, [0x57] = 0x00ef,
|
||||
[0x58] = 0x00ec, [0x59] = 0x00df, [0x5a] = 0x20ac, [0x5b] = 0x00c5,
|
||||
[0x5c] = 0x002a, [0x5d] = 0x0029, [0x5e] = 0x003b, [0x5f] = 0x005e,
|
||||
[0x60] = 0x002d, [0x61] = 0x002f, [0x62] = 0x00c2, [0x63] = 0x0023,
|
||||
[0x64] = 0x00c0, [0x65] = 0x00c1, [0x66] = 0x00c3, [0x67] = 0x0024,
|
||||
[0x68] = 0x00c7, [0x69] = 0x00d1, [0x6a] = 0x00f6, [0x6b] = 0x002c,
|
||||
[0x6c] = 0x0025, [0x6d] = 0x005f, [0x6e] = 0x003e, [0x6f] = 0x003f,
|
||||
[0x70] = 0x00f8, [0x71] = 0x005c, [0x72] = 0x00ca, [0x73] = 0x00cb,
|
||||
[0x74] = 0x00c8, [0x75] = 0x00cd, [0x76] = 0x00ce, [0x77] = 0x00cf,
|
||||
[0x78] = 0x00cc, [0x79] = 0x00e9, [0x7a] = 0x003a, [0x7b] = 0x00c4,
|
||||
[0x7c] = 0x00d6, [0x7d] = 0x0027, [0x7e] = 0x003d, [0x7f] = 0x0022,
|
||||
[0x80] = 0x00d8, [0x81] = 0x0061, [0x82] = 0x0062, [0x83] = 0x0063,
|
||||
[0x84] = 0x0064, [0x85] = 0x0065, [0x86] = 0x0066, [0x87] = 0x0067,
|
||||
[0x88] = 0x0068, [0x89] = 0x0069, [0x8a] = 0x00ab, [0x8b] = 0x00bb,
|
||||
[0x8c] = 0x0161, [0x8d] = 0x00fd, [0x8e] = 0x017e, [0x8f] = 0x00b1,
|
||||
[0x90] = 0x00b0, [0x91] = 0x006a, [0x92] = 0x006b, [0x93] = 0x006c,
|
||||
[0x94] = 0x006d, [0x95] = 0x006e, [0x96] = 0x006f, [0x97] = 0x0070,
|
||||
[0x98] = 0x0071, [0x99] = 0x0072, [0x9a] = 0x00aa, [0x9b] = 0x00ba,
|
||||
[0x9c] = 0x00e6, [0x9d] = 0x00b8, [0x9e] = 0x00c6, [0x9f] = 0x005d,
|
||||
[0xa0] = 0x00b5, [0xa1] = 0x00fc, [0xa2] = 0x0073, [0xa3] = 0x0074,
|
||||
[0xa4] = 0x0075, [0xa5] = 0x0076, [0xa6] = 0x0077, [0xa7] = 0x0078,
|
||||
[0xa8] = 0x0079, [0xa9] = 0x007a, [0xaa] = 0x00a1, [0xab] = 0x00bf,
|
||||
[0xac] = 0x0160, [0xad] = 0x00dd, [0xae] = 0x017d, [0xaf] = 0x00ae,
|
||||
[0xb0] = 0x00a2, [0xb1] = 0x00a3, [0xb2] = 0x00a5, [0xb3] = 0x00b7,
|
||||
[0xb4] = 0x00a9, [0xb5] = 0x005b, [0xb6] = 0x00b6, [0xb7] = 0x00bc,
|
||||
[0xb8] = 0x00bd, [0xb9] = 0x00be, [0xba] = 0x00ac, [0xbb] = 0x007c,
|
||||
[0xbc] = 0x00af, [0xbd] = 0x00a8, [0xbe] = 0x00b4, [0xbf] = 0x00d7,
|
||||
[0xc0] = 0x00e4, [0xc1] = 0x0041, [0xc2] = 0x0042, [0xc3] = 0x0043,
|
||||
[0xc4] = 0x0044, [0xc5] = 0x0045, [0xc6] = 0x0046, [0xc7] = 0x0047,
|
||||
[0xc8] = 0x0048, [0xc9] = 0x0049, [0xca] = 0x00ad, [0xcb] = 0x00f4,
|
||||
[0xcc] = 0x00a6, [0xcd] = 0x00f2, [0xce] = 0x00f3, [0xcf] = 0x00f5,
|
||||
[0xd0] = 0x00e5, [0xd1] = 0x004a, [0xd2] = 0x004b, [0xd3] = 0x004c,
|
||||
[0xd4] = 0x004d, [0xd5] = 0x004e, [0xd6] = 0x004f, [0xd7] = 0x0050,
|
||||
[0xd8] = 0x0051, [0xd9] = 0x0052, [0xda] = 0x00b9, [0xdb] = 0x00fb,
|
||||
[0xdc] = 0x007e, [0xdd] = 0x00f9, [0xde] = 0x00fa, [0xdf] = 0x00ff,
|
||||
[0xe0] = 0x00c9, [0xe1] = 0x00f7, [0xe2] = 0x0053, [0xe3] = 0x0054,
|
||||
[0xe4] = 0x0055, [0xe5] = 0x0056, [0xe6] = 0x0057, [0xe7] = 0x0058,
|
||||
[0xe8] = 0x0059, [0xe9] = 0x005a, [0xea] = 0x00b2, [0xeb] = 0x00d4,
|
||||
[0xec] = 0x0040, [0xed] = 0x00d2, [0xee] = 0x00d3, [0xef] = 0x00d5,
|
||||
[0xf0] = 0x0030, [0xf1] = 0x0031, [0xf2] = 0x0032, [0xf3] = 0x0033,
|
||||
[0xf4] = 0x0034, [0xf5] = 0x0035, [0xf6] = 0x0036, [0xf7] = 0x0037,
|
||||
[0xf8] = 0x0038, [0xf9] = 0x0039, [0xfa] = 0x00b3, [0xfb] = 0x00db,
|
||||
[0xfc] = 0x00dc, [0xfd] = 0x00d9, [0xfe] = 0x00da, [0xff] = 0x009f
|
||||
};
|
||||
|
||||
static const struct gap from_idx[] =
|
||||
{
|
||||
{ start: 0x0000, end: 0x00ff, idx: 0 },
|
||||
{ start: 0x0160, end: 0x0161, idx: -96 },
|
||||
{ start: 0x017d, end: 0x017e, idx: -123 },
|
||||
{ start: 0x203e, end: 0x203e, idx: -7994 },
|
||||
{ start: 0x20ac, end: 0x20ac, idx: -8103 },
|
||||
{ start: 0xffff, end: 0xffff, idx: 0 }
|
||||
};
|
||||
|
||||
static const char from_ucs4[] =
|
||||
{
|
||||
'\x00', '\x01', '\x02', '\x03', '\x37', '\x2d', '\x2e', '\x2f',
|
||||
'\x16', '\x05', '\x25', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
|
||||
'\x10', '\x11', '\x12', '\x13', '\x3c', '\x3d', '\x32', '\x26',
|
||||
'\x18', '\x19', '\x3f', '\x27', '\x1c', '\x1d', '\x1e', '\x1f',
|
||||
'\x40', '\x4f', '\x7f', '\x63', '\x67', '\x6c', '\x50', '\x7d',
|
||||
'\x4d', '\x5d', '\x5c', '\x4e', '\x6b', '\x60', '\x4b', '\x61',
|
||||
'\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
|
||||
'\xf8', '\xf9', '\x7a', '\x5e', '\x4c', '\x7e', '\x6e', '\x6f',
|
||||
'\xec', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
|
||||
'\xc8', '\xc9', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6',
|
||||
'\xd7', '\xd8', '\xd9', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6',
|
||||
'\xe7', '\xe8', '\xe9', '\xb5', '\x71', '\x9f', '\x5f', '\x6d',
|
||||
'\x51', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
|
||||
'\x88', '\x89', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96',
|
||||
'\x97', '\x98', '\x99', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6',
|
||||
'\xa7', '\xa8', '\xa9', '\x43', '\xbb', '\x47', '\xdc', '\x07',
|
||||
'\x20', '\x21', '\x22', '\x23', '\x24', '\x15', '\x06', '\x17',
|
||||
'\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x09', '\x0a', '\x1b',
|
||||
'\x30', '\x31', '\x1a', '\x33', '\x34', '\x35', '\x36', '\x08',
|
||||
'\x38', '\x39', '\x3a', '\x3b', '\x04', '\x14', '\x3e', '\xff',
|
||||
'\x41', '\xaa', '\xb0', '\xb1', '\x00', '\xb2', '\xcc', '\x4a',
|
||||
'\xbd', '\xb4', '\x9a', '\x8a', '\xba', '\xca', '\xaf', '\xbc',
|
||||
'\x90', '\x8f', '\xea', '\xfa', '\xbe', '\xa0', '\xb6', '\xb3',
|
||||
'\x9d', '\xda', '\x9b', '\x8b', '\xb7', '\xb8', '\xb9', '\xab',
|
||||
'\x64', '\x65', '\x62', '\x66', '\x7b', '\x5b', '\x9e', '\x68',
|
||||
'\x74', '\xe0', '\x72', '\x73', '\x78', '\x75', '\x76', '\x77',
|
||||
'\x00', '\x69', '\xed', '\xee', '\xeb', '\xef', '\x7c', '\xbf',
|
||||
'\x80', '\xfd', '\xfe', '\xfb', '\xfc', '\xad', '\x00', '\x59',
|
||||
'\x44', '\x45', '\x42', '\x46', '\xc0', '\xd0', '\x9c', '\x48',
|
||||
'\x54', '\x79', '\x52', '\x53', '\x58', '\x55', '\x56', '\x57',
|
||||
'\x00', '\x49', '\xcd', '\xce', '\xcb', '\xcf', '\x6a', '\xe1',
|
||||
'\x70', '\xdd', '\xde', '\xdb', '\xa1', '\x8d', '\x00', '\xdf',
|
||||
'\xac', '\x8c', '\xae', '\x8e', '\xbc', '\x5a'
|
||||
};
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
/* Conversion from and to IBM1158.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
/* Get the conversion table. */
|
||||
#define TABLES <ibm1158.h>
|
||||
|
||||
#define CHARSET_NAME "IBM1158//"
|
||||
#define HAS_HOLES 0 /* All 256 character are defined. */
|
||||
|
||||
#include <8bit-gap.c>
|
||||
|
|
@ -0,0 +1,135 @@
|
|||
/* Mapping table for IBM1158.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jiro SEKIBA <sekiba@jp.ibm.com>, 2005.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
The GNU C Library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with the GNU C Library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA. */
|
||||
|
||||
static const uint32_t to_ucs4[256] =
|
||||
{
|
||||
[0x00] = 0x0000, [0x01] = 0x0001, [0x02] = 0x0002, [0x03] = 0x0003,
|
||||
[0x04] = 0x009c, [0x05] = 0x0009, [0x06] = 0x0086, [0x07] = 0x007f,
|
||||
[0x08] = 0x0097, [0x09] = 0x008d, [0x0a] = 0x008e, [0x0b] = 0x000b,
|
||||
[0x0c] = 0x000c, [0x0d] = 0x000d, [0x0e] = 0x000e, [0x0f] = 0x000f,
|
||||
[0x10] = 0x0010, [0x11] = 0x0011, [0x12] = 0x0012, [0x13] = 0x0013,
|
||||
[0x14] = 0x009d, [0x15] = 0x0085, [0x16] = 0x0008, [0x17] = 0x0087,
|
||||
[0x18] = 0x0018, [0x19] = 0x0019, [0x1a] = 0x0092, [0x1b] = 0x008f,
|
||||
[0x1c] = 0x001c, [0x1d] = 0x001d, [0x1e] = 0x001e, [0x1f] = 0x001f,
|
||||
[0x20] = 0x0080, [0x21] = 0x0081, [0x22] = 0x0082, [0x23] = 0x0083,
|
||||
[0x24] = 0x0084, [0x25] = 0x000a, [0x26] = 0x0017, [0x27] = 0x001b,
|
||||
[0x28] = 0x0088, [0x29] = 0x0089, [0x2a] = 0x008a, [0x2b] = 0x008b,
|
||||
[0x2c] = 0x008c, [0x2d] = 0x0005, [0x2e] = 0x0006, [0x2f] = 0x0007,
|
||||
[0x30] = 0x0090, [0x31] = 0x0091, [0x32] = 0x0016, [0x33] = 0x0093,
|
||||
[0x34] = 0x0094, [0x35] = 0x0095, [0x36] = 0x0096, [0x37] = 0x0004,
|
||||
[0x38] = 0x0098, [0x39] = 0x0099, [0x3a] = 0x009a, [0x3b] = 0x009b,
|
||||
[0x3c] = 0x0014, [0x3d] = 0x0015, [0x3e] = 0x009e, [0x3f] = 0x001a,
|
||||
[0x40] = 0x0020, [0x41] = 0x00a0, [0x42] = 0x0452, [0x43] = 0x0491,
|
||||
[0x44] = 0x0451, [0x45] = 0x0454, [0x46] = 0x0455, [0x47] = 0x0456,
|
||||
[0x48] = 0x0457, [0x49] = 0x0458, [0x4a] = 0x005b, [0x4b] = 0x002e,
|
||||
[0x4c] = 0x003c, [0x4d] = 0x0028, [0x4e] = 0x002b, [0x4f] = 0x0021,
|
||||
[0x50] = 0x0026, [0x51] = 0x0459, [0x52] = 0x045a, [0x53] = 0x045b,
|
||||
[0x54] = 0x045c, [0x55] = 0x045e, [0x56] = 0x045f, [0x57] = 0x042a,
|
||||
[0x58] = 0x2116, [0x59] = 0x0402, [0x5a] = 0x005d, [0x5b] = 0x0024,
|
||||
[0x5c] = 0x002a, [0x5d] = 0x0029, [0x5e] = 0x003b, [0x5f] = 0x005e,
|
||||
[0x60] = 0x002d, [0x61] = 0x002f, [0x62] = 0x0490, [0x63] = 0x0401,
|
||||
[0x64] = 0x0404, [0x65] = 0x0405, [0x66] = 0x0406, [0x67] = 0x0407,
|
||||
[0x68] = 0x0408, [0x69] = 0x0409, [0x6a] = 0x007c, [0x6b] = 0x002c,
|
||||
[0x6c] = 0x0025, [0x6d] = 0x005f, [0x6e] = 0x003e, [0x6f] = 0x003f,
|
||||
[0x70] = 0x040a, [0x71] = 0x040b, [0x72] = 0x040c, [0x73] = 0x00ad,
|
||||
[0x74] = 0x040e, [0x75] = 0x040f, [0x76] = 0x044e, [0x77] = 0x0430,
|
||||
[0x78] = 0x0431, [0x79] = 0x0060, [0x7a] = 0x003a, [0x7b] = 0x0023,
|
||||
[0x7c] = 0x0040, [0x7d] = 0x0027, [0x7e] = 0x003d, [0x7f] = 0x0022,
|
||||
[0x80] = 0x0446, [0x81] = 0x0061, [0x82] = 0x0062, [0x83] = 0x0063,
|
||||
[0x84] = 0x0064, [0x85] = 0x0065, [0x86] = 0x0066, [0x87] = 0x0067,
|
||||
[0x88] = 0x0068, [0x89] = 0x0069, [0x8a] = 0x0434, [0x8b] = 0x0435,
|
||||
[0x8c] = 0x0444, [0x8d] = 0x0433, [0x8e] = 0x0445, [0x8f] = 0x0438,
|
||||
[0x90] = 0x0439, [0x91] = 0x006a, [0x92] = 0x006b, [0x93] = 0x006c,
|
||||
[0x94] = 0x006d, [0x95] = 0x006e, [0x96] = 0x006f, [0x97] = 0x0070,
|
||||
[0x98] = 0x0071, [0x99] = 0x0072, [0x9a] = 0x043a, [0x9b] = 0x043b,
|
||||
[0x9c] = 0x043c, [0x9d] = 0x043d, [0x9e] = 0x043e, [0x9f] = 0x043f,
|
||||
[0xa0] = 0x044f, [0xa1] = 0x007e, [0xa2] = 0x0073, [0xa3] = 0x0074,
|
||||
[0xa4] = 0x0075, [0xa5] = 0x0076, [0xa6] = 0x0077, [0xa7] = 0x0078,
|
||||
[0xa8] = 0x0079, [0xa9] = 0x007a, [0xaa] = 0x0440, [0xab] = 0x0441,
|
||||
[0xac] = 0x0442, [0xad] = 0x0443, [0xae] = 0x0436, [0xaf] = 0x0432,
|
||||
[0xb0] = 0x044c, [0xb1] = 0x044b, [0xb2] = 0x0437, [0xb3] = 0x0448,
|
||||
[0xb4] = 0x044d, [0xb5] = 0x0449, [0xb6] = 0x0447, [0xb7] = 0x044a,
|
||||
[0xb8] = 0x042e, [0xb9] = 0x0410, [0xba] = 0x0411, [0xbb] = 0x0426,
|
||||
[0xbc] = 0x0414, [0xbd] = 0x0415, [0xbe] = 0x0424, [0xbf] = 0x0413,
|
||||
[0xc0] = 0x007b, [0xc1] = 0x0041, [0xc2] = 0x0042, [0xc3] = 0x0043,
|
||||
[0xc4] = 0x0044, [0xc5] = 0x0045, [0xc6] = 0x0046, [0xc7] = 0x0047,
|
||||
[0xc8] = 0x0048, [0xc9] = 0x0049, [0xca] = 0x0425, [0xcb] = 0x0418,
|
||||
[0xcc] = 0x0419, [0xcd] = 0x041a, [0xce] = 0x041b, [0xcf] = 0x041c,
|
||||
[0xd0] = 0x007d, [0xd1] = 0x004a, [0xd2] = 0x004b, [0xd3] = 0x004c,
|
||||
[0xd4] = 0x004d, [0xd5] = 0x004e, [0xd6] = 0x004f, [0xd7] = 0x0050,
|
||||
[0xd8] = 0x0051, [0xd9] = 0x0052, [0xda] = 0x041d, [0xdb] = 0x041e,
|
||||
[0xdc] = 0x041f, [0xdd] = 0x042f, [0xde] = 0x0420, [0xdf] = 0x0421,
|
||||
[0xe0] = 0x005c, [0xe1] = 0x20ac, [0xe2] = 0x0053, [0xe3] = 0x0054,
|
||||
[0xe4] = 0x0055, [0xe5] = 0x0056, [0xe6] = 0x0057, [0xe7] = 0x0058,
|
||||
[0xe8] = 0x0059, [0xe9] = 0x005a, [0xea] = 0x0422, [0xeb] = 0x0423,
|
||||
[0xec] = 0x0416, [0xed] = 0x0412, [0xee] = 0x042c, [0xef] = 0x042b,
|
||||
[0xf0] = 0x0030, [0xf1] = 0x0031, [0xf2] = 0x0032, [0xf3] = 0x0033,
|
||||
[0xf4] = 0x0034, [0xf5] = 0x0035, [0xf6] = 0x0036, [0xf7] = 0x0037,
|
||||
[0xf8] = 0x0038, [0xf9] = 0x0039, [0xfa] = 0x0417, [0xfb] = 0x0428,
|
||||
[0xfc] = 0x042d, [0xfd] = 0x0429, [0xfe] = 0x0427, [0xff] = 0x009f
|
||||
};
|
||||
|
||||
static const struct gap from_idx[] =
|
||||
{
|
||||
{ start: 0x0000, end: 0x00a0, idx: 0 },
|
||||
{ start: 0x00ad, end: 0x00ad, idx: -12 },
|
||||
{ start: 0x0401, end: 0x045f, idx: -863 },
|
||||
{ start: 0x0490, end: 0x0491, idx: -911 },
|
||||
{ start: 0x20ac, end: 0x20ac, idx: -8105 },
|
||||
{ start: 0x2116, end: 0x2116, idx: -8210 },
|
||||
{ start: 0xffff, end: 0xffff, idx: 0 }
|
||||
};
|
||||
|
||||
static const char from_ucs4[] =
|
||||
{
|
||||
'\x00', '\x01', '\x02', '\x03', '\x37', '\x2d', '\x2e', '\x2f',
|
||||
'\x16', '\x05', '\x25', '\x0b', '\x0c', '\x0d', '\x0e', '\x0f',
|
||||
'\x10', '\x11', '\x12', '\x13', '\x3c', '\x3d', '\x32', '\x26',
|
||||
'\x18', '\x19', '\x3f', '\x27', '\x1c', '\x1d', '\x1e', '\x1f',
|
||||
'\x40', '\x4f', '\x7f', '\x7b', '\x5b', '\x6c', '\x50', '\x7d',
|
||||
'\x4d', '\x5d', '\x5c', '\x4e', '\x6b', '\x60', '\x4b', '\x61',
|
||||
'\xf0', '\xf1', '\xf2', '\xf3', '\xf4', '\xf5', '\xf6', '\xf7',
|
||||
'\xf8', '\xf9', '\x7a', '\x5e', '\x4c', '\x7e', '\x6e', '\x6f',
|
||||
'\x7c', '\xc1', '\xc2', '\xc3', '\xc4', '\xc5', '\xc6', '\xc7',
|
||||
'\xc8', '\xc9', '\xd1', '\xd2', '\xd3', '\xd4', '\xd5', '\xd6',
|
||||
'\xd7', '\xd8', '\xd9', '\xe2', '\xe3', '\xe4', '\xe5', '\xe6',
|
||||
'\xe7', '\xe8', '\xe9', '\x4a', '\xe0', '\x5a', '\x5f', '\x6d',
|
||||
'\x79', '\x81', '\x82', '\x83', '\x84', '\x85', '\x86', '\x87',
|
||||
'\x88', '\x89', '\x91', '\x92', '\x93', '\x94', '\x95', '\x96',
|
||||
'\x97', '\x98', '\x99', '\xa2', '\xa3', '\xa4', '\xa5', '\xa6',
|
||||
'\xa7', '\xa8', '\xa9', '\xc0', '\x6a', '\xd0', '\xa1', '\x07',
|
||||
'\x20', '\x21', '\x22', '\x23', '\x24', '\x15', '\x06', '\x17',
|
||||
'\x28', '\x29', '\x2a', '\x2b', '\x2c', '\x09', '\x0a', '\x1b',
|
||||
'\x30', '\x31', '\x1a', '\x33', '\x34', '\x35', '\x36', '\x08',
|
||||
'\x38', '\x39', '\x3a', '\x3b', '\x04', '\x14', '\x3e', '\xff',
|
||||
'\x41', '\x73', '\x63', '\x59', '\x00', '\x64', '\x65', '\x66',
|
||||
'\x67', '\x68', '\x69', '\x70', '\x71', '\x72', '\x00', '\x74',
|
||||
'\x75', '\xb9', '\xba', '\xed', '\xbf', '\xbc', '\xbd', '\xec',
|
||||
'\xfa', '\xcb', '\xcc', '\xcd', '\xce', '\xcf', '\xda', '\xdb',
|
||||
'\xdc', '\xde', '\xdf', '\xea', '\xeb', '\xbe', '\xca', '\xbb',
|
||||
'\xfe', '\xfb', '\xfd', '\x57', '\xef', '\xee', '\xfc', '\xb8',
|
||||
'\xdd', '\x77', '\x78', '\xaf', '\x8d', '\x8a', '\x8b', '\xae',
|
||||
'\xb2', '\x8f', '\x90', '\x9a', '\x9b', '\x9c', '\x9d', '\x9e',
|
||||
'\x9f', '\xaa', '\xab', '\xac', '\xad', '\x8c', '\x8e', '\x80',
|
||||
'\xb6', '\xb3', '\xb5', '\xb7', '\xb1', '\xb0', '\xb4', '\x76',
|
||||
'\xa0', '\x00', '\x44', '\x42', '\x00', '\x45', '\x46', '\x47',
|
||||
'\x48', '\x49', '\x51', '\x52', '\x53', '\x54', '\x00', '\x55',
|
||||
'\x56', '\x62', '\x43', '\xe1', '\x58'
|
||||
};
|
||||
|
|
@ -45,7 +45,7 @@ static const uint16_t __ibm930sb_to_ucs4[256] =
|
|||
/* 0x40 */ 0x0020, 0xFF61, 0xFF62, 0xFF63, 0xFF64, 0xFF65, 0xFF66, 0xFF67,
|
||||
/* 0x48 */ 0xFF68, 0xFF69, 0x00A3, 0x002E, 0x003C, 0x0028, 0x002B, 0x007C,
|
||||
/* 0x50 */ 0x0026, 0xFF6A, 0xFF6B, 0xFF6C, 0xFF6D, 0xFF6E, 0xFF6F, 0x0000,
|
||||
/* 0x58 */ 0xFF70, 0x0000, 0x0021, 0x005C, 0x002A, 0x0029, 0x003B, 0x00AC,
|
||||
/* 0x58 */ 0xFF70, 0x0000, 0x0021, 0x00A5, 0x002A, 0x0029, 0x003B, 0x00AC,
|
||||
/* 0x60 */ 0x002D, 0x002F, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066,
|
||||
/* 0x68 */ 0x0067, 0x0068, 0x0000, 0x002C, 0x0025, 0x005F, 0x003E, 0x003F,
|
||||
/* 0x70 */ 0x005B, 0x0069, 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F,
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ static const uint16_t __ibm939sb_to_ucs4[256] =
|
|||
/* 0x98 */ 0x0071, 0x0072, 0xFF89, 0xFF8A, 0xFF8B, 0xFF8C, 0xFF8D, 0xFF8E,
|
||||
/* 0xa0 */ 0x203E, 0x007E, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
|
||||
/* 0xa8 */ 0x0079, 0x007A, 0xFF8F, 0xFF90, 0xFF91, 0x005B, 0xFF92, 0xFF93,
|
||||
/* 0xb0 */ 0x005E, 0x00A3, 0x005C, 0xFF94, 0xFF95, 0xFF96, 0xFF97, 0xFF98,
|
||||
/* 0xb0 */ 0x005E, 0x00A3, 0x00A5, 0xFF94, 0xFF95, 0xFF96, 0xFF97, 0xFF98,
|
||||
/* 0xb8 */ 0xFF99, 0xFF9A, 0xFF9B, 0xFF9C, 0xFF9D, 0x005D, 0xFF9E, 0xFF9F,
|
||||
/* 0xc0 */ 0x007B, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
|
||||
/* 0xc8 */ 0x0048, 0x0049, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
|
||||
|
|
|
|||
|
|
@ -0,0 +1,28 @@
|
|||
! " # $ % & ' ( ) * + , - . / 0
|
||||
1 2 3 4 5 6 7 8 9 : ; < = > ? @ A
|
||||
B C D E F G H I J K L M N O P Q R
|
||||
S T U V W X Y Z [ \ ] ^ _ ` a b c
|
||||
d e f g h i j k l m n o p q r s t
|
||||
u v w x y z { | } ~ € <20> ‚ ƒ „ …
|
||||
† ‡ ˆ ‰ Š ‹ Œ <20> Ž <20> <20> ‘ ’ “ ” • –
|
||||
— ˜ ™ š › œ <20> ž Ÿ ¡ ¢ £ ¤ ¥ ¦ §
|
||||
¨ © ª « ¬ ® ¯ ° ± ² ³ ´ µ ¶ · ¸
|
||||
¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É
|
||||
Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú
|
||||
Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë
|
||||
ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü
|
||||
ý þ ÿ
|
||||
! " # $ % & ' ( ) * + , - . / 0
|
||||
1 2 3 4 5 6 7 8 9 : ; < = > ? @ A
|
||||
B C D E F G H I J K L M N O P Q R
|
||||
S T U V W X Y Z [ \ ] ^ _ ` a b c
|
||||
d e f g h i j k l m n o p q r s t
|
||||
u v w x y z { | } ~ € <20> ‚ ƒ „ …
|
||||
† ‡ ˆ ‰ Š ‹ Œ <20> Ž <20> <20> ‘ ’ “ ” • –
|
||||
— ˜ ™ š › œ <20> ž Ÿ ¡ ¢ £ ¤ ¥ ¦ §
|
||||
¨ © ª « ¬ ® ¯ ° ± ² ³ ´ µ ¶ · ¸
|
||||
¹ º » ¼ ½ ¾ ¿ À Á Â Ã Ä Å Æ Ç È É
|
||||
Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú
|
||||
Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë
|
||||
ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü
|
||||
ý þ ÿ
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
|
||||
ђѓёєѕіїј[.<(+!&љњћќўџЪ№Ђ]$*);^-/ЃЁЄЅІЇЈЉ|,%_>?ЊЋЌЎЏюаб`:#@'="цabcdefghiдефгхийjklmnopqrклмнопя~stuvwxyzрстужвьызшэщчъЮАБЦДЕФГ{ABCDEFGHIХИЙКЛМ}JKLMNOPQRНОПЯРС\§STUVWXYZТУЖВЬЫ0123456789ЗШЭЩЧ
|
||||
ђѓёєѕіїј[.<(+!&љњћќўџЪ№Ђ]$*);^-/ЃЁЄЅІЇЈЉ|,%_>?ЊЋЌЎЏюаб`:#@'="цabcdefghiдефгхийjklmnopqrклмнопя~stuvwxyzрстужвьызшэщчъЮАБЦДЕФГ{ABCDEFGHIХИЙКЛМ}JKLMNOPQRНОПЯРС\§STUVWXYZТУЖВЬЫ0123456789ЗШЭЩЧ
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue