File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / libiconv / lib / encodings.def
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 22:57:48 2012 UTC (12 years, 4 months ago) by misho
Branches: libiconv, MAIN
CVS tags: v1_13_1, HEAD
libiconv

    1: /* Copyright (C) 1999-2009 Free Software Foundation, Inc.
    2:    This file is part of the GNU LIBICONV Library.
    3: 
    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.
    8: 
    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.
   13: 
   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.  */
   18: 
   19: /* The list of all system independent user-visible encodings. */
   20: 
   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). */
   24: 
   25: /* DEFENCODING(( name, alias1, ..., ),
   26:                xxx,
   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).
   36:  */
   37: 
   38: 
   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 */
   46:               "CP367",                  /* IANA */
   47:               "IBM367",                 /* IANA */
   48:               "US",                     /* IANA */
   49:               "csASCII",                /* IANA */
   50:             /*"ISO646.1991-IRV",           X11R6.4 */
   51:             ),
   52:             ascii,
   53:             { ascii_mbtowc, NULL },       { ascii_wctomb, NULL })
   54: #ifdef USE_SOLARIS_ALIASES
   55: DEFALIAS(     "646",                    /* Solaris */
   56:             ascii)
   57: #endif
   58: 
   59: /* General multi-byte encodings */
   60: 
   61: DEFENCODING(( "UTF-8",                  /* IANA, RFC 2279 */
   62:             /*"UTF8",                      JDK 1.1 */
   63:             /*"CP65001",                   Windows */
   64:             ),
   65:             utf8,
   66:             { utf8_mbtowc, NULL },        { utf8_wctomb, NULL })
   67: #ifdef USE_HPUX_ALIASES
   68: DEFALIAS(     "UTF8",                   /* HP-UX */
   69:             utf8)
   70: #endif
   71: 
   72: DEFENCODING(( "UCS-2",                  /* glibc */
   73:               "ISO-10646-UCS-2",        /* IANA */
   74:               "csUnicode",              /* IANA */
   75:             ),
   76:             ucs2,
   77:             { ucs2_mbtowc, NULL },        { ucs2_wctomb, NULL })
   78: 
   79: DEFENCODING(( "UCS-2BE",                /* glibc */
   80:               "UNICODEBIG",             /* glibc */
   81:               "UNICODE-1-1",            /* IANA */
   82:               "csUnicode11",            /* IANA */
   83:             /*"CP1201",                    Windows */
   84:             ),
   85:             ucs2be,
   86:             { ucs2be_mbtowc, NULL },      { ucs2be_wctomb, NULL })
   87: 
   88: DEFENCODING(( "UCS-2LE",                /* glibc */
   89:               "UNICODELITTLE",          /* glibc */
   90:             /*"CP1200",                    Windows */
   91:             ),
   92:             ucs2le,
   93:             { ucs2le_mbtowc, NULL },      { ucs2le_wctomb, NULL })
   94: 
   95: DEFENCODING(( "UCS-4",                  /* glibc */
   96:               "ISO-10646-UCS-4",        /* IANA */
   97:               "csUCS4",                 /* IANA */
   98:             ),
   99:             ucs4,
  100:             { ucs4_mbtowc, NULL },        { ucs4_wctomb, NULL })
  101: 
  102: DEFENCODING(( "UCS-4BE",                /* glibc */
  103:             /*"CP12001",                   Windows */
  104:             ),
  105:             ucs4be,
  106:             { ucs4be_mbtowc, NULL },      { ucs4be_wctomb, NULL })
  107: 
  108: DEFENCODING(( "UCS-4LE",                /* glibc */
  109:             /*"CP12000",                   Windows */
  110:             ),
  111:             ucs4le,
  112:             { ucs4le_mbtowc, NULL },      { ucs4le_wctomb, NULL })
  113: 
  114: DEFENCODING(( "UTF-16",                 /* IANA, RFC 2781 */
  115:             ),
  116:             utf16,
  117:             { utf16_mbtowc, NULL },       { utf16_wctomb, NULL })
  118: 
  119: DEFENCODING(( "UTF-16BE",               /* IANA, RFC 2781 */
  120:             ),
  121:             utf16be,
  122:             { utf16be_mbtowc, NULL },     { utf16be_wctomb, NULL })
  123: 
  124: DEFENCODING(( "UTF-16LE",               /* IANA, RFC 2781 */
  125:             ),
  126:             utf16le,
  127:             { utf16le_mbtowc, NULL },     { utf16le_wctomb, NULL })
  128: 
  129: DEFENCODING(( "UTF-32",                 /* IANA, Unicode 3.1 */
  130:             ),
  131:             utf32,
  132:             { utf32_mbtowc, NULL },       { utf32_wctomb, NULL })
  133: 
  134: DEFENCODING(( "UTF-32BE",               /* IANA, Unicode 3.1 */
  135:             ),
  136:             utf32be,
  137:             { utf32be_mbtowc, NULL },     { utf32be_wctomb, NULL })
  138: 
  139: DEFENCODING(( "UTF-32LE",               /* IANA, Unicode 3.1 */
  140:             ),
  141:             utf32le,
  142:             { utf32le_mbtowc, NULL },     { utf32le_wctomb, NULL })
  143: 
  144: DEFENCODING(( "UTF-7",                  /* IANA, RFC 2152 */
  145:               "UNICODE-1-1-UTF-7",      /* IANA, RFC 1642 */
  146:               "csUnicode11UTF7",        /* IANA */
  147:             /*"CP65000",                   Windows */
  148:             ),
  149:             utf7,
  150:             { utf7_mbtowc, NULL },        { utf7_wctomb, utf7_reset })
  151: 
  152: DEFENCODING(( "UCS-2-INTERNAL",         /* libiconv */
  153:             ),
  154:             ucs2internal,
  155:             { ucs2internal_mbtowc, NULL }, { ucs2internal_wctomb, NULL })
  156: 
  157: DEFENCODING(( "UCS-2-SWAPPED",          /* libiconv */
  158:             ),
  159:             ucs2swapped,
  160:             { ucs2swapped_mbtowc, NULL }, { ucs2swapped_wctomb, NULL })
  161: 
  162: DEFENCODING(( "UCS-4-INTERNAL",         /* libiconv */
  163:             ),
  164:             ucs4internal,
  165:             { ucs4internal_mbtowc, NULL },{ ucs4internal_wctomb, NULL })
  166: 
  167: DEFENCODING(( "UCS-4-SWAPPED",          /* libiconv */
  168:             ),
  169:             ucs4swapped,
  170:             { ucs4swapped_mbtowc, NULL }, { ucs4swapped_wctomb, NULL })
  171: 
  172: DEFENCODING(( "C99",
  173:             ),
  174:             c99,
  175:             { c99_mbtowc, NULL },         { c99_wctomb, NULL })
  176: 
  177: DEFENCODING(( "JAVA",
  178:             ),
  179:             java,
  180:             { java_mbtowc, NULL },        { java_wctomb, NULL })
  181: 
  182: /* Standard 8-bit encodings */
  183: 
  184: DEFENCODING(( "ISO-8859-1",             /* IANA */
  185:               "ISO_8859-1",             /* IANA */
  186:               "ISO_8859-1:1987",        /* IANA */
  187:               "ISO-IR-100",             /* IANA */
  188:               "CP819",                  /* IANA */
  189:               "IBM819",                 /* IANA */
  190:               "LATIN1",                 /* IANA */
  191:               "L1",                     /* 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 */
  196:             ),
  197:             iso8859_1,
  198:             { iso8859_1_mbtowc, NULL },   { iso8859_1_wctomb, NULL })
  199: #ifdef USE_HPUX_ALIASES
  200: DEFALIAS(     "ISO88591",               /* HP-UX */
  201:             iso8859_1)
  202: #endif
  203: 
  204: DEFENCODING(( "ISO-8859-2",             /* IANA */
  205:               "ISO_8859-2",             /* IANA */
  206:               "ISO_8859-2:1987",        /* IANA */
  207:               "ISO-IR-101",             /* IANA */
  208:               "LATIN2",                 /* IANA */
  209:               "L2",                     /* 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 */
  214:             ),
  215:             iso8859_2,
  216:             { iso8859_2_mbtowc, NULL },   { iso8859_2_wctomb, NULL })
  217: #ifdef USE_HPUX_ALIASES
  218: DEFALIAS(     "ISO88592",               /* HP-UX */
  219:             iso8859_2)
  220: #endif
  221: 
  222: DEFENCODING(( "ISO-8859-3",             /* IANA */
  223:               "ISO_8859-3",             /* IANA */
  224:               "ISO_8859-3:1988",        /* IANA */
  225:               "ISO-IR-109",             /* IANA */
  226:               "LATIN3",                 /* IANA */
  227:               "L3",                     /* IANA */
  228:               "csISOLatin3",            /* IANA */
  229:               "ISO8859-3",              /* X11R6.4, glibc, FreeBSD, Solaris */
  230:             /*"ISO8859_3",                 JDK 1.1 */
  231:             /*"CP28593",                   Windows */
  232:             ),
  233:             iso8859_3,
  234:             { iso8859_3_mbtowc, NULL },   { iso8859_3_wctomb, NULL })
  235: 
  236: DEFENCODING(( "ISO-8859-4",             /* IANA */
  237:               "ISO_8859-4",             /* IANA */
  238:               "ISO_8859-4:1988",        /* IANA */
  239:               "ISO-IR-110",             /* IANA */
  240:               "LATIN4",                 /* IANA */
  241:               "L4",                     /* IANA */
  242:               "csISOLatin4",            /* IANA */
  243:               "ISO8859-4",              /* X11R6.4, glibc, FreeBSD, OSF/1, Solaris */
  244:             /*"ISO8859_4",                 JDK 1.1 */
  245:             /*"CP28594",                   Windows */
  246:             ),
  247:             iso8859_4,
  248:             { iso8859_4_mbtowc, NULL },   { iso8859_4_wctomb, NULL })
  249: 
  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 */
  259:             ),
  260:             iso8859_5,
  261:             { iso8859_5_mbtowc, NULL },   { iso8859_5_wctomb, NULL })
  262: #ifdef USE_HPUX_ALIASES
  263: DEFALIAS(     "ISO88595",               /* HP-UX */
  264:             iso8859_5)
  265: #endif
  266: 
  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 */
  273:               "ARABIC",                 /* IANA */
  274:               "csISOLatinArabic",       /* IANA */
  275:               "ISO8859-6",              /* X11R6.4, glibc, FreeBSD, AIX, Solaris */
  276:             /*"ISO8859_6",                 JDK 1.1 */
  277:             /*"CP28596",                   Windows */
  278:             ),
  279:             iso8859_6,
  280:             { iso8859_6_mbtowc, NULL },   { iso8859_6_wctomb, NULL })
  281: #ifdef USE_HPUX_ALIASES
  282: DEFALIAS(     "ISO88596",               /* HP-UX */
  283:             iso8859_6)
  284: #endif
  285: 
  286: DEFENCODING(( "ISO-8859-7",             /* IANA, RFC 1947 */
  287:               "ISO_8859-7",             /* IANA */
  288:               "ISO_8859-7:1987",        /* IANA */
  289:               "ISO_8859-7:2003",
  290:               "ISO-IR-126",             /* IANA */
  291:               "ECMA-118",               /* IANA */
  292:               "ELOT_928",               /* IANA */
  293:               "GREEK8",                 /* IANA */
  294:               "GREEK",                  /* 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 */
  299:             ),
  300:             iso8859_7,
  301:             { iso8859_7_mbtowc, NULL },   { iso8859_7_wctomb, NULL })
  302: #ifdef USE_HPUX_ALIASES
  303: DEFALIAS(     "ISO88597",               /* HP-UX */
  304:             iso8859_7)
  305: #endif
  306: 
  307: DEFENCODING(( "ISO-8859-8",             /* IANA */
  308:               "ISO_8859-8",             /* IANA */
  309:               "ISO_8859-8:1988",        /* IANA */
  310:               "ISO-IR-138",             /* IANA */
  311:               "HEBREW",                 /* 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 */
  317:             ),
  318:             iso8859_8,
  319:             { iso8859_8_mbtowc, NULL },   { iso8859_8_wctomb, NULL })
  320: #ifdef USE_HPUX_ALIASES
  321: DEFALIAS(     "ISO88598",               /* HP-UX */
  322:             iso8859_8)
  323: #endif
  324: 
  325: DEFENCODING(( "ISO-8859-9",             /* IANA */
  326:               "ISO_8859-9",             /* IANA */
  327:               "ISO_8859-9:1989",        /* IANA */
  328:               "ISO-IR-148",             /* IANA */
  329:               "LATIN5",                 /* IANA */
  330:               "L5",                     /* 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 */
  335:             ),
  336:             iso8859_9,
  337:             { iso8859_9_mbtowc, NULL },   { iso8859_9_wctomb, NULL })
  338: #ifdef USE_HPUX_ALIASES
  339: DEFALIAS(     "ISO88599",               /* HP-UX */
  340:             iso8859_9)
  341: #endif
  342: 
  343: DEFENCODING(( "ISO-8859-10",            /* IANA */
  344:               "ISO_8859-10",
  345:               "ISO_8859-10:1992",       /* IANA */
  346:               "ISO-IR-157",             /* IANA */
  347:               "LATIN6",                 /* IANA */
  348:               "L6",                     /* IANA */
  349:               "csISOLatin6",            /* IANA */
  350:               "ISO8859-10",             /* X11R6.4, glibc, FreeBSD */
  351:             ),
  352:             iso8859_10,
  353:             { iso8859_10_mbtowc, NULL },  { iso8859_10_wctomb, NULL })
  354: 
  355: DEFENCODING(( "ISO-8859-11",            /* glibc */
  356:               "ISO_8859-11",
  357:               "ISO8859-11",             /* X11R6.7, glibc */
  358:             ),
  359:             iso8859_11,
  360:             { iso8859_11_mbtowc, NULL },  { iso8859_11_wctomb, NULL })
  361: 
  362: DEFENCODING(( "ISO-8859-13",            /* IANA, glibc */
  363:               "ISO_8859-13",
  364:               "ISO-IR-179",             /* glibc */
  365:               "LATIN7",                 /* glibc */
  366:               "L7",                     /* glibc */
  367:               "ISO8859-13",             /* glibc, FreeBSD */
  368:             ),
  369:             iso8859_13,
  370:             { iso8859_13_mbtowc, NULL },  { iso8859_13_wctomb, NULL })
  371: #ifdef USE_AIX_ALIASES
  372: DEFALIAS(     "IBM-921",                /* AIX */
  373:             iso8859_13)
  374: #endif
  375: 
  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 */
  384:             ),
  385:             iso8859_14,
  386:             { iso8859_14_mbtowc, NULL },  { iso8859_14_wctomb, NULL })
  387: 
  388: DEFENCODING(( "ISO-8859-15",            /* IANA, glibc */
  389:               "ISO_8859-15",            /* IANA */
  390:               "ISO_8859-15:1998",       /* glibc */
  391:               "ISO-IR-203",
  392:               "LATIN-9",                /* IANA */
  393:               "ISO8859-15",             /* glibc, FreeBSD, AIX, OSF/1, Solaris */
  394:             /*"CP28605",                   Windows */
  395:             ),
  396:             iso8859_15,
  397:             { iso8859_15_mbtowc, NULL },  { iso8859_15_wctomb, NULL })
  398: #ifdef USE_HPUX_ALIASES
  399: DEFALIAS(     "ISO885915",              /* HP-UX */
  400:             iso8859_15)
  401: #endif
  402: 
  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 */
  408:               "L10",                    /* IANA */
  409:               "ISO8859-16",             /* glibc, FreeBSD */
  410:             ),
  411:             iso8859_16,
  412:             { iso8859_16_mbtowc, NULL },  { iso8859_16_wctomb, NULL })
  413: 
  414: DEFENCODING(( "KOI8-R",                 /* IANA, RFC 1489, X11R6.4, JDK 1.1 */
  415:               "csKOI8R",                /* IANA */
  416:             /*"CP20866",                   Windows */
  417:             ),
  418:             koi8_r,
  419:             { koi8_r_mbtowc, NULL },      { koi8_r_wctomb, NULL })
  420: 
  421: DEFENCODING(( "KOI8-U",                 /* IANA, RFC 2319 */
  422:             ),
  423:             koi8_u,
  424:             { koi8_u_mbtowc, NULL },      { koi8_u_wctomb, NULL })
  425: 
  426: DEFENCODING(( "KOI8-RU",
  427:             ),
  428:             koi8_ru,
  429:             { koi8_ru_mbtowc, NULL },     { koi8_ru_wctomb, NULL })
  430: 
  431: /* Windows 8-bit encodings */
  432: 
  433: DEFENCODING(( "CP1250",                 /* JDK 1.1 */
  434:               "WINDOWS-1250",           /* IANA */
  435:               "MS-EE",
  436:             ),
  437:             cp1250,
  438:             { cp1250_mbtowc, NULL },      { cp1250_wctomb, NULL })
  439: 
  440: DEFENCODING(( "CP1251",                 /* JDK 1.1 */
  441:               "WINDOWS-1251",           /* IANA */
  442:               "MS-CYRL",
  443:             ),
  444:             cp1251,
  445:             { cp1251_mbtowc, NULL },      { cp1251_wctomb, NULL })
  446: #ifdef USE_SOLARIS_ALIASES
  447: DEFALIAS(     "ANSI-1251",              /* Solaris */
  448:             cp1251)
  449: #endif
  450: 
  451: DEFENCODING(( "CP1252",                 /* JDK 1.1 */
  452:               "WINDOWS-1252",           /* IANA */
  453:               "MS-ANSI",
  454:             ),
  455:             cp1252,
  456:             { cp1252_mbtowc, NULL },      { cp1252_wctomb, NULL })
  457: #ifdef USE_AIX_ALIASES
  458: DEFALIAS(     "IBM-1252",               /* AIX */
  459:             cp1252)
  460: #endif
  461: 
  462: DEFENCODING(( "CP1253",                 /* JDK 1.1 */
  463:               "WINDOWS-1253",           /* IANA */
  464:               "MS-GREEK",
  465:             ),
  466:             cp1253,
  467:             { cp1253_mbtowc, NULL },      { cp1253_wctomb, NULL })
  468: 
  469: DEFENCODING(( "CP1254",                 /* JDK 1.1 */
  470:               "WINDOWS-1254",           /* IANA */
  471:               "MS-TURK",
  472:             ),
  473:             cp1254,
  474:             { cp1254_mbtowc, NULL },      { cp1254_wctomb, NULL })
  475: 
  476: DEFENCODING(( "CP1255",                 /* JDK 1.1 */
  477:               "WINDOWS-1255",           /* IANA */
  478:               "MS-HEBR",
  479:             ),
  480:             cp1255,
  481:             { cp1255_mbtowc, cp1255_flushwc }, { cp1255_wctomb, NULL })
  482: 
  483: DEFENCODING(( "CP1256",                 /* JDK 1.1 */
  484:               "WINDOWS-1256",           /* IANA */
  485:               "MS-ARAB",
  486:             ),
  487:             cp1256,
  488:             { cp1256_mbtowc, NULL },      { cp1256_wctomb, NULL })
  489: 
  490: DEFENCODING(( "CP1257",                 /* JDK 1.1 */
  491:               "WINDOWS-1257",           /* IANA */
  492:               "WINBALTRIM",
  493:             ),
  494:             cp1257,
  495:             { cp1257_mbtowc, NULL },      { cp1257_wctomb, NULL })
  496: 
  497: DEFENCODING(( "CP1258",                 /* JDK 1.1 */
  498:               "WINDOWS-1258",           /* IANA */
  499:             ),
  500:             cp1258,
  501:             { cp1258_mbtowc, cp1258_flushwc }, { cp1258_wctomb, NULL })
  502: 
  503: /* DOS 8-bit encodings */
  504: 
  505: DEFENCODING(( "CP850",                  /* IANA, JDK 1.1 */
  506:               "IBM850",                 /* IANA */
  507:               "850",                    /* IANA */
  508:               "csPC850Multilingual",    /* IANA */
  509:             ),
  510:             cp850,
  511:             { cp850_mbtowc, NULL },       { cp850_wctomb, NULL })
  512: #ifdef USE_AIX_ALIASES
  513: DEFALIAS(     "IBM-850",                /* AIX */
  514:             cp850)
  515: #endif
  516: 
  517: DEFENCODING(( "CP862",                  /* IANA, JDK 1.1 */
  518:               "IBM862",                 /* IANA */
  519:               "862",                    /* IANA */
  520:               "csPC862LatinHebrew",     /* IANA */
  521:             ),
  522:             cp862,
  523:             { cp862_mbtowc, NULL },       { cp862_wctomb, NULL })
  524: 
  525: DEFENCODING(( "CP866",                  /* IANA, JDK 1.1 */
  526:               "IBM866",                 /* IANA */
  527:               "866",                    /* IANA */
  528:               "csIBM866",               /* IANA */
  529:             ),
  530:             cp866,
  531:             { cp866_mbtowc, NULL },       { cp866_wctomb, NULL })
  532: 
  533: DEFENCODING(( "CP1131",                 /* FreeBSD, MacOS X */
  534:             ),
  535:             cp1131,
  536:             { cp1131_mbtowc, NULL },      { cp1131_wctomb, NULL })
  537: #ifdef USE_AIX_ALIASES
  538: DEFALIAS(     "IBM-1131",               /* AIX */
  539:             cp1131)
  540: #endif
  541: 
  542: /* Macintosh 8-bit encodings */
  543: 
  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 */
  548:               "MAC",                    /* IANA */
  549:               "csMacintosh",            /* IANA */
  550:             /*"CP10000",                   Windows */
  551:             ),
  552:             mac_roman,
  553:             { mac_roman_mbtowc, NULL },   { mac_roman_wctomb, NULL })
  554: 
  555: DEFENCODING(( "MacCentralEurope",       /* JDK 1.1 */
  556:             /*"CP10029",                   Windows */
  557:             ),
  558:             mac_centraleurope,
  559:             { mac_centraleurope_mbtowc, NULL }, { mac_centraleurope_wctomb, NULL })
  560: 
  561: DEFENCODING(( "MacIceland",             /* JDK 1.1 */
  562:             /*"CP10079",                   Windows */
  563:             ),
  564:             mac_iceland,
  565:             { mac_iceland_mbtowc, NULL }, { mac_iceland_wctomb, NULL })
  566: 
  567: DEFENCODING(( "MacCroatian",            /* JDK 1.1 */
  568:             /*"CP10082",                   Windows */
  569:             ),
  570:             mac_croatian,
  571:             { mac_croatian_mbtowc, NULL }, { mac_croatian_wctomb, NULL })
  572: 
  573: DEFENCODING(( "MacRomania",             /* JDK 1.1 */
  574:             /*"CP10010",                   Windows */
  575:             ),
  576:             mac_romania,
  577:             { mac_romania_mbtowc, NULL }, { mac_romania_wctomb, NULL })
  578: 
  579: DEFENCODING(( "MacCyrillic",            /* JDK 1.1 */
  580:             /*"CP10007",                   Windows */
  581:             ),
  582:             mac_cyrillic,
  583:             { mac_cyrillic_mbtowc, NULL }, { mac_cyrillic_wctomb, NULL })
  584: 
  585: DEFENCODING(( "MacUkraine",             /* JDK 1.1 */
  586:             /*"CP10017",                   Windows */
  587:             ),
  588:             mac_ukraine,
  589:             { mac_ukraine_mbtowc, NULL }, { mac_ukraine_wctomb, NULL })
  590: 
  591: DEFENCODING(( "MacGreek",               /* JDK 1.1 */
  592:             /*"CP10006",                   Windows */
  593:             ),
  594:             mac_greek,
  595:             { mac_greek_mbtowc, NULL },   { mac_greek_wctomb, NULL })
  596: 
  597: DEFENCODING(( "MacTurkish",             /* JDK 1.1 */
  598:             /*"CP10081",                   Windows */
  599:             ),
  600:             mac_turkish,
  601:             { mac_turkish_mbtowc, NULL }, { mac_turkish_wctomb, NULL })
  602: 
  603: DEFENCODING(( "MacHebrew",              /* JDK 1.1 */
  604:             /*"CP10005",                   Windows */
  605:             ),
  606:             mac_hebrew,
  607:             { mac_hebrew_mbtowc, NULL },  { mac_hebrew_wctomb, NULL })
  608: 
  609: DEFENCODING(( "MacArabic",              /* JDK 1.1 */
  610:             /*"CP10004",                   Windows */
  611:             ),
  612:             mac_arabic,
  613:             { mac_arabic_mbtowc, NULL },  { mac_arabic_wctomb, NULL })
  614: 
  615: DEFENCODING(( "MacThai",                /* JDK 1.1 */
  616:             /*"CP10021",                   Windows */
  617:             ),
  618:             mac_thai,
  619:             { mac_thai_mbtowc, NULL },    { mac_thai_wctomb, NULL })
  620: 
  621: /* Other platform specific 8-bit encodings */
  622: 
  623: DEFENCODING(( "HP-ROMAN8",              /* IANA, X11R6.4 */
  624:               "ROMAN8",                 /* IANA */
  625:               "R8",                     /* IANA */
  626:               "csHPRoman8",             /* IANA */
  627:             ),
  628:             hp_roman8,
  629:             { hp_roman8_mbtowc, NULL },   { hp_roman8_wctomb, NULL })
  630: 
  631: DEFENCODING(( "NEXTSTEP",
  632:             ),
  633:             nextstep,
  634:             { nextstep_mbtowc, NULL },    { nextstep_wctomb, NULL })
  635: 
  636: /* Regional 8-bit encodings used for a single language */
  637: 
  638: DEFENCODING(( "ARMSCII-8",
  639:             ),
  640:             armscii_8,
  641:             { armscii_8_mbtowc, NULL },   { armscii_8_wctomb, NULL })
  642: 
  643: DEFENCODING(( "GEORGIAN-ACADEMY",
  644:             ),
  645:             georgian_academy,
  646:             { georgian_academy_mbtowc, NULL }, { georgian_academy_wctomb, NULL })
  647: 
  648: DEFENCODING(( "GEORGIAN-PS",
  649:             ),
  650:             georgian_ps,
  651:             { georgian_ps_mbtowc, NULL }, { georgian_ps_wctomb, NULL })
  652: 
  653: DEFENCODING(( "KOI8-T",
  654:             ),
  655:             koi8_t,
  656:             { koi8_t_mbtowc, NULL },      { koi8_t_wctomb, NULL })
  657: 
  658: DEFENCODING(( "PT154",                  /* IANA, glibc */
  659:               "PTCP154",                /* IANA */
  660:               "CP154",                  /* IANA */
  661:               "CYRILLIC-ASIAN",         /* IANA */
  662:               "csPTCP154",              /* IANA */
  663:             ),
  664:             pt154,
  665:             { pt154_mbtowc, NULL },       { pt154_wctomb, NULL })
  666: 
  667: DEFENCODING(( "RK1048",                 /* IANA, glibc */
  668:               "STRK1048-2002",          /* IANA */
  669:               "KZ-1048",                /* IANA */
  670:               "csKZ1048",               /* IANA */
  671:             ),
  672:             rk1048,
  673:             { rk1048_mbtowc, NULL },      { rk1048_wctomb, NULL })
  674: 
  675: DEFENCODING(( "MULELAO-1",
  676:             ),
  677:             mulelao,
  678:             { mulelao_mbtowc, NULL },     { mulelao_wctomb, NULL })
  679: 
  680: DEFENCODING(( "CP1133",
  681:               "IBM-CP1133",
  682:             ),
  683:             cp1133,
  684:             { cp1133_mbtowc, NULL },      { cp1133_wctomb, NULL })
  685: 
  686: DEFENCODING(( "TIS-620",                /* IANA */
  687:               "TIS620",                 /* glibc, HP-UX */
  688:               "TIS620-0",               /* glibc */
  689:               "TIS620.2529-1",          /* glibc */
  690:               "TIS620.2533-0",          /* glibc */
  691:               "TIS620.2533-1",
  692:               "ISO-IR-166",             /* glibc */
  693:             ),
  694:             tis620,
  695:             { tis620_mbtowc, NULL },      { tis620_wctomb, NULL })
  696: #ifdef USE_OSF1_ALIASES
  697: DEFALIAS(     "TACTIS",                 /* OSF/1 */
  698:             tis620)
  699: #endif
  700: #ifdef USE_SOLARIS_ALIASES
  701: DEFALIAS(     "TIS620.2533",            /* Solaris */
  702:             tis620)
  703: #endif
  704: 
  705: DEFENCODING(( "CP874",                  /* JDK 1.1 */
  706:               "WINDOWS-874",
  707:             ),
  708:             cp874,
  709:             { cp874_mbtowc, NULL },       { cp874_wctomb, NULL })
  710: 
  711: DEFENCODING(( "VISCII",                 /* IANA, RFC 1456 */
  712:               "VISCII1.1-1",
  713:               "csVISCII",               /* IANA */
  714:             ),
  715:             viscii,
  716:             { viscii_mbtowc, NULL },      { viscii_wctomb, NULL })
  717: 
  718: DEFENCODING(( "TCVN",
  719:               "TCVN-5712",
  720:               "TCVN5712-1",
  721:               "TCVN5712-1:1993",
  722:             ),
  723:             tcvn,
  724:             { tcvn_mbtowc, tcvn_flushwc }, { tcvn_wctomb, NULL })
  725: 
  726: /* CJK character sets (not documented) */
  727: 
  728: DEFENCODING(( "JIS_C6220-1969-RO",      /* IANA */
  729:               "ISO646-JP",              /* IANA */
  730:               "ISO-IR-14",              /* IANA */
  731:               "JP",                     /* IANA */
  732:               "csISO14JISC6220ro",      /* IANA */
  733:             ),
  734:             iso646_jp,
  735:             { iso646_jp_mbtowc, NULL },   { iso646_jp_wctomb, NULL })
  736: 
  737: DEFENCODING(( "JIS_X0201",              /* IANA */
  738:               "JISX0201-1976",
  739:               "X0201",                  /* IANA */
  740:               "csHalfWidthKatakana",    /* IANA */
  741:             /*"JISX0201.1976-0",           X11R6.4 */
  742:             /*"JIS0201",                   JDK 1.1 */
  743:             ),
  744:             jisx0201,
  745:             { jisx0201_mbtowc, NULL },    { jisx0201_wctomb, NULL })
  746: 
  747: DEFENCODING(( "JIS_X0208",
  748:               "JIS_X0208-1983",         /* IANA */
  749:               "JIS_X0208-1990",
  750:               "JIS0208",
  751:               "X0208",                  /* 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 */
  758:             ),
  759:             jisx0208,
  760:             { jisx0208_mbtowc, NULL },    { jisx0208_wctomb, NULL })
  761: 
  762: DEFENCODING(( "JIS_X0212",
  763:               "JIS_X0212.1990-0",
  764:               "JIS_X0212-1990",         /* IANA */
  765:               "X0212",                  /* IANA */
  766:               "ISO-IR-159",             /* IANA */
  767:               "csISO159JISX02121990",   /* IANA */
  768:             /*"JISX0212.1990-0",           X11R6.4 */
  769:             /*"JIS0212",                   JDK 1.1 */
  770:             ),
  771:             jisx0212,
  772:             { jisx0212_mbtowc, NULL },    { jisx0212_wctomb, NULL })
  773: 
  774: DEFENCODING(( "GB_1988-80",             /* IANA */
  775:               "ISO646-CN",              /* IANA */
  776:               "ISO-IR-57",              /* IANA */
  777:               "CN",                     /* IANA */
  778:               "csISO57GB1988",          /* IANA */
  779:             ),
  780:             iso646_cn,
  781:             { iso646_cn_mbtowc, NULL },   { iso646_cn_wctomb, NULL })
  782: 
  783: DEFENCODING(( "GB_2312-80",             /* IANA */
  784:               "ISO-IR-58",              /* IANA */
  785:               "csISO58GB231280",        /* IANA */
  786:               "CHINESE",                /* IANA */
  787:             /*"GB2312.1980-0",             X11R6.4 */
  788:             ),
  789:             gb2312,
  790:             { gb2312_mbtowc, NULL },      { gb2312_wctomb, NULL })
  791: 
  792: DEFENCODING(( "ISO-IR-165",
  793:               "CN-GB-ISOIR165",         /* RFC 1922 */
  794:             ),
  795:             isoir165,
  796:             { isoir165_mbtowc, NULL },    { isoir165_wctomb, NULL })
  797: 
  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 */
  803:               "KOREAN",                 /* IANA */
  804:             /*"KSC5601.1987-0",            X11R6.4 */
  805:             /*"KSX1001:1992",              Ken Lunde */
  806:             ),
  807:             ksc5601,
  808:             { ksc5601_mbtowc, NULL },     { ksc5601_wctomb, NULL })
  809: 
  810: /* CJK encodings */
  811: 
  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 */
  818:             ),
  819:             euc_jp,
  820:             { euc_jp_mbtowc, NULL },      { euc_jp_wctomb, NULL })
  821: #ifdef USE_AIX_ALIASES
  822: DEFALIAS(     "IBM-EUCJP",              /* AIX */
  823:             euc_jp)
  824: #endif
  825: #ifdef USE_OSF1_ALIASES
  826: DEFALIAS(     "SDECKANJI",              /* OSF/1 */
  827:             euc_jp)
  828: #endif
  829: 
  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 */
  835:             ),
  836:             sjis,
  837:             { sjis_mbtowc, NULL },        { sjis_wctomb, NULL })
  838: #ifdef USE_SOLARIS_ALIASES
  839: DEFALIAS(     "PCK",                    /* Solaris */
  840:             sjis)
  841: #endif
  842: 
  843: DEFENCODING(( "CP932",                  /* glibc */
  844:             ),
  845:             cp932,
  846:             { cp932_mbtowc, NULL },       { cp932_wctomb, NULL })
  847: #ifdef USE_AIX_ALIASES
  848: DEFALIAS(     "IBM-932",                /* AIX */
  849:             cp932)
  850: #endif
  851: 
  852: DEFENCODING(( "ISO-2022-JP",            /* IANA, RFC 1468 */
  853:               "csISO2022JP",            /* IANA */
  854:             /*"ISO2022JP",                 JDK 1.1 */
  855:             ),
  856:             iso2022_jp,
  857:             { iso2022_jp_mbtowc, NULL },  { iso2022_jp_wctomb, iso2022_jp_reset })
  858: 
  859: DEFENCODING(( "ISO-2022-JP-1",          /* RFC 2237 */
  860:             ),
  861:             iso2022_jp1,
  862:             { iso2022_jp1_mbtowc, NULL }, { iso2022_jp1_wctomb, iso2022_jp1_reset })
  863: 
  864: DEFENCODING(( "ISO-2022-JP-2",          /* IANA, RFC 1554 */
  865:               "csISO2022JP2",           /* IANA */
  866:             ),
  867:             iso2022_jp2,
  868:             { iso2022_jp2_mbtowc, NULL }, { iso2022_jp2_wctomb, iso2022_jp2_reset })
  869: 
  870: DEFENCODING(( "EUC-CN",                 /* glibc */
  871:               "EUCCN",                  /* glibc, IRIX */
  872:               "GB2312",                 /* IANA */
  873:               "CN-GB",                  /* RFC 1922 */
  874:               "csGB2312",               /* IANA */
  875:             /*"EUC_CN",                    JDK 1.1 */
  876:             /*"CP51936",                   Windows */
  877:             ),
  878:             euc_cn,
  879:             { euc_cn_mbtowc, NULL },      { euc_cn_wctomb, NULL })
  880: #ifdef USE_AIX_ALIASES
  881: DEFALIAS(     "IBM-EUCCN",              /* AIX */
  882:             euc_cn)
  883: #endif
  884: #ifdef USE_HPUX_ALIASES
  885: DEFALIAS(     "HP15CN",                 /* HP-UX */
  886:             euc_cn)
  887: #endif
  888: #ifdef USE_OSF1_ALIASES
  889: DEFALIAS(     "DECHANZI",               /* OSF/1 */
  890:             euc_cn)
  891: #endif
  892: 
  893: DEFENCODING(( "GBK",                    /* IANA, JDK 1.1 */
  894:             ),
  895:             ces_gbk,
  896:             { ces_gbk_mbtowc, NULL },     { ces_gbk_wctomb, NULL })
  897: 
  898: DEFENCODING(( "CP936",                  /* IANA */
  899:               "MS936",                  /* IANA */
  900:               "WINDOWS-936",            /* IANA */
  901:             ),
  902:             cp936,
  903:             { cp936_mbtowc, NULL },       { cp936_wctomb, NULL })
  904: 
  905: DEFENCODING(( "GB18030",                /* IANA, glibc */
  906:             /*"CP54936",                   Windows */
  907:             ),
  908:             gb18030,
  909:             { gb18030_mbtowc, NULL },     { gb18030_wctomb, NULL })
  910: 
  911: DEFENCODING(( "ISO-2022-CN",            /* IANA, RFC 1922 */
  912:               "csISO2022CN",
  913:             /*"ISO2022CN",                 JDK 1.1 */
  914:             ),
  915:             iso2022_cn,
  916:             { iso2022_cn_mbtowc, NULL },  { iso2022_cn_wctomb, iso2022_cn_reset })
  917: 
  918: DEFENCODING(( "ISO-2022-CN-EXT",        /* IANA, RFC 1922 */
  919:             ),
  920:             iso2022_cn_ext,
  921:             { iso2022_cn_ext_mbtowc, NULL }, { iso2022_cn_ext_wctomb, iso2022_cn_ext_reset })
  922: 
  923: DEFENCODING(( "HZ",                     /* RFC 1843 */
  924:               "HZ-GB-2312",             /* IANA, RFC 1842 */
  925:             ),
  926:             hz,
  927:             { hz_mbtowc, NULL },          { hz_wctomb, hz_reset })
  928: 
  929: DEFENCODING(( "EUC-TW",                 /* glibc */
  930:               "EUCTW",                  /* glibc, HP-UX, IRIX, OSF/1 */
  931:               "csEUCTW",
  932:             /*"EUC_TW",                    JDK 1.1 */
  933:             /*"CP51950",                   Windows */
  934:             ),
  935:             euc_tw,
  936:             { euc_tw_mbtowc, NULL },      { euc_tw_wctomb, NULL })
  937: #ifdef USE_AIX_ALIASES
  938: DEFALIAS(     "IBM-EUCTW",              /* AIX */
  939:             euc_tw)
  940: #endif
  941: #ifdef USE_SOLARIS_ALIASES
  942: DEFALIAS(     "CNS11643",               /* Solaris */
  943:             euc_tw)
  944: #endif
  945: 
  946: DEFENCODING(( "BIG5",                   /* IANA, JDK 1.1 */
  947:               "BIG-5",                  /* glibc */
  948:               "BIG-FIVE",               /* glibc */
  949:               "BIGFIVE",                /* glibc */
  950:               "CN-BIG5",                /* RFC 1922 */
  951:               "csBig5",                 /* IANA */
  952:             ),
  953:             ces_big5,
  954:             { ces_big5_mbtowc, NULL },    { ces_big5_wctomb, NULL })
  955: 
  956: DEFENCODING(( "CP950",                  /* JDK 1.1 */
  957:             ),
  958:             cp950,
  959:             { cp950_mbtowc, NULL },       { cp950_wctomb, NULL })
  960: 
  961: DEFENCODING(( "BIG5-HKSCS:1999",
  962:             ),
  963:             big5hkscs1999,
  964:             { big5hkscs1999_mbtowc, big5hkscs1999_flushwc }, { big5hkscs1999_wctomb, big5hkscs1999_reset })
  965: 
  966: DEFENCODING(( "BIG5-HKSCS:2001",
  967:             ),
  968:             big5hkscs2001,
  969:             { big5hkscs2001_mbtowc, big5hkscs2001_flushwc }, { big5hkscs2001_wctomb, big5hkscs2001_reset })
  970: 
  971: DEFENCODING(( "BIG5-HKSCS",             /* IANA */
  972:               "BIG5HKSCS",              /* glibc */
  973:               "BIG5-HKSCS:2004",
  974:             ),
  975:             big5hkscs2004,
  976:             { big5hkscs2004_mbtowc, big5hkscs2004_flushwc }, { big5hkscs2004_wctomb, big5hkscs2004_reset })
  977: 
  978: DEFENCODING(( "EUC-KR",                 /* IANA, RFC 1557 */
  979:               "EUCKR",                  /* glibc, HP-UX, IRIX, OSF/1 */
  980:               "csEUCKR",                /* IANA */
  981:             /*"EUC_KR",                    JDK 1.1 */
  982:             /*"CP51949",                   Windows */
  983:             ),
  984:             euc_kr,
  985:             { euc_kr_mbtowc, NULL },      { euc_kr_wctomb, NULL })
  986: #ifdef USE_AIX_ALIASES
  987: DEFALIAS(     "IBM-EUCKR",              /* AIX */
  988:             euc_kr)
  989: #endif
  990: #ifdef USE_OSF1_ALIASES
  991: DEFALIAS(     "DECKOREAN",              /* OSF/1 */
  992:             euc_kr)
  993: #endif
  994: #ifdef USE_SOLARIS_ALIASES
  995: DEFALIAS(     "5601",                   /* Solaris */
  996:             euc_kr)
  997: #endif
  998: 
  999: DEFENCODING(( "CP949",                  /* JDK 1.1 */
 1000:               "UHC",                    /* glibc */
 1001:             ),
 1002:             cp949,
 1003:             { cp949_mbtowc, NULL },       { cp949_wctomb, NULL })
 1004: #ifdef USE_OSF1_ALIASES
 1005: DEFALIAS(     "KSC5601",                /* OSF/1 */
 1006:             cp949)
 1007: #endif
 1008: 
 1009: DEFENCODING(( "JOHAB",                  /* glibc */
 1010:               "CP1361",                 /* glibc */
 1011:             ),
 1012:             johab,
 1013:             { johab_mbtowc, NULL },       { johab_wctomb, NULL })
 1014: #ifdef USE_SOLARIS_ALIASES
 1015: DEFALIAS(     "KO_KR.JOHAP92",          /* Solaris */
 1016:             johab)
 1017: #endif
 1018: 
 1019: DEFENCODING(( "ISO-2022-KR",            /* IANA, RFC 1557 */
 1020:               "csISO2022KR",            /* IANA */
 1021:             /*"ISO2022KR",                 JDK 1.1 */
 1022:             ),
 1023:             iso2022_kr,
 1024:             { iso2022_kr_mbtowc, NULL },  { iso2022_kr_wctomb, iso2022_kr_reset })
 1025: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>