Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2024-05-18 08:30:07

0001 /* Determine a canonical name for the current locale's character encoding.
0002    Copyright (C) 2000-2003, 2009-2019 Free Software Foundation, Inc.
0003    This file is part of the GNU CHARSET Library.
0004 
0005    This program is free software; you can redistribute it and/or modify it
0006    under the terms of the GNU Lesser General Public License as published
0007    by the Free Software Foundation; either version 2, or (at your option)
0008    any later version.
0009 
0010    This program is distributed in the hope that it will be useful,
0011    but WITHOUT ANY WARRANTY; without even the implied warranty of
0012    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0013    Lesser General Public License for more details.
0014 
0015    You should have received a copy of the GNU Lesser General Public License
0016    along with this program; if not, see <https://www.gnu.org/licenses/>.  */
0017 
0018 #ifndef _LOCALCHARSET_H
0019 #define _LOCALCHARSET_H
0020 
0021 
0022 #ifdef __cplusplus
0023 extern "C" {
0024 #endif
0025 
0026 
0027 /* Determine the current locale's character encoding, and canonicalize it
0028    into one of the canonical names listed below.
0029    The result must not be freed; it is statically allocated.  The result
0030    becomes invalid when setlocale() is used to change the global locale, or
0031    when the value of one of the environment variables LC_ALL, LC_CTYPE, LANG
0032    is changed; threads in multithreaded programs should not do this.
0033    If the canonical name cannot be determined, the result is a non-canonical
0034    name.  */
0035 extern const char * locale_charset (void);
0036 
0037 /* About GNU canonical names for character encodings:
0038 
0039    Every canonical name must be supported by GNU libiconv.  Support by GNU libc
0040    is also desirable.
0041 
0042    The name is case insensitive.  Usually an upper case MIME charset name is
0043    preferred.
0044 
0045    The current list of these GNU canonical names is:
0046 
0047        name              MIME?             used by which systems
0048                                     (darwin = Mac OS X, windows = native Windows)
0049 
0050    ASCII, ANSI_X3.4-1968       glibc solaris freebsd netbsd darwin minix cygwin
0051    ISO-8859-1              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
0052    ISO-8859-2              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
0053    ISO-8859-3              Y   glibc solaris cygwin
0054    ISO-8859-4              Y   hpux osf solaris freebsd netbsd openbsd darwin
0055    ISO-8859-5              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
0056    ISO-8859-6              Y   glibc aix hpux solaris cygwin
0057    ISO-8859-7              Y   glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos
0058    ISO-8859-8              Y   glibc aix hpux osf solaris cygwin zos
0059    ISO-8859-9              Y   glibc aix hpux irix osf solaris freebsd darwin cygwin zos
0060    ISO-8859-13                 glibc hpux solaris freebsd netbsd openbsd darwin cygwin
0061    ISO-8859-14                 glibc cygwin
0062    ISO-8859-15                 glibc aix irix osf solaris freebsd netbsd openbsd darwin cygwin
0063    KOI8-R                  Y   glibc hpux solaris freebsd netbsd openbsd darwin
0064    KOI8-U                  Y   glibc freebsd netbsd openbsd darwin cygwin
0065    KOI8-T                      glibc
0066    CP437                       dos
0067    CP775                       dos
0068    CP850                       aix osf dos
0069    CP852                       dos
0070    CP855                       dos
0071    CP856                       aix
0072    CP857                       dos
0073    CP861                       dos
0074    CP862                       dos
0075    CP864                       dos
0076    CP865                       dos
0077    CP866                       freebsd netbsd openbsd darwin dos
0078    CP869                       dos
0079    CP874                       windows dos
0080    CP922                       aix
0081    CP932                       aix cygwin windows dos
0082    CP943                       aix zos
0083    CP949                       osf darwin windows dos
0084    CP950                       windows dos
0085    CP1046                      aix
0086    CP1124                      aix
0087    CP1125                      dos
0088    CP1129                      aix
0089    CP1131                      freebsd darwin
0090    CP1250                      windows
0091    CP1251                      glibc hpux solaris freebsd netbsd openbsd darwin cygwin windows
0092    CP1252                      aix windows
0093    CP1253                      windows
0094    CP1254                      windows
0095    CP1255                      glibc windows
0096    CP1256                      windows
0097    CP1257                      windows
0098    GB2312                  Y   glibc aix hpux irix solaris freebsd netbsd darwin cygwin zos
0099    EUC-JP                  Y   glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin
0100    EUC-KR                  Y   glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin zos
0101    EUC-TW                      glibc aix hpux irix osf solaris netbsd
0102    BIG5                    Y   glibc aix hpux osf solaris freebsd netbsd darwin cygwin zos
0103    BIG5-HKSCS                  glibc hpux solaris netbsd darwin
0104    GBK                         glibc aix osf solaris freebsd darwin cygwin windows dos
0105    GB18030                     glibc hpux solaris freebsd netbsd darwin
0106    SHIFT_JIS               Y   hpux osf solaris freebsd netbsd darwin
0107    JOHAB                       glibc solaris windows
0108    TIS-620                     glibc aix hpux osf solaris cygwin zos
0109    VISCII                  Y   glibc
0110    TCVN5712-1                  glibc
0111    ARMSCII-8                   glibc freebsd netbsd darwin
0112    GEORGIAN-PS                 glibc cygwin
0113    PT154                       glibc netbsd cygwin
0114    HP-ROMAN8                   hpux
0115    HP-ARABIC8                  hpux
0116    HP-GREEK8                   hpux
0117    HP-HEBREW8                  hpux
0118    HP-TURKISH8                 hpux
0119    HP-KANA8                    hpux
0120    DEC-KANJI                   osf
0121    DEC-HANYU                   osf
0122    UTF-8                   Y   glibc aix hpux osf solaris netbsd darwin cygwin zos
0123 
0124    Note: Names which are not marked as being a MIME name should not be used in
0125    Internet protocols for information interchange (mail, news, etc.).
0126 
0127    Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names.  Applications
0128    must understand both names and treat them as equivalent.
0129  */
0130 
0131 
0132 #ifdef __cplusplus
0133 }
0134 #endif
0135 
0136 
0137 #endif /* _LOCALCHARSET_H */