root/maint/gnulib/lib/localcharset.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   1 /* Determine a canonical name for the current locale's character encoding.
   2    Copyright (C) 2000-2003, 2009-2021 Free Software Foundation, Inc.
   3    This file is part of the GNU CHARSET Library.
   4 
   5    This file is free software: you can redistribute it and/or modify
   6    it under the terms of the GNU Lesser General Public License as
   7    published by the Free Software Foundation; either version 2.1 of the
   8    License, or (at your option) any later version.
   9 
  10    This file is distributed in the hope that it will be useful,
  11    but WITHOUT ANY WARRANTY; without even the implied warranty of
  12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  13    GNU Lesser General Public License for more details.
  14 
  15    You should have received a copy of the GNU Lesser General Public License
  16    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
  17 
  18 #ifndef _LOCALCHARSET_H
  19 #define _LOCALCHARSET_H
  20 
  21 
  22 #ifdef __cplusplus
  23 extern "C" {
  24 #endif
  25 
  26 
  27 /* Determine the current locale's character encoding, and canonicalize it
  28    into one of the canonical names listed below.
  29    The result must not be freed; it is statically allocated.  The result
  30    becomes invalid when setlocale() is used to change the global locale, or
  31    when the value of one of the environment variables LC_ALL, LC_CTYPE, LANG
  32    is changed; threads in multithreaded programs should not do this.
  33    If the canonical name cannot be determined, the result is a non-canonical
  34    name.  */
  35 extern const char * locale_charset (void);
  36 
  37 /* About GNU canonical names for character encodings:
  38 
  39    Every canonical name must be supported by GNU libiconv.  Support by GNU libc
  40    is also desirable.
  41 
  42    The name is case insensitive.  Usually an upper case MIME charset name is
  43    preferred.
  44 
  45    The current list of these GNU canonical names is:
  46 
  47        name              MIME?             used by which systems
  48                                     (darwin = Mac OS X, windows = native Windows)
  49 
  50    ASCII, ANSI_X3.4-1968       glibc solaris freebsd netbsd darwin minix cygwin
  51    ISO-8859-1              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
  52    ISO-8859-2              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
  53    ISO-8859-3              Y   glibc solaris cygwin
  54    ISO-8859-4              Y   hpux osf solaris freebsd netbsd openbsd darwin
  55    ISO-8859-5              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
  56    ISO-8859-6              Y   glibc aix hpux solaris cygwin
  57    ISO-8859-7              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
  58    ISO-8859-8              Y   glibc aix hpux osf solaris cygwin zos
  59    ISO-8859-9              Y   glibc aix hpux irix osf solaris freebsd darwin cygwin zos
  60    ISO-8859-13                 glibc hpux solaris freebsd netbsd openbsd darwin cygwin
  61    ISO-8859-14                 glibc cygwin
  62    ISO-8859-15                 glibc aix irix osf solaris freebsd netbsd openbsd darwin cygwin
  63    KOI8-R                  Y   glibc hpux solaris freebsd netbsd openbsd darwin
  64    KOI8-U                  Y   glibc freebsd netbsd openbsd darwin cygwin
  65    KOI8-T                      glibc
  66    CP437                       dos
  67    CP775                       dos
  68    CP850                       aix osf dos
  69    CP852                       dos
  70    CP855                       dos
  71    CP856                       aix
  72    CP857                       dos
  73    CP861                       dos
  74    CP862                       dos
  75    CP864                       dos
  76    CP865                       dos
  77    CP866                       freebsd netbsd openbsd darwin dos
  78    CP869                       dos
  79    CP874                       windows dos
  80    CP922                       aix
  81    CP932                       aix cygwin windows dos
  82    CP943                       aix zos
  83    CP949                       osf darwin windows dos
  84    CP950                       windows dos
  85    CP1046                      aix
  86    CP1124                      aix
  87    CP1125                      dos
  88    CP1129                      aix
  89    CP1131                      freebsd darwin
  90    CP1250                      windows
  91    CP1251                      glibc hpux solaris freebsd netbsd openbsd darwin cygwin windows
  92    CP1252                      aix windows
  93    CP1253                      windows
  94    CP1254                      windows
  95    CP1255                      glibc windows
  96    CP1256                      windows
  97    CP1257                      windows
  98    GB2312                  Y   glibc aix hpux irix solaris freebsd netbsd darwin cygwin zos
  99    EUC-JP                  Y   glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin
 100    EUC-KR                  Y   glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin zos
 101    EUC-TW                      glibc aix hpux irix osf solaris netbsd
 102    BIG5                    Y   glibc aix hpux osf solaris freebsd netbsd darwin cygwin zos
 103    BIG5-HKSCS                  glibc hpux solaris netbsd darwin
 104    GBK                         glibc aix osf solaris freebsd darwin cygwin windows dos
 105    GB18030                     glibc hpux solaris freebsd netbsd darwin
 106    SHIFT_JIS               Y   hpux osf solaris freebsd netbsd darwin
 107    JOHAB                       glibc solaris windows
 108    TIS-620                     glibc aix hpux osf solaris cygwin zos
 109    VISCII                  Y   glibc
 110    TCVN5712-1                  glibc
 111    ARMSCII-8                   glibc freebsd netbsd darwin
 112    GEORGIAN-PS                 glibc cygwin
 113    PT154                       glibc netbsd cygwin
 114    HP-ROMAN8                   hpux
 115    HP-ARABIC8                  hpux
 116    HP-GREEK8                   hpux
 117    HP-HEBREW8                  hpux
 118    HP-TURKISH8                 hpux
 119    HP-KANA8                    hpux
 120    DEC-KANJI                   osf
 121    DEC-HANYU                   osf
 122    UTF-8                   Y   glibc aix hpux osf solaris netbsd darwin cygwin zos
 123 
 124    Note: Names which are not marked as being a MIME name should not be used in
 125    Internet protocols for information interchange (mail, news, etc.).
 126 
 127    Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names.  Applications
 128    must understand both names and treat them as equivalent.
 129  */
 130 
 131 
 132 #ifdef __cplusplus
 133 }
 134 #endif
 135 
 136 
 137 #endif /* _LOCALCHARSET_H */

/* [previous][next][first][last][top][bottom][index][help] */