LIBCHARSET - portable character set determination library This library provides a function which determines the character set / encoding of text in the currently selected locale (the LC_CTYPE locale facet). It is useful for portable programs which need to process text in other encodings and locales than the currently selected one. Possible uses: * Use of Unicode in POSIX compliant applications. * Conversion of text between the current locale's encoding and UTF-8 (or any other given encoding). * Mail agents. In theory, this would be very simple: The Single Unix Specification (SUSV2) provides the nl_langinfo function, in such a way that nl_langinfo (CODESET) returns the encoding name. But the nl_langinfo function still does not exist on some systems, and on those where it exists it returns unstandardized variations of the encoding names, like (on Solaris) "PCK" for "Shift_JIS". This library fixes these flaws and provides a function const char * locale_charset (void); It determines the current locale's character encoding, and canonicalizes it into one of the canonical names listed in config.charset. The result must not be freed; it is statically allocated. If the canonical name cannot be determined, the result is a non-canonical name. Installation: As usual for GNU packages: $ ./configure --prefix=/usr/local $ make $ make install This library is used in GNU sh-utils, fileutils, textutils GNU gettext GNU clisp To integrate this library into your package: See file INTEGRATE. Distribution: The libcharset directory of ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.8.tar.gz Homepage: http://www.haible.de/bruno/packages-libcharset.html Bruno Haible