1
/* Copyright (C) 1999-2010 Free Software Foundation, Inc.
2
This file is part of the GNU LIBICONV Library.
4
The GNU LIBICONV Library is free software; you can redistribute it
5
and/or modify it under the terms of the GNU Library General Public
6
License as published by the Free Software Foundation; either version 2
7
of the License, or (at your option) any later version.
9
The GNU LIBICONV Library is distributed in the hope that it will be
10
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
Library General Public License for more details.
14
You should have received a copy of the GNU Library General Public
15
License along with the GNU LIBICONV Library; see the file COPYING.LIB.
16
If not, write to the Free Software Foundation, Inc., 51 Franklin Street,
17
Fifth Floor, Boston, MA 02110-1301, USA. */
19
/* The list of all system independent user-visible encodings. */
21
/* By convention, an encoding named FOOBAR or FOO_BAR or FOO-BAR is defined
22
in a file named "foobar.h" through the functions foobar_mbtowc and
23
foobar_wctomb (and possibly foobar_reset). */
25
/* DEFENCODING(( name, alias1, ..., ),
27
{ xxx_mbtowc, xxx_flushwc },
28
{ xxx_wctomb, xxx_reset })
29
defines an encoding with the given name and aliases. (There is no
30
difference between a name and an alias. By convention, the name is chosen
31
as the preferred MIME name or the standard name.)
32
All names and aliases must be in ASCII. Case is not significant, but
33
for the "cs*" aliases mixed case is preferred, otherwise UPPERCASE is
34
preferred. For all names and aliases, note where it comes from.
35
xxx is the name as used in the C code (lowercase).
39
DEFENCODING(( "US-ASCII", /* IANA */
40
"ASCII", /* IANA, JDK 1.1 */
41
"ISO646-US", /* IANA */
42
"ISO_646.IRV:1991", /* IANA */
43
"ISO-IR-6", /* IANA */
44
"ANSI_X3.4-1968", /* IANA */
45
"ANSI_X3.4-1986", /* IANA */
50
/*"ISO646.1991-IRV", X11R6.4 */
53
{ ascii_mbtowc, NULL }, { ascii_wctomb, NULL })
54
#ifdef USE_SOLARIS_ALIASES
55
DEFALIAS( "646", /* Solaris */
59
/* General multi-byte encodings */
61
DEFENCODING(( "UTF-8", /* IANA, RFC 2279 */
63
/*"CP65001", Windows */
66
{ utf8_mbtowc, NULL }, { utf8_wctomb, NULL })
67
#ifdef USE_HPUX_ALIASES
68
DEFALIAS( "UTF8", /* HP-UX */
72
DEFENCODING(( "UCS-2", /* glibc */
73
"ISO-10646-UCS-2", /* IANA */
74
"csUnicode", /* IANA */
77
{ ucs2_mbtowc, NULL }, { ucs2_wctomb, NULL })
79
DEFENCODING(( "UCS-2BE", /* glibc */
80
"UNICODEBIG", /* glibc */
81
"UNICODE-1-1", /* IANA */
82
"csUnicode11", /* IANA */
83
/*"CP1201", Windows */
86
{ ucs2be_mbtowc, NULL }, { ucs2be_wctomb, NULL })
88
DEFENCODING(( "UCS-2LE", /* glibc */
89
"UNICODELITTLE", /* glibc */
90
/*"CP1200", Windows */
93
{ ucs2le_mbtowc, NULL }, { ucs2le_wctomb, NULL })
95
DEFENCODING(( "UCS-4", /* glibc */
96
"ISO-10646-UCS-4", /* IANA */
100
{ ucs4_mbtowc, NULL }, { ucs4_wctomb, NULL })
102
DEFENCODING(( "UCS-4BE", /* glibc */
103
/*"CP12001", Windows */
106
{ ucs4be_mbtowc, NULL }, { ucs4be_wctomb, NULL })
108
DEFENCODING(( "UCS-4LE", /* glibc */
109
/*"CP12000", Windows */
112
{ ucs4le_mbtowc, NULL }, { ucs4le_wctomb, NULL })
114
DEFENCODING(( "UTF-16", /* IANA, RFC 2781 */
117
{ utf16_mbtowc, NULL }, { utf16_wctomb, NULL })
119
DEFENCODING(( "UTF-16BE", /* IANA, RFC 2781 */
122
{ utf16be_mbtowc, NULL }, { utf16be_wctomb, NULL })
124
DEFENCODING(( "UTF-16LE", /* IANA, RFC 2781 */
127
{ utf16le_mbtowc, NULL }, { utf16le_wctomb, NULL })
129
DEFENCODING(( "UTF-32", /* IANA, Unicode 3.1 */
132
{ utf32_mbtowc, NULL }, { utf32_wctomb, NULL })
134
DEFENCODING(( "UTF-32BE", /* IANA, Unicode 3.1 */
137
{ utf32be_mbtowc, NULL }, { utf32be_wctomb, NULL })
139
DEFENCODING(( "UTF-32LE", /* IANA, Unicode 3.1 */
142
{ utf32le_mbtowc, NULL }, { utf32le_wctomb, NULL })
144
DEFENCODING(( "UTF-7", /* IANA, RFC 2152 */
145
"UNICODE-1-1-UTF-7", /* IANA, RFC 1642 */
146
"csUnicode11UTF7", /* IANA */
147
/*"CP65000", Windows */
150
{ utf7_mbtowc, NULL }, { utf7_wctomb, utf7_reset })
152
DEFENCODING(( "UCS-2-INTERNAL", /* libiconv */
155
{ ucs2internal_mbtowc, NULL }, { ucs2internal_wctomb, NULL })
157
DEFENCODING(( "UCS-2-SWAPPED", /* libiconv */
160
{ ucs2swapped_mbtowc, NULL }, { ucs2swapped_wctomb, NULL })
162
DEFENCODING(( "UCS-4-INTERNAL", /* libiconv */
165
{ ucs4internal_mbtowc, NULL },{ ucs4internal_wctomb, NULL })
167
DEFENCODING(( "UCS-4-SWAPPED", /* libiconv */
170
{ ucs4swapped_mbtowc, NULL }, { ucs4swapped_wctomb, NULL })
175
{ c99_mbtowc, NULL }, { c99_wctomb, NULL })
177
DEFENCODING(( "JAVA",
180
{ java_mbtowc, NULL }, { java_wctomb, NULL })
182
/* Standard 8-bit encodings */
184
DEFENCODING(( "ISO-8859-1", /* IANA */
185
"ISO_8859-1", /* IANA */
186
"ISO_8859-1:1987", /* IANA */
187
"ISO-IR-100", /* IANA */
192
"csISOLatin1", /* IANA */
193
"ISO8859-1", /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
194
/*"ISO8859_1", JDK 1.1 */
195
/*"CP28591", Windows */
198
{ iso8859_1_mbtowc, NULL }, { iso8859_1_wctomb, NULL })
199
#ifdef USE_HPUX_ALIASES
200
DEFALIAS( "ISO88591", /* HP-UX */
204
DEFENCODING(( "ISO-8859-2", /* IANA */
205
"ISO_8859-2", /* IANA */
206
"ISO_8859-2:1987", /* IANA */
207
"ISO-IR-101", /* IANA */
210
"csISOLatin2", /* IANA */
211
"ISO8859-2", /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
212
/*"ISO8859_2", JDK 1.1 */
213
/*"CP28592", Windows */
216
{ iso8859_2_mbtowc, NULL }, { iso8859_2_wctomb, NULL })
217
#ifdef USE_HPUX_ALIASES
218
DEFALIAS( "ISO88592", /* HP-UX */
222
DEFENCODING(( "ISO-8859-3", /* IANA */
223
"ISO_8859-3", /* IANA */
224
"ISO_8859-3:1988", /* IANA */
225
"ISO-IR-109", /* IANA */
228
"csISOLatin3", /* IANA */
229
"ISO8859-3", /* X11R6.4, glibc, FreeBSD, Solaris */
230
/*"ISO8859_3", JDK 1.1 */
231
/*"CP28593", Windows */
234
{ iso8859_3_mbtowc, NULL }, { iso8859_3_wctomb, NULL })
236
DEFENCODING(( "ISO-8859-4", /* IANA */
237
"ISO_8859-4", /* IANA */
238
"ISO_8859-4:1988", /* IANA */
239
"ISO-IR-110", /* IANA */
242
"csISOLatin4", /* IANA */
243
"ISO8859-4", /* X11R6.4, glibc, FreeBSD, OSF/1, Solaris */
244
/*"ISO8859_4", JDK 1.1 */
245
/*"CP28594", Windows */
248
{ iso8859_4_mbtowc, NULL }, { iso8859_4_wctomb, NULL })
250
DEFENCODING(( "ISO-8859-5", /* IANA */
251
"ISO_8859-5", /* IANA */
252
"ISO_8859-5:1988", /* IANA */
253
"ISO-IR-144", /* IANA */
254
"CYRILLIC", /* IANA */
255
"csISOLatinCyrillic", /* IANA */
256
"ISO8859-5", /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
257
/*"ISO8859_5", JDK 1.1 */
258
/*"CP28595", Windows */
261
{ iso8859_5_mbtowc, NULL }, { iso8859_5_wctomb, NULL })
262
#ifdef USE_HPUX_ALIASES
263
DEFALIAS( "ISO88595", /* HP-UX */
267
DEFENCODING(( "ISO-8859-6", /* IANA */
268
"ISO_8859-6", /* IANA */
269
"ISO_8859-6:1987", /* IANA */
270
"ISO-IR-127", /* IANA */
271
"ECMA-114", /* IANA */
272
"ASMO-708", /* IANA */
274
"csISOLatinArabic", /* IANA */
275
"ISO8859-6", /* X11R6.4, glibc, FreeBSD, AIX, Solaris */
276
/*"ISO8859_6", JDK 1.1 */
277
/*"CP28596", Windows */
280
{ iso8859_6_mbtowc, NULL }, { iso8859_6_wctomb, NULL })
281
#ifdef USE_HPUX_ALIASES
282
DEFALIAS( "ISO88596", /* HP-UX */
286
DEFENCODING(( "ISO-8859-7", /* IANA, RFC 1947 */
287
"ISO_8859-7", /* IANA */
288
"ISO_8859-7:1987", /* IANA */
290
"ISO-IR-126", /* IANA */
291
"ECMA-118", /* IANA */
292
"ELOT_928", /* IANA */
295
"csISOLatinGreek", /* IANA */
296
"ISO8859-7", /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
297
/*"ISO8859_7", JDK 1.1 */
298
/*"CP28597", Windows */
301
{ iso8859_7_mbtowc, NULL }, { iso8859_7_wctomb, NULL })
302
#ifdef USE_HPUX_ALIASES
303
DEFALIAS( "ISO88597", /* HP-UX */
307
DEFENCODING(( "ISO-8859-8", /* IANA */
308
"ISO_8859-8", /* IANA */
309
"ISO_8859-8:1988", /* IANA */
310
"ISO-IR-138", /* IANA */
312
"csISOLatinHebrew", /* IANA */
313
"ISO8859-8", /* X11R6.4, glibc, FreeBSD, AIX, OSF/1, Solaris */
314
/*"ISO8859_8", JDK 1.1 */
315
/*"CP28598", Windows */
316
/*"CP38598", Windows */
319
{ iso8859_8_mbtowc, NULL }, { iso8859_8_wctomb, NULL })
320
#ifdef USE_HPUX_ALIASES
321
DEFALIAS( "ISO88598", /* HP-UX */
325
DEFENCODING(( "ISO-8859-9", /* IANA */
326
"ISO_8859-9", /* IANA */
327
"ISO_8859-9:1989", /* IANA */
328
"ISO-IR-148", /* IANA */
331
"csISOLatin5", /* IANA */
332
"ISO8859-9", /* X11R6.4, glibc, FreeBSD, AIX, IRIX, OSF/1, Solaris */
333
/*"ISO8859_9", JDK 1.1 */
334
/*"CP28599", Windows */
337
{ iso8859_9_mbtowc, NULL }, { iso8859_9_wctomb, NULL })
338
#ifdef USE_HPUX_ALIASES
339
DEFALIAS( "ISO88599", /* HP-UX */
343
DEFENCODING(( "ISO-8859-10", /* IANA */
345
"ISO_8859-10:1992", /* IANA */
346
"ISO-IR-157", /* IANA */
349
"csISOLatin6", /* IANA */
350
"ISO8859-10", /* X11R6.4, glibc, FreeBSD */
353
{ iso8859_10_mbtowc, NULL }, { iso8859_10_wctomb, NULL })
355
DEFENCODING(( "ISO-8859-11", /* glibc */
357
"ISO8859-11", /* X11R6.7, glibc */
360
{ iso8859_11_mbtowc, NULL }, { iso8859_11_wctomb, NULL })
362
DEFENCODING(( "ISO-8859-13", /* IANA, glibc */
364
"ISO-IR-179", /* glibc */
365
"LATIN7", /* glibc */
367
"ISO8859-13", /* glibc, FreeBSD */
370
{ iso8859_13_mbtowc, NULL }, { iso8859_13_wctomb, NULL })
371
#ifdef USE_AIX_ALIASES
372
DEFALIAS( "IBM-921", /* AIX */
376
DEFENCODING(( "ISO-8859-14", /* IANA, glibc */
377
"ISO_8859-14", /* IANA */
378
"ISO_8859-14:1998", /* IANA, glibc */
379
"ISO-IR-199", /* IANA */
380
"LATIN8", /* IANA, glibc */
381
"L8", /* IANA, glibc */
382
"ISO-CELTIC", /* IANA */
383
"ISO8859-14", /* glibc, FreeBSD */
386
{ iso8859_14_mbtowc, NULL }, { iso8859_14_wctomb, NULL })
388
DEFENCODING(( "ISO-8859-15", /* IANA, glibc */
389
"ISO_8859-15", /* IANA */
390
"ISO_8859-15:1998", /* glibc */
392
"LATIN-9", /* IANA */
393
"ISO8859-15", /* glibc, FreeBSD, AIX, OSF/1, Solaris */
394
/*"CP28605", Windows */
397
{ iso8859_15_mbtowc, NULL }, { iso8859_15_wctomb, NULL })
398
#ifdef USE_HPUX_ALIASES
399
DEFALIAS( "ISO885915", /* HP-UX */
403
DEFENCODING(( "ISO-8859-16", /* IANA */
404
"ISO_8859-16", /* IANA */
405
"ISO_8859-16:2001", /* IANA */
406
"ISO-IR-226", /* IANA */
407
"LATIN10", /* IANA */
409
"ISO8859-16", /* glibc, FreeBSD */
412
{ iso8859_16_mbtowc, NULL }, { iso8859_16_wctomb, NULL })
414
DEFENCODING(( "KOI8-R", /* IANA, RFC 1489, X11R6.4, JDK 1.1 */
415
"csKOI8R", /* IANA */
416
/*"CP20866", Windows */
419
{ koi8_r_mbtowc, NULL }, { koi8_r_wctomb, NULL })
421
DEFENCODING(( "KOI8-U", /* IANA, RFC 2319 */
424
{ koi8_u_mbtowc, NULL }, { koi8_u_wctomb, NULL })
426
DEFENCODING(( "KOI8-RU",
429
{ koi8_ru_mbtowc, NULL }, { koi8_ru_wctomb, NULL })
431
/* Windows 8-bit encodings */
433
DEFENCODING(( "CP1250", /* JDK 1.1 */
434
"WINDOWS-1250", /* IANA */
438
{ cp1250_mbtowc, NULL }, { cp1250_wctomb, NULL })
440
DEFENCODING(( "CP1251", /* JDK 1.1 */
441
"WINDOWS-1251", /* IANA */
445
{ cp1251_mbtowc, NULL }, { cp1251_wctomb, NULL })
446
#ifdef USE_SOLARIS_ALIASES
447
DEFALIAS( "ANSI-1251", /* Solaris */
451
DEFENCODING(( "CP1252", /* JDK 1.1 */
452
"WINDOWS-1252", /* IANA */
456
{ cp1252_mbtowc, NULL }, { cp1252_wctomb, NULL })
457
#ifdef USE_AIX_ALIASES
458
DEFALIAS( "IBM-1252", /* AIX */
462
DEFENCODING(( "CP1253", /* JDK 1.1 */
463
"WINDOWS-1253", /* IANA */
467
{ cp1253_mbtowc, NULL }, { cp1253_wctomb, NULL })
469
DEFENCODING(( "CP1254", /* JDK 1.1 */
470
"WINDOWS-1254", /* IANA */
474
{ cp1254_mbtowc, NULL }, { cp1254_wctomb, NULL })
476
DEFENCODING(( "CP1255", /* JDK 1.1 */
477
"WINDOWS-1255", /* IANA */
481
{ cp1255_mbtowc, cp1255_flushwc }, { cp1255_wctomb, NULL })
483
DEFENCODING(( "CP1256", /* JDK 1.1 */
484
"WINDOWS-1256", /* IANA */
488
{ cp1256_mbtowc, NULL }, { cp1256_wctomb, NULL })
490
DEFENCODING(( "CP1257", /* JDK 1.1 */
491
"WINDOWS-1257", /* IANA */
495
{ cp1257_mbtowc, NULL }, { cp1257_wctomb, NULL })
497
DEFENCODING(( "CP1258", /* JDK 1.1 */
498
"WINDOWS-1258", /* IANA */
501
{ cp1258_mbtowc, cp1258_flushwc }, { cp1258_wctomb, NULL })
503
/* DOS 8-bit encodings */
505
DEFENCODING(( "CP850", /* IANA, JDK 1.1 */
508
"csPC850Multilingual", /* IANA */
511
{ cp850_mbtowc, NULL }, { cp850_wctomb, NULL })
512
#ifdef USE_AIX_ALIASES
513
DEFALIAS( "IBM-850", /* AIX */
517
DEFENCODING(( "CP862", /* IANA, JDK 1.1 */
520
"csPC862LatinHebrew", /* IANA */
523
{ cp862_mbtowc, NULL }, { cp862_wctomb, NULL })
525
DEFENCODING(( "CP866", /* IANA, JDK 1.1 */
528
"csIBM866", /* IANA */
531
{ cp866_mbtowc, NULL }, { cp866_wctomb, NULL })
533
DEFENCODING(( "CP1131", /* FreeBSD, MacOS X */
536
{ cp1131_mbtowc, NULL }, { cp1131_wctomb, NULL })
537
#ifdef USE_AIX_ALIASES
538
DEFALIAS( "IBM-1131", /* AIX */
542
/* Macintosh 8-bit encodings */
544
DEFENCODING(( "MacRoman", /* JDK 1.1 */
545
/* This is the best table for MACINTOSH. The ones */
546
/* in glibc and FreeBSD-iconv are bad quality. */
547
"MACINTOSH", /* IANA */
549
"csMacintosh", /* IANA */
550
/*"CP10000", Windows */
553
{ mac_roman_mbtowc, NULL }, { mac_roman_wctomb, NULL })
555
DEFENCODING(( "MacCentralEurope", /* JDK 1.1 */
556
/*"CP10029", Windows */
559
{ mac_centraleurope_mbtowc, NULL }, { mac_centraleurope_wctomb, NULL })
561
DEFENCODING(( "MacIceland", /* JDK 1.1 */
562
/*"CP10079", Windows */
565
{ mac_iceland_mbtowc, NULL }, { mac_iceland_wctomb, NULL })
567
DEFENCODING(( "MacCroatian", /* JDK 1.1 */
568
/*"CP10082", Windows */
571
{ mac_croatian_mbtowc, NULL }, { mac_croatian_wctomb, NULL })
573
DEFENCODING(( "MacRomania", /* JDK 1.1 */
574
/*"CP10010", Windows */
577
{ mac_romania_mbtowc, NULL }, { mac_romania_wctomb, NULL })
579
DEFENCODING(( "MacCyrillic", /* JDK 1.1 */
580
/*"CP10007", Windows */
583
{ mac_cyrillic_mbtowc, NULL }, { mac_cyrillic_wctomb, NULL })
585
DEFENCODING(( "MacUkraine", /* JDK 1.1 */
586
/*"CP10017", Windows */
589
{ mac_ukraine_mbtowc, NULL }, { mac_ukraine_wctomb, NULL })
591
DEFENCODING(( "MacGreek", /* JDK 1.1 */
592
/*"CP10006", Windows */
595
{ mac_greek_mbtowc, NULL }, { mac_greek_wctomb, NULL })
597
DEFENCODING(( "MacTurkish", /* JDK 1.1 */
598
/*"CP10081", Windows */
601
{ mac_turkish_mbtowc, NULL }, { mac_turkish_wctomb, NULL })
603
DEFENCODING(( "MacHebrew", /* JDK 1.1 */
604
/*"CP10005", Windows */
607
{ mac_hebrew_mbtowc, NULL }, { mac_hebrew_wctomb, NULL })
609
DEFENCODING(( "MacArabic", /* JDK 1.1 */
610
/*"CP10004", Windows */
613
{ mac_arabic_mbtowc, NULL }, { mac_arabic_wctomb, NULL })
615
DEFENCODING(( "MacThai", /* JDK 1.1 */
616
/*"CP10021", Windows */
619
{ mac_thai_mbtowc, NULL }, { mac_thai_wctomb, NULL })
621
/* Other platform specific 8-bit encodings */
623
DEFENCODING(( "HP-ROMAN8", /* IANA, X11R6.4 */
626
"csHPRoman8", /* IANA */
629
{ hp_roman8_mbtowc, NULL }, { hp_roman8_wctomb, NULL })
631
DEFENCODING(( "NEXTSTEP",
634
{ nextstep_mbtowc, NULL }, { nextstep_wctomb, NULL })
636
/* Regional 8-bit encodings used for a single language */
638
DEFENCODING(( "ARMSCII-8",
641
{ armscii_8_mbtowc, NULL }, { armscii_8_wctomb, NULL })
643
DEFENCODING(( "GEORGIAN-ACADEMY",
646
{ georgian_academy_mbtowc, NULL }, { georgian_academy_wctomb, NULL })
648
DEFENCODING(( "GEORGIAN-PS",
651
{ georgian_ps_mbtowc, NULL }, { georgian_ps_wctomb, NULL })
653
DEFENCODING(( "KOI8-T",
656
{ koi8_t_mbtowc, NULL }, { koi8_t_wctomb, NULL })
658
DEFENCODING(( "PT154", /* IANA, glibc */
659
"PTCP154", /* IANA */
661
"CYRILLIC-ASIAN", /* IANA */
662
"csPTCP154", /* IANA */
665
{ pt154_mbtowc, NULL }, { pt154_wctomb, NULL })
667
DEFENCODING(( "RK1048", /* IANA, glibc */
668
"STRK1048-2002", /* IANA */
669
"KZ-1048", /* IANA */
670
"csKZ1048", /* IANA */
673
{ rk1048_mbtowc, NULL }, { rk1048_wctomb, NULL })
675
DEFENCODING(( "MULELAO-1",
678
{ mulelao_mbtowc, NULL }, { mulelao_wctomb, NULL })
680
DEFENCODING(( "CP1133",
684
{ cp1133_mbtowc, NULL }, { cp1133_wctomb, NULL })
686
DEFENCODING(( "TIS-620", /* IANA */
687
"TIS620", /* glibc, HP-UX */
688
"TIS620-0", /* glibc */
689
"TIS620.2529-1", /* glibc */
690
"TIS620.2533-0", /* glibc */
692
"ISO-IR-166", /* glibc */
695
{ tis620_mbtowc, NULL }, { tis620_wctomb, NULL })
696
#ifdef USE_OSF1_ALIASES
697
DEFALIAS( "TACTIS", /* OSF/1 */
700
#ifdef USE_SOLARIS_ALIASES
701
DEFALIAS( "TIS620.2533", /* Solaris */
705
DEFENCODING(( "CP874", /* JDK 1.1 */
709
{ cp874_mbtowc, NULL }, { cp874_wctomb, NULL })
711
DEFENCODING(( "VISCII", /* IANA, RFC 1456 */
713
"csVISCII", /* IANA */
716
{ viscii_mbtowc, NULL }, { viscii_wctomb, NULL })
718
DEFENCODING(( "TCVN",
724
{ tcvn_mbtowc, tcvn_flushwc }, { tcvn_wctomb, NULL })
726
/* CJK character sets (not documented) */
728
DEFENCODING(( "JIS_C6220-1969-RO", /* IANA */
729
"ISO646-JP", /* IANA */
730
"ISO-IR-14", /* IANA */
732
"csISO14JISC6220ro", /* IANA */
735
{ iso646_jp_mbtowc, NULL }, { iso646_jp_wctomb, NULL })
737
DEFENCODING(( "JIS_X0201", /* IANA */
740
"csHalfWidthKatakana", /* IANA */
741
/*"JISX0201.1976-0", X11R6.4 */
742
/*"JIS0201", JDK 1.1 */
745
{ jisx0201_mbtowc, NULL }, { jisx0201_wctomb, NULL })
747
DEFENCODING(( "JIS_X0208",
748
"JIS_X0208-1983", /* IANA */
752
"ISO-IR-87", /* IANA */
753
"JIS_C6226-1983", /* IANA */
754
"csISO87JISX0208", /* IANA */
755
/*"JISX0208.1983-0", X11R6.4 */
756
/*"JISX0208.1990-0", X11R6.4 */
757
/*"JIS0208", JDK 1.1 */
760
{ jisx0208_mbtowc, NULL }, { jisx0208_wctomb, NULL })
762
DEFENCODING(( "JIS_X0212",
764
"JIS_X0212-1990", /* IANA */
766
"ISO-IR-159", /* IANA */
767
"csISO159JISX02121990", /* IANA */
768
/*"JISX0212.1990-0", X11R6.4 */
769
/*"JIS0212", JDK 1.1 */
772
{ jisx0212_mbtowc, NULL }, { jisx0212_wctomb, NULL })
774
DEFENCODING(( "GB_1988-80", /* IANA */
775
"ISO646-CN", /* IANA */
776
"ISO-IR-57", /* IANA */
778
"csISO57GB1988", /* IANA */
781
{ iso646_cn_mbtowc, NULL }, { iso646_cn_wctomb, NULL })
783
DEFENCODING(( "GB_2312-80", /* IANA */
784
"ISO-IR-58", /* IANA */
785
"csISO58GB231280", /* IANA */
786
"CHINESE", /* IANA */
787
/*"GB2312.1980-0", X11R6.4 */
790
{ gb2312_mbtowc, NULL }, { gb2312_wctomb, NULL })
792
DEFENCODING(( "ISO-IR-165",
793
"CN-GB-ISOIR165", /* RFC 1922 */
796
{ isoir165_mbtowc, NULL }, { isoir165_wctomb, NULL })
798
DEFENCODING(( "KSC_5601", /* IANA */
799
"KS_C_5601-1987", /* IANA */
800
"KS_C_5601-1989", /* IANA */
801
"ISO-IR-149", /* IANA */
802
"csKSC56011987", /* IANA */
804
/*"KSC5601.1987-0", X11R6.4 */
805
/*"KSX1001:1992", Ken Lunde */
808
{ ksc5601_mbtowc, NULL }, { ksc5601_wctomb, NULL })
812
DEFENCODING(( "EUC-JP", /* IANA */
813
"EUCJP", /* glibc, HP-UX, IRIX, OSF/1, Solaris */
814
"Extended_UNIX_Code_Packed_Format_for_Japanese", /* IANA */
815
"csEUCPkdFmtJapanese", /* IANA */
816
/*"EUC_JP", JDK 1.1 */
817
/*"CP51932", Windows */
820
{ euc_jp_mbtowc, NULL }, { euc_jp_wctomb, NULL })
821
#ifdef USE_AIX_ALIASES
822
DEFALIAS( "IBM-EUCJP", /* AIX */
825
#ifdef USE_OSF1_ALIASES
826
DEFALIAS( "SDECKANJI", /* OSF/1 */
830
DEFENCODING(( "SHIFT_JIS", /* IANA */
831
"SHIFT-JIS", /* glibc */
832
"SJIS", /* JDK 1.1, HP-UX, OSF/1 */
833
"MS_KANJI", /* IANA */
834
"csShiftJIS", /* IANA */
837
{ sjis_mbtowc, NULL }, { sjis_wctomb, NULL })
838
#ifdef USE_SOLARIS_ALIASES
839
DEFALIAS( "PCK", /* Solaris */
843
DEFENCODING(( "CP932", /* glibc */
846
{ cp932_mbtowc, NULL }, { cp932_wctomb, NULL })
847
#ifdef USE_AIX_ALIASES
848
DEFALIAS( "IBM-932", /* AIX */
852
DEFENCODING(( "ISO-2022-JP", /* IANA, RFC 1468 */
853
"csISO2022JP", /* IANA */
854
/*"ISO2022JP", JDK 1.1 */
857
{ iso2022_jp_mbtowc, NULL }, { iso2022_jp_wctomb, iso2022_jp_reset })
859
DEFENCODING(( "ISO-2022-JP-1", /* RFC 2237 */
862
{ iso2022_jp1_mbtowc, NULL }, { iso2022_jp1_wctomb, iso2022_jp1_reset })
864
DEFENCODING(( "ISO-2022-JP-2", /* IANA, RFC 1554 */
865
"csISO2022JP2", /* IANA */
868
{ iso2022_jp2_mbtowc, NULL }, { iso2022_jp2_wctomb, iso2022_jp2_reset })
870
DEFENCODING(( "EUC-CN", /* glibc */
871
"EUCCN", /* glibc, IRIX */
873
"CN-GB", /* RFC 1922 */
874
"csGB2312", /* IANA */
875
/*"EUC_CN", JDK 1.1 */
876
/*"CP51936", Windows */
879
{ euc_cn_mbtowc, NULL }, { euc_cn_wctomb, NULL })
880
#ifdef USE_AIX_ALIASES
881
DEFALIAS( "IBM-EUCCN", /* AIX */
884
#ifdef USE_HPUX_ALIASES
885
DEFALIAS( "HP15CN", /* HP-UX */
888
#ifdef USE_OSF1_ALIASES
889
DEFALIAS( "DECHANZI", /* OSF/1 */
893
DEFENCODING(( "GBK", /* IANA, JDK 1.1 */
896
{ ces_gbk_mbtowc, NULL }, { ces_gbk_wctomb, NULL })
898
DEFENCODING(( "CP936", /* IANA */
900
"WINDOWS-936", /* IANA */
903
{ cp936_mbtowc, NULL }, { cp936_wctomb, NULL })
905
DEFENCODING(( "GB18030", /* IANA, glibc */
906
/*"CP54936", Windows */
909
{ gb18030_mbtowc, NULL }, { gb18030_wctomb, NULL })
911
DEFENCODING(( "ISO-2022-CN", /* IANA, RFC 1922 */
913
/*"ISO2022CN", JDK 1.1 */
916
{ iso2022_cn_mbtowc, NULL }, { iso2022_cn_wctomb, iso2022_cn_reset })
918
DEFENCODING(( "ISO-2022-CN-EXT", /* IANA, RFC 1922 */
921
{ iso2022_cn_ext_mbtowc, NULL }, { iso2022_cn_ext_wctomb, iso2022_cn_ext_reset })
923
DEFENCODING(( "HZ", /* RFC 1843 */
924
"HZ-GB-2312", /* IANA, RFC 1842 */
927
{ hz_mbtowc, NULL }, { hz_wctomb, hz_reset })
929
DEFENCODING(( "EUC-TW", /* glibc */
930
"EUCTW", /* glibc, HP-UX, IRIX, OSF/1 */
932
/*"EUC_TW", JDK 1.1 */
933
/*"CP51950", Windows */
936
{ euc_tw_mbtowc, NULL }, { euc_tw_wctomb, NULL })
937
#ifdef USE_AIX_ALIASES
938
DEFALIAS( "IBM-EUCTW", /* AIX */
941
#ifdef USE_SOLARIS_ALIASES
942
DEFALIAS( "CNS11643", /* Solaris */
946
DEFENCODING(( "BIG5", /* IANA, JDK 1.1 */
948
"BIG-FIVE", /* glibc */
949
"BIGFIVE", /* glibc */
950
"CN-BIG5", /* RFC 1922 */
954
{ ces_big5_mbtowc, NULL }, { ces_big5_wctomb, NULL })
956
DEFENCODING(( "CP950", /* JDK 1.1 */
959
{ cp950_mbtowc, NULL }, { cp950_wctomb, NULL })
961
DEFENCODING(( "BIG5-HKSCS:1999",
964
{ big5hkscs1999_mbtowc, big5hkscs1999_flushwc }, { big5hkscs1999_wctomb, big5hkscs1999_reset })
966
DEFENCODING(( "BIG5-HKSCS:2001",
969
{ big5hkscs2001_mbtowc, big5hkscs2001_flushwc }, { big5hkscs2001_wctomb, big5hkscs2001_reset })
971
DEFENCODING(( "BIG5-HKSCS:2004",
974
{ big5hkscs2004_mbtowc, big5hkscs2004_flushwc }, { big5hkscs2004_wctomb, big5hkscs2004_reset })
976
DEFENCODING(( "BIG5-HKSCS", /* IANA */
977
"BIG5HKSCS", /* glibc */
981
{ big5hkscs2008_mbtowc, big5hkscs2008_flushwc }, { big5hkscs2008_wctomb, big5hkscs2008_reset })
983
DEFENCODING(( "EUC-KR", /* IANA, RFC 1557 */
984
"EUCKR", /* glibc, HP-UX, IRIX, OSF/1 */
985
"csEUCKR", /* IANA */
986
/*"EUC_KR", JDK 1.1 */
987
/*"CP51949", Windows */
990
{ euc_kr_mbtowc, NULL }, { euc_kr_wctomb, NULL })
991
#ifdef USE_AIX_ALIASES
992
DEFALIAS( "IBM-EUCKR", /* AIX */
995
#ifdef USE_OSF1_ALIASES
996
DEFALIAS( "DECKOREAN", /* OSF/1 */
999
#ifdef USE_SOLARIS_ALIASES
1000
DEFALIAS( "5601", /* Solaris */
1004
DEFENCODING(( "CP949", /* JDK 1.1 */
1008
{ cp949_mbtowc, NULL }, { cp949_wctomb, NULL })
1009
#ifdef USE_OSF1_ALIASES
1010
DEFALIAS( "KSC5601", /* OSF/1 */
1014
DEFENCODING(( "JOHAB", /* glibc */
1015
"CP1361", /* glibc */
1018
{ johab_mbtowc, NULL }, { johab_wctomb, NULL })
1019
#ifdef USE_SOLARIS_ALIASES
1020
DEFALIAS( "KO_KR.JOHAP92", /* Solaris */
1024
DEFENCODING(( "ISO-2022-KR", /* IANA, RFC 1557 */
1025
"csISO2022KR", /* IANA */
1026
/*"ISO2022KR", JDK 1.1 */
1029
{ iso2022_kr_mbtowc, NULL }, { iso2022_kr_wctomb, iso2022_kr_reset })