|
|
| version 1.1.1.1, 2012/02/21 22:57:48 | version 1.1.1.2, 2021/03/17 13:38:46 |
|---|---|
| Line 1 | Line 1 |
| /* Determine a canonical name for the current locale's character encoding. | /* Determine a canonical name for the current locale's character encoding. |
| Copyright (C) 2000-2003 Free Software Foundation, Inc. | Copyright (C) 2000-2003, 2009-2018 Free Software Foundation, Inc. |
| This file is part of the GNU CHARSET Library. | This file is part of the GNU CHARSET Library. |
| This program is free software; you can redistribute it and/or modify it | This program is free software; you can redistribute it and/or modify it |
| Line 12 | Line 12 |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| Library General Public License for more details. | Library General Public License for more details. |
| You should have received a copy of the GNU Library General Public | You should have received a copy of the GNU Library General Public License |
| License along with this program; if not, write to the Free Software | along with this program; if not, see <https://www.gnu.org/licenses/>. */ |
| Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, | |
| USA. */ | |
| #ifndef _LOCALCHARSET_H | #ifndef _LOCALCHARSET_H |
| #define _LOCALCHARSET_H | #define _LOCALCHARSET_H |
| #if @HAVE_VISIBILITY@ && BUILDING_LIBCHARSET | #if @HAVE_VISIBILITY@ && BUILDING_LIBCHARSET |
| #define LIBCHARSET_DLL_EXPORTED __attribute__((__visibility__("default"))) | #define LIBCHARSET_DLL_EXPORTED __attribute__((__visibility__("default"))) |
| #elif defined _MSC_VER && BUILDING_LIBCHARSET | |
| #define LIBCHARSET_DLL_EXPORTED __declspec(dllexport) | |
| #else | #else |
| #define LIBCHARSET_DLL_EXPORTED | #define LIBCHARSET_DLL_EXPORTED |
| #endif | #endif |
| Line 33 extern "C" { | Line 33 extern "C" { |
| /* Determine the current locale's character encoding, and canonicalize it | /* Determine the current locale's character encoding, and canonicalize it |
| into one of the canonical names listed in config.charset. | into one of the canonical names listed below. |
| The result must not be freed; it is statically allocated. | The result must not be freed; it is statically allocated. |
| If the canonical name cannot be determined, the result is a non-canonical | If the canonical name cannot be determined, the result is a non-canonical |
| name. */ | name. */ |
| extern LIBCHARSET_DLL_EXPORTED const char * locale_charset (void); | extern LIBCHARSET_DLL_EXPORTED const char * locale_charset (void); |
| /* About GNU canonical names for character encodings: | |
| Every canonical name must be supported by GNU libiconv. Support by GNU libc | |
| is also desirable. | |
| The name is case insensitive. Usually an upper case MIME charset name is | |
| preferred. | |
| The current list of these GNU canonical names is: | |
| name MIME? used by which systems | |
| (darwin = Mac OS X, windows = native Windows) | |
| ASCII, ANSI_X3.4-1968 glibc solaris freebsd netbsd darwin minix cygwin | |
| ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin | |
| ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin | |
| ISO-8859-3 Y glibc solaris cygwin | |
| ISO-8859-4 Y hpux osf solaris freebsd netbsd openbsd darwin | |
| ISO-8859-5 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin | |
| ISO-8859-6 Y glibc aix hpux solaris cygwin | |
| ISO-8859-7 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin | |
| ISO-8859-8 Y glibc aix hpux osf solaris cygwin | |
| ISO-8859-9 Y glibc aix hpux irix osf solaris freebsd darwin cygwin | |
| ISO-8859-13 glibc hpux solaris freebsd netbsd openbsd darwin cygwin | |
| ISO-8859-14 glibc cygwin | |
| ISO-8859-15 glibc aix irix osf solaris freebsd netbsd openbsd darwin cygwin | |
| KOI8-R Y glibc hpux solaris freebsd netbsd openbsd darwin | |
| KOI8-U Y glibc freebsd netbsd openbsd darwin cygwin | |
| KOI8-T glibc | |
| CP437 dos | |
| CP775 dos | |
| CP850 aix osf dos | |
| CP852 dos | |
| CP855 dos | |
| CP856 aix | |
| CP857 dos | |
| CP861 dos | |
| CP862 dos | |
| CP864 dos | |
| CP865 dos | |
| CP866 freebsd netbsd openbsd darwin dos | |
| CP869 dos | |
| CP874 windows dos | |
| CP922 aix | |
| CP932 aix cygwin windows dos | |
| CP943 aix | |
| CP949 osf darwin windows dos | |
| CP950 windows dos | |
| CP1046 aix | |
| CP1124 aix | |
| CP1125 dos | |
| CP1129 aix | |
| CP1131 freebsd darwin | |
| CP1250 windows | |
| CP1251 glibc hpux solaris freebsd netbsd openbsd darwin cygwin windows | |
| CP1252 aix windows | |
| CP1253 windows | |
| CP1254 windows | |
| CP1255 glibc windows | |
| CP1256 windows | |
| CP1257 windows | |
| GB2312 Y glibc aix hpux irix solaris freebsd netbsd darwin cygwin | |
| EUC-JP Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin | |
| EUC-KR Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin | |
| EUC-TW glibc aix hpux irix osf solaris netbsd | |
| BIG5 Y glibc aix hpux osf solaris freebsd netbsd darwin cygwin | |
| BIG5-HKSCS glibc hpux solaris netbsd darwin | |
| GBK glibc aix osf solaris freebsd darwin cygwin windows dos | |
| GB18030 glibc hpux solaris freebsd netbsd darwin | |
| SHIFT_JIS Y hpux osf solaris freebsd netbsd darwin | |
| JOHAB glibc solaris windows | |
| TIS-620 glibc aix hpux osf solaris cygwin | |
| VISCII Y glibc | |
| TCVN5712-1 glibc | |
| ARMSCII-8 glibc freebsd netbsd darwin | |
| GEORGIAN-PS glibc cygwin | |
| PT154 glibc netbsd cygwin | |
| HP-ROMAN8 hpux | |
| HP-ARABIC8 hpux | |
| HP-GREEK8 hpux | |
| HP-HEBREW8 hpux | |
| HP-TURKISH8 hpux | |
| HP-KANA8 hpux | |
| DEC-KANJI osf | |
| DEC-HANYU osf | |
| UTF-8 Y glibc aix hpux osf solaris netbsd darwin cygwin | |
| Note: Names which are not marked as being a MIME name should not be used in | |
| Internet protocols for information interchange (mail, news, etc.). | |
| Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications | |
| must understand both names and treat them as equivalent. | |
| */ | |
| #ifdef __cplusplus | #ifdef __cplusplus |