Home | History | Annotate | Download | only in lib
      1 #! /bin/sh
      2 # Output a system dependent table of character encoding aliases.
      3 #
      4 #   Copyright (C) 2000-2004, 2006-2012 Free Software Foundation, Inc.
      5 #
      6 #   This program is free software; you can redistribute it and/or modify
      7 #   it under the terms of the GNU General Public License as published by
      8 #   the Free Software Foundation; either version 3, or (at your option)
      9 #   any later version.
     10 #
     11 #   This program is distributed in the hope that it will be useful,
     12 #   but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14 #   GNU General Public License for more details.
     15 #
     16 #   You should have received a copy of the GNU General Public License along
     17 #   with this program; if not, see <http://www.gnu.org/licenses/>.
     18 #
     19 # The table consists of lines of the form
     20 #    ALIAS  CANONICAL
     21 #
     22 # ALIAS is the (system dependent) result of "nl_langinfo (CODESET)".
     23 # ALIAS is compared in a case sensitive way.
     24 #
     25 # CANONICAL is the GNU canonical name for this character encoding.
     26 # It must be an encoding supported by libiconv. Support by GNU libc is
     27 # also desirable. CANONICAL is case insensitive. Usually an upper case
     28 # MIME charset name is preferred.
     29 # The current list of GNU canonical charset names is as follows.
     30 #
     31 #       name              MIME?             used by which systems
     32 #                                    (darwin = Mac OS X, woe32 = native Windows)
     33 #
     34 #   ASCII, ANSI_X3.4-1968       glibc solaris freebsd netbsd darwin cygwin
     35 #   ISO-8859-1              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin
     36 #   ISO-8859-2              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin
     37 #   ISO-8859-3              Y   glibc solaris cygwin
     38 #   ISO-8859-4              Y   osf solaris freebsd netbsd openbsd darwin
     39 #   ISO-8859-5              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin
     40 #   ISO-8859-6              Y   glibc aix hpux solaris cygwin
     41 #   ISO-8859-7              Y   glibc aix hpux irix osf solaris netbsd openbsd darwin cygwin
     42 #   ISO-8859-8              Y   glibc aix hpux osf solaris cygwin
     43 #   ISO-8859-9              Y   glibc aix hpux irix osf solaris darwin cygwin
     44 #   ISO-8859-13                 glibc netbsd openbsd darwin cygwin
     45 #   ISO-8859-14                 glibc cygwin
     46 #   ISO-8859-15                 glibc aix osf solaris freebsd netbsd openbsd darwin cygwin
     47 #   KOI8-R                  Y   glibc solaris freebsd netbsd openbsd darwin
     48 #   KOI8-U                  Y   glibc freebsd netbsd openbsd darwin cygwin
     49 #   KOI8-T                      glibc
     50 #   CP437                       dos
     51 #   CP775                       dos
     52 #   CP850                       aix osf dos
     53 #   CP852                       dos
     54 #   CP855                       dos
     55 #   CP856                       aix
     56 #   CP857                       dos
     57 #   CP861                       dos
     58 #   CP862                       dos
     59 #   CP864                       dos
     60 #   CP865                       dos
     61 #   CP866                       freebsd netbsd openbsd darwin dos
     62 #   CP869                       dos
     63 #   CP874                       woe32 dos
     64 #   CP922                       aix
     65 #   CP932                       aix cygwin woe32 dos
     66 #   CP943                       aix
     67 #   CP949                       osf darwin woe32 dos
     68 #   CP950                       woe32 dos
     69 #   CP1046                      aix
     70 #   CP1124                      aix
     71 #   CP1125                      dos
     72 #   CP1129                      aix
     73 #   CP1131                      darwin
     74 #   CP1250                      woe32
     75 #   CP1251                      glibc solaris netbsd openbsd darwin cygwin woe32
     76 #   CP1252                      aix woe32
     77 #   CP1253                      woe32
     78 #   CP1254                      woe32
     79 #   CP1255                      glibc woe32
     80 #   CP1256                      woe32
     81 #   CP1257                      woe32
     82 #   GB2312                  Y   glibc aix hpux irix solaris freebsd netbsd darwin
     83 #   EUC-JP                  Y   glibc aix hpux irix osf solaris freebsd netbsd darwin
     84 #   EUC-KR                  Y   glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin
     85 #   EUC-TW                      glibc aix hpux irix osf solaris netbsd
     86 #   BIG5                    Y   glibc aix hpux osf solaris freebsd netbsd darwin cygwin
     87 #   BIG5-HKSCS                  glibc solaris darwin
     88 #   GBK                         glibc aix osf solaris darwin cygwin woe32 dos
     89 #   GB18030                     glibc solaris netbsd darwin
     90 #   SHIFT_JIS               Y   hpux osf solaris freebsd netbsd darwin
     91 #   JOHAB                       glibc solaris woe32
     92 #   TIS-620                     glibc aix hpux osf solaris cygwin
     93 #   VISCII                  Y   glibc
     94 #   TCVN5712-1                  glibc
     95 #   ARMSCII-8                   glibc darwin
     96 #   GEORGIAN-PS                 glibc cygwin
     97 #   PT154                       glibc
     98 #   HP-ROMAN8                   hpux
     99 #   HP-ARABIC8                  hpux
    100 #   HP-GREEK8                   hpux
    101 #   HP-HEBREW8                  hpux
    102 #   HP-TURKISH8                 hpux
    103 #   HP-KANA8                    hpux
    104 #   DEC-KANJI                   osf
    105 #   DEC-HANYU                   osf
    106 #   UTF-8                   Y   glibc aix hpux osf solaris netbsd darwin cygwin
    107 #
    108 # Note: Names which are not marked as being a MIME name should not be used in
    109 # Internet protocols for information interchange (mail, news, etc.).
    110 #
    111 # Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications
    112 # must understand both names and treat them as equivalent.
    113 #
    114 # The first argument passed to this file is the canonical host specification,
    115 #    CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
    116 # or
    117 #    CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
    118 
    119 host="$1"
    120 os=`echo "$host" | sed -e 's/^[^-]*-[^-]*-\(.*\)$/\1/'`
    121 echo "# This file contains a table of character encoding aliases,"
    122 echo "# suitable for operating system '${os}'."
    123 echo "# It was automatically generated from config.charset."
    124 # List of references, updated during installation:
    125 echo "# Packages using this file: "
    126 case "$os" in
    127   linux-gnulibc1*)
    128     # Linux libc5 doesn't have nl_langinfo(CODESET); therefore
    129     # localcharset.c falls back to using the full locale name
    130     # from the environment variables.
    131     echo "C ASCII"
    132     echo "POSIX ASCII"
    133     for l in af af_ZA ca ca_ES da da_DK de de_AT de_BE de_CH de_DE de_LU \
    134              en en_AU en_BW en_CA en_DK en_GB en_IE en_NZ en_US en_ZA \
    135              en_ZW es es_AR es_BO es_CL es_CO es_DO es_EC es_ES es_GT \
    136              es_HN es_MX es_PA es_PE es_PY es_SV es_US es_UY es_VE et \
    137              et_EE eu eu_ES fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR \
    138              fr_LU ga ga_IE gl gl_ES id id_ID in in_ID is is_IS it it_CH \
    139              it_IT kl kl_GL nl nl_BE nl_NL no no_NO pt pt_BR pt_PT sv \
    140              sv_FI sv_SE; do
    141       echo "$l ISO-8859-1"
    142       echo "$l.iso-8859-1 ISO-8859-1"
    143       echo "$l.iso-8859-15 ISO-8859-15"
    144       echo "$l.iso-8859-15@euro ISO-8859-15"
    145       echo "$l@euro ISO-8859-15"
    146       echo "$l.cp-437 CP437"
    147       echo "$l.cp-850 CP850"
    148       echo "$l.cp-1252 CP1252"
    149       echo "$l.cp-1252@euro CP1252"
    150       #echo "$l.atari-st ATARI-ST" # not a commonly used encoding
    151       echo "$l.utf-8 UTF-8"
    152       echo "$l.utf-8@euro UTF-8"
    153     done
    154     for l in cs cs_CZ hr hr_HR hu hu_HU pl pl_PL ro ro_RO sk sk_SK sl \
    155              sl_SI sr sr_CS sr_YU; do
    156       echo "$l ISO-8859-2"
    157       echo "$l.iso-8859-2 ISO-8859-2"
    158       echo "$l.cp-852 CP852"
    159       echo "$l.cp-1250 CP1250"
    160       echo "$l.utf-8 UTF-8"
    161     done
    162     for l in mk mk_MK ru ru_RU; do
    163       echo "$l ISO-8859-5"
    164       echo "$l.iso-8859-5 ISO-8859-5"
    165       echo "$l.koi8-r KOI8-R"
    166       echo "$l.cp-866 CP866"
    167       echo "$l.cp-1251 CP1251"
    168       echo "$l.utf-8 UTF-8"
    169     done
    170     for l in ar ar_SA; do
    171       echo "$l ISO-8859-6"
    172       echo "$l.iso-8859-6 ISO-8859-6"
    173       echo "$l.cp-864 CP864"
    174       #echo "$l.cp-868 CP868" # not a commonly used encoding
    175       echo "$l.cp-1256 CP1256"
    176       echo "$l.utf-8 UTF-8"
    177     done
    178     for l in el el_GR gr gr_GR; do
    179       echo "$l ISO-8859-7"
    180       echo "$l.iso-8859-7 ISO-8859-7"
    181       echo "$l.cp-869 CP869"
    182       echo "$l.cp-1253 CP1253"
    183       echo "$l.cp-1253@euro CP1253"
    184       echo "$l.utf-8 UTF-8"
    185       echo "$l.utf-8@euro UTF-8"
    186     done
    187     for l in he he_IL iw iw_IL; do
    188       echo "$l ISO-8859-8"
    189       echo "$l.iso-8859-8 ISO-8859-8"
    190       echo "$l.cp-862 CP862"
    191       echo "$l.cp-1255 CP1255"
    192       echo "$l.utf-8 UTF-8"
    193     done
    194     for l in tr tr_TR; do
    195       echo "$l ISO-8859-9"
    196       echo "$l.iso-8859-9 ISO-8859-9"
    197       echo "$l.cp-857 CP857"
    198       echo "$l.cp-1254 CP1254"
    199       echo "$l.utf-8 UTF-8"
    200     done
    201     for l in lt lt_LT lv lv_LV; do
    202       #echo "$l BALTIC" # not a commonly used encoding, wrong encoding name
    203       echo "$l ISO-8859-13"
    204     done
    205     for l in ru_UA uk uk_UA; do
    206       echo "$l KOI8-U"
    207     done
    208     for l in zh zh_CN; do
    209       #echo "$l GB_2312-80" # not a commonly used encoding, wrong encoding name
    210       echo "$l GB2312"
    211     done
    212     for l in ja ja_JP ja_JP.EUC; do
    213       echo "$l EUC-JP"
    214     done
    215     for l in ko ko_KR; do
    216       echo "$l EUC-KR"
    217     done
    218     for l in th th_TH; do
    219       echo "$l TIS-620"
    220     done
    221     for l in fa fa_IR; do
    222       #echo "$l ISIRI-3342" # a broken encoding
    223       echo "$l.utf-8 UTF-8"
    224     done
    225     ;;
    226   linux* | *-gnu*)
    227     # With glibc-2.1 or newer, we don't need any canonicalization,
    228     # because glibc has iconv and both glibc and libiconv support all
    229     # GNU canonical names directly. Therefore, the Makefile does not
    230     # need to install the alias file at all.
    231     # The following applies only to glibc-2.0.x and older libcs.
    232     echo "ISO_646.IRV:1983 ASCII"
    233     ;;
    234   aix*)
    235     echo "ISO8859-1 ISO-8859-1"
    236     echo "ISO8859-2 ISO-8859-2"
    237     echo "ISO8859-5 ISO-8859-5"
    238     echo "ISO8859-6 ISO-8859-6"
    239     echo "ISO8859-7 ISO-8859-7"
    240     echo "ISO8859-8 ISO-8859-8"
    241     echo "ISO8859-9 ISO-8859-9"
    242     echo "ISO8859-15 ISO-8859-15"
    243     echo "IBM-850 CP850"
    244     echo "IBM-856 CP856"
    245     echo "IBM-921 ISO-8859-13"
    246     echo "IBM-922 CP922"
    247     echo "IBM-932 CP932"
    248     echo "IBM-943 CP943"
    249     echo "IBM-1046 CP1046"
    250     echo "IBM-1124 CP1124"
    251     echo "IBM-1129 CP1129"
    252     echo "IBM-1252 CP1252"
    253     echo "IBM-eucCN GB2312"
    254     echo "IBM-eucJP EUC-JP"
    255     echo "IBM-eucKR EUC-KR"
    256     echo "IBM-eucTW EUC-TW"
    257     echo "big5 BIG5"
    258     echo "GBK GBK"
    259     echo "TIS-620 TIS-620"
    260     echo "UTF-8 UTF-8"
    261     ;;
    262   hpux*)
    263     echo "iso88591 ISO-8859-1"
    264     echo "iso88592 ISO-8859-2"
    265     echo "iso88595 ISO-8859-5"
    266     echo "iso88596 ISO-8859-6"
    267     echo "iso88597 ISO-8859-7"
    268     echo "iso88598 ISO-8859-8"
    269     echo "iso88599 ISO-8859-9"
    270     echo "iso885915 ISO-8859-15"
    271     echo "roman8 HP-ROMAN8"
    272     echo "arabic8 HP-ARABIC8"
    273     echo "greek8 HP-GREEK8"
    274     echo "hebrew8 HP-HEBREW8"
    275     echo "turkish8 HP-TURKISH8"
    276     echo "kana8 HP-KANA8"
    277     echo "tis620 TIS-620"
    278     echo "big5 BIG5"
    279     echo "eucJP EUC-JP"
    280     echo "eucKR EUC-KR"
    281     echo "eucTW EUC-TW"
    282     echo "hp15CN GB2312"
    283     #echo "ccdc ?" # what is this?
    284     echo "SJIS SHIFT_JIS"
    285     echo "utf8 UTF-8"
    286     ;;
    287   irix*)
    288     echo "ISO8859-1 ISO-8859-1"
    289     echo "ISO8859-2 ISO-8859-2"
    290     echo "ISO8859-5 ISO-8859-5"
    291     echo "ISO8859-7 ISO-8859-7"
    292     echo "ISO8859-9 ISO-8859-9"
    293     echo "eucCN GB2312"
    294     echo "eucJP EUC-JP"
    295     echo "eucKR EUC-KR"
    296     echo "eucTW EUC-TW"
    297     ;;
    298   osf*)
    299     echo "ISO8859-1 ISO-8859-1"
    300     echo "ISO8859-2 ISO-8859-2"
    301     echo "ISO8859-4 ISO-8859-4"
    302     echo "ISO8859-5 ISO-8859-5"
    303     echo "ISO8859-7 ISO-8859-7"
    304     echo "ISO8859-8 ISO-8859-8"
    305     echo "ISO8859-9 ISO-8859-9"
    306     echo "ISO8859-15 ISO-8859-15"
    307     echo "cp850 CP850"
    308     echo "big5 BIG5"
    309     echo "dechanyu DEC-HANYU"
    310     echo "dechanzi GB2312"
    311     echo "deckanji DEC-KANJI"
    312     echo "deckorean EUC-KR"
    313     echo "eucJP EUC-JP"
    314     echo "eucKR EUC-KR"
    315     echo "eucTW EUC-TW"
    316     echo "GBK GBK"
    317     echo "KSC5601 CP949"
    318     echo "sdeckanji EUC-JP"
    319     echo "SJIS SHIFT_JIS"
    320     echo "TACTIS TIS-620"
    321     echo "UTF-8 UTF-8"
    322     ;;
    323   solaris*)
    324     echo "646 ASCII"
    325     echo "ISO8859-1 ISO-8859-1"
    326     echo "ISO8859-2 ISO-8859-2"
    327     echo "ISO8859-3 ISO-8859-3"
    328     echo "ISO8859-4 ISO-8859-4"
    329     echo "ISO8859-5 ISO-8859-5"
    330     echo "ISO8859-6 ISO-8859-6"
    331     echo "ISO8859-7 ISO-8859-7"
    332     echo "ISO8859-8 ISO-8859-8"
    333     echo "ISO8859-9 ISO-8859-9"
    334     echo "ISO8859-15 ISO-8859-15"
    335     echo "koi8-r KOI8-R"
    336     echo "ansi-1251 CP1251"
    337     echo "BIG5 BIG5"
    338     echo "Big5-HKSCS BIG5-HKSCS"
    339     echo "gb2312 GB2312"
    340     echo "GBK GBK"
    341     echo "GB18030 GB18030"
    342     echo "cns11643 EUC-TW"
    343     echo "5601 EUC-KR"
    344     echo "ko_KR.johap92 JOHAB"
    345     echo "eucJP EUC-JP"
    346     echo "PCK SHIFT_JIS"
    347     echo "TIS620.2533 TIS-620"
    348     #echo "sun_eu_greek ?" # what is this?
    349     echo "UTF-8 UTF-8"
    350     ;;
    351   freebsd* | os2*)
    352     # FreeBSD 4.2 doesn't have nl_langinfo(CODESET); therefore
    353     # localcharset.c falls back to using the full locale name
    354     # from the environment variables.
    355     # Likewise for OS/2. OS/2 has XFree86 just like FreeBSD. Just
    356     # reuse FreeBSD's locale data for OS/2.
    357     echo "C ASCII"
    358     echo "US-ASCII ASCII"
    359     for l in la_LN lt_LN; do
    360       echo "$l.ASCII ASCII"
    361     done
    362     for l in da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_US es_ES \
    363              fi_FI fr_BE fr_CA fr_CH fr_FR is_IS it_CH it_IT la_LN \
    364              lt_LN nl_BE nl_NL no_NO pt_PT sv_SE; do
    365       echo "$l.ISO_8859-1 ISO-8859-1"
    366       echo "$l.DIS_8859-15 ISO-8859-15"
    367     done
    368     for l in cs_CZ hr_HR hu_HU la_LN lt_LN pl_PL sl_SI; do
    369       echo "$l.ISO_8859-2 ISO-8859-2"
    370     done
    371     for l in la_LN lt_LT; do
    372       echo "$l.ISO_8859-4 ISO-8859-4"
    373     done
    374     for l in ru_RU ru_SU; do
    375       echo "$l.KOI8-R KOI8-R"
    376       echo "$l.ISO_8859-5 ISO-8859-5"
    377       echo "$l.CP866 CP866"
    378     done
    379     echo "uk_UA.KOI8-U KOI8-U"
    380     echo "zh_TW.BIG5 BIG5"
    381     echo "zh_TW.Big5 BIG5"
    382     echo "zh_CN.EUC GB2312"
    383     echo "ja_JP.EUC EUC-JP"
    384     echo "ja_JP.SJIS SHIFT_JIS"
    385     echo "ja_JP.Shift_JIS SHIFT_JIS"
    386     echo "ko_KR.EUC EUC-KR"
    387     ;;
    388   netbsd*)
    389     echo "646 ASCII"
    390     echo "ISO8859-1 ISO-8859-1"
    391     echo "ISO8859-2 ISO-8859-2"
    392     echo "ISO8859-4 ISO-8859-4"
    393     echo "ISO8859-5 ISO-8859-5"
    394     echo "ISO8859-7 ISO-8859-7"
    395     echo "ISO8859-13 ISO-8859-13"
    396     echo "ISO8859-15 ISO-8859-15"
    397     echo "eucCN GB2312"
    398     echo "eucJP EUC-JP"
    399     echo "eucKR EUC-KR"
    400     echo "eucTW EUC-TW"
    401     echo "BIG5 BIG5"
    402     echo "SJIS SHIFT_JIS"
    403     ;;
    404   openbsd*)
    405     echo "646 ASCII"
    406     echo "ISO8859-1 ISO-8859-1"
    407     echo "ISO8859-2 ISO-8859-2"
    408     echo "ISO8859-4 ISO-8859-4"
    409     echo "ISO8859-5 ISO-8859-5"
    410     echo "ISO8859-7 ISO-8859-7"
    411     echo "ISO8859-13 ISO-8859-13"
    412     echo "ISO8859-15 ISO-8859-15"
    413     ;;
    414   darwin[56]*)
    415     # Darwin 6.8 doesn't have nl_langinfo(CODESET); therefore
    416     # localcharset.c falls back to using the full locale name
    417     # from the environment variables.
    418     echo "C ASCII"
    419     for l in en_AU en_CA en_GB en_US la_LN; do
    420       echo "$l.US-ASCII ASCII"
    421     done
    422     for l in da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_US es_ES \
    423              fi_FI fr_BE fr_CA fr_CH fr_FR is_IS it_CH it_IT nl_BE \
    424              nl_NL no_NO pt_PT sv_SE; do
    425       echo "$l ISO-8859-1"
    426       echo "$l.ISO8859-1 ISO-8859-1"
    427       echo "$l.ISO8859-15 ISO-8859-15"
    428     done
    429     for l in la_LN; do
    430       echo "$l.ISO8859-1 ISO-8859-1"
    431       echo "$l.ISO8859-15 ISO-8859-15"
    432     done
    433     for l in cs_CZ hr_HR hu_HU la_LN pl_PL sl_SI; do
    434       echo "$l.ISO8859-2 ISO-8859-2"
    435     done
    436     for l in la_LN lt_LT; do
    437       echo "$l.ISO8859-4 ISO-8859-4"
    438     done
    439     for l in ru_RU; do
    440       echo "$l.KOI8-R KOI8-R"
    441       echo "$l.ISO8859-5 ISO-8859-5"
    442       echo "$l.CP866 CP866"
    443     done
    444     for l in bg_BG; do
    445       echo "$l.CP1251 CP1251"
    446     done
    447     echo "uk_UA.KOI8-U KOI8-U"
    448     echo "zh_TW.BIG5 BIG5"
    449     echo "zh_TW.Big5 BIG5"
    450     echo "zh_CN.EUC GB2312"
    451     echo "ja_JP.EUC EUC-JP"
    452     echo "ja_JP.SJIS SHIFT_JIS"
    453     echo "ko_KR.EUC EUC-KR"
    454     ;;
    455   darwin*)
    456     # Darwin 7.5 has nl_langinfo(CODESET), but sometimes its value is
    457     # useless:
    458     # - It returns the empty string when LANG is set to a locale of the
    459     #   form ll_CC, although ll_CC/LC_CTYPE is a symlink to an UTF-8
    460     #   LC_CTYPE file.
    461     # - The environment variables LANG, LC_CTYPE, LC_ALL are not set by
    462     #   the system; nl_langinfo(CODESET) returns "US-ASCII" in this case.
    463     # - The documentation says:
    464     #     "... all code that calls BSD system routines should ensure
    465     #      that the const *char parameters of these routines are in UTF-8
    466     #      encoding. All BSD system functions expect their string
    467     #      parameters to be in UTF-8 encoding and nothing else."
    468     #   It also says
    469     #     "An additional caveat is that string parameters for files,
    470     #      paths, and other file-system entities must be in canonical
    471     #      UTF-8. In a canonical UTF-8 Unicode string, all decomposable
    472     #      characters are decomposed ..."
    473     #   but this is not true: You can pass non-decomposed UTF-8 strings
    474     #   to file system functions, and it is the OS which will convert
    475     #   them to decomposed UTF-8 before accessing the file system.
    476     # - The Apple Terminal application displays UTF-8 by default.
    477     # - However, other applications are free to use different encodings:
    478     #   - xterm uses ISO-8859-1 by default.
    479     #   - TextEdit uses MacRoman by default.
    480     # We prefer UTF-8 over decomposed UTF-8-MAC because one should
    481     # minimize the use of decomposed Unicode. Unfortunately, through the
    482     # Darwin file system, decomposed UTF-8 strings are leaked into user
    483     # space nevertheless.
    484     # Then there are also the locales with encodings other than US-ASCII
    485     # and UTF-8. These locales can be occasionally useful to users (e.g.
    486     # when grepping through ISO-8859-1 encoded text files), when all their
    487     # file names are in US-ASCII.
    488     echo "ISO8859-1 ISO-8859-1"
    489     echo "ISO8859-2 ISO-8859-2"
    490     echo "ISO8859-4 ISO-8859-4"
    491     echo "ISO8859-5 ISO-8859-5"
    492     echo "ISO8859-7 ISO-8859-7"
    493     echo "ISO8859-9 ISO-8859-9"
    494     echo "ISO8859-13 ISO-8859-13"
    495     echo "ISO8859-15 ISO-8859-15"
    496     echo "KOI8-R KOI8-R"
    497     echo "KOI8-U KOI8-U"
    498     echo "CP866 CP866"
    499     echo "CP949 CP949"
    500     echo "CP1131 CP1131"
    501     echo "CP1251 CP1251"
    502     echo "eucCN GB2312"
    503     echo "GB2312 GB2312"
    504     echo "eucJP EUC-JP"
    505     echo "eucKR EUC-KR"
    506     echo "Big5 BIG5"
    507     echo "Big5HKSCS BIG5-HKSCS"
    508     echo "GBK GBK"
    509     echo "GB18030 GB18030"
    510     echo "SJIS SHIFT_JIS"
    511     echo "ARMSCII-8 ARMSCII-8"
    512     echo "PT154 PT154"
    513     #echo "ISCII-DEV ?"
    514     echo "* UTF-8"
    515     ;;
    516   beos* | haiku*)
    517     # BeOS and Haiku have a single locale, and it has UTF-8 encoding.
    518     echo "* UTF-8"
    519     ;;
    520   msdosdjgpp*)
    521     # DJGPP 2.03 doesn't have nl_langinfo(CODESET); therefore
    522     # localcharset.c falls back to using the full locale name
    523     # from the environment variables.
    524     echo "#"
    525     echo "# The encodings given here may not all be correct."
    526     echo "# If you find that the encoding given for your language and"
    527     echo "# country is not the one your DOS machine actually uses, just"
    528     echo "# correct it in this file, and send a mail to"
    529     echo "# Juan Manuel Guerrero <juan.guerrero (at] gmx.de>"
    530     echo "# and Bruno Haible <bruno (at] clisp.org>."
    531     echo "#"
    532     echo "C ASCII"
    533     # ISO-8859-1 languages
    534     echo "ca CP850"
    535     echo "ca_ES CP850"
    536     echo "da CP865"    # not CP850 ??
    537     echo "da_DK CP865" # not CP850 ??
    538     echo "de CP850"
    539     echo "de_AT CP850"
    540     echo "de_CH CP850"
    541     echo "de_DE CP850"
    542     echo "en CP850"
    543     echo "en_AU CP850" # not CP437 ??
    544     echo "en_CA CP850"
    545     echo "en_GB CP850"
    546     echo "en_NZ CP437"
    547     echo "en_US CP437"
    548     echo "en_ZA CP850" # not CP437 ??
    549     echo "es CP850"
    550     echo "es_AR CP850"
    551     echo "es_BO CP850"
    552     echo "es_CL CP850"
    553     echo "es_CO CP850"
    554     echo "es_CR CP850"
    555     echo "es_CU CP850"
    556     echo "es_DO CP850"
    557     echo "es_EC CP850"
    558     echo "es_ES CP850"
    559     echo "es_GT CP850"
    560     echo "es_HN CP850"
    561     echo "es_MX CP850"
    562     echo "es_NI CP850"
    563     echo "es_PA CP850"
    564     echo "es_PY CP850"
    565     echo "es_PE CP850"
    566     echo "es_SV CP850"
    567     echo "es_UY CP850"
    568     echo "es_VE CP850"
    569     echo "et CP850"
    570     echo "et_EE CP850"
    571     echo "eu CP850"
    572     echo "eu_ES CP850"
    573     echo "fi CP850"
    574     echo "fi_FI CP850"
    575     echo "fr CP850"
    576     echo "fr_BE CP850"
    577     echo "fr_CA CP850"
    578     echo "fr_CH CP850"
    579     echo "fr_FR CP850"
    580     echo "ga CP850"
    581     echo "ga_IE CP850"
    582     echo "gd CP850"
    583     echo "gd_GB CP850"
    584     echo "gl CP850"
    585     echo "gl_ES CP850"
    586     echo "id CP850"    # not CP437 ??
    587     echo "id_ID CP850" # not CP437 ??
    588     echo "is CP861"    # not CP850 ??
    589     echo "is_IS CP861" # not CP850 ??
    590     echo "it CP850"
    591     echo "it_CH CP850"
    592     echo "it_IT CP850"
    593     echo "lt CP775"
    594     echo "lt_LT CP775"
    595     echo "lv CP775"
    596     echo "lv_LV CP775"
    597     echo "nb CP865"    # not CP850 ??
    598     echo "nb_NO CP865" # not CP850 ??
    599     echo "nl CP850"
    600     echo "nl_BE CP850"
    601     echo "nl_NL CP850"
    602     echo "nn CP865"    # not CP850 ??
    603     echo "nn_NO CP865" # not CP850 ??
    604     echo "no CP865"    # not CP850 ??
    605     echo "no_NO CP865" # not CP850 ??
    606     echo "pt CP850"
    607     echo "pt_BR CP850"
    608     echo "pt_PT CP850"
    609     echo "sv CP850"
    610     echo "sv_SE CP850"
    611     # ISO-8859-2 languages
    612     echo "cs CP852"
    613     echo "cs_CZ CP852"
    614     echo "hr CP852"
    615     echo "hr_HR CP852"
    616     echo "hu CP852"
    617     echo "hu_HU CP852"
    618     echo "pl CP852"
    619     echo "pl_PL CP852"
    620     echo "ro CP852"
    621     echo "ro_RO CP852"
    622     echo "sk CP852"
    623     echo "sk_SK CP852"
    624     echo "sl CP852"
    625     echo "sl_SI CP852"
    626     echo "sq CP852"
    627     echo "sq_AL CP852"
    628     echo "sr CP852"    # CP852 or CP866 or CP855 ??
    629     echo "sr_CS CP852" # CP852 or CP866 or CP855 ??
    630     echo "sr_YU CP852" # CP852 or CP866 or CP855 ??
    631     # ISO-8859-3 languages
    632     echo "mt CP850"
    633     echo "mt_MT CP850"
    634     # ISO-8859-5 languages
    635     echo "be CP866"
    636     echo "be_BE CP866"
    637     echo "bg CP866"    # not CP855 ??
    638     echo "bg_BG CP866" # not CP855 ??
    639     echo "mk CP866"    # not CP855 ??
    640     echo "mk_MK CP866" # not CP855 ??
    641     echo "ru CP866"
    642     echo "ru_RU CP866"
    643     echo "uk CP1125"
    644     echo "uk_UA CP1125"
    645     # ISO-8859-6 languages
    646     echo "ar CP864"
    647     echo "ar_AE CP864"
    648     echo "ar_DZ CP864"
    649     echo "ar_EG CP864"
    650     echo "ar_IQ CP864"
    651     echo "ar_IR CP864"
    652     echo "ar_JO CP864"
    653     echo "ar_KW CP864"
    654     echo "ar_MA CP864"
    655     echo "ar_OM CP864"
    656     echo "ar_QA CP864"
    657     echo "ar_SA CP864"
    658     echo "ar_SY CP864"
    659     # ISO-8859-7 languages
    660     echo "el CP869"
    661     echo "el_GR CP869"
    662     # ISO-8859-8 languages
    663     echo "he CP862"
    664     echo "he_IL CP862"
    665     # ISO-8859-9 languages
    666     echo "tr CP857"
    667     echo "tr_TR CP857"
    668     # Japanese
    669     echo "ja CP932"
    670     echo "ja_JP CP932"
    671     # Chinese
    672     echo "zh_CN GBK"
    673     echo "zh_TW CP950" # not CP938 ??
    674     # Korean
    675     echo "kr CP949"    # not CP934 ??
    676     echo "kr_KR CP949" # not CP934 ??
    677     # Thai
    678     echo "th CP874"
    679     echo "th_TH CP874"
    680     # Other
    681     echo "eo CP850"
    682     echo "eo_EO CP850"
    683     ;;
    684 esac
    685