Provided by: gettext-base_0.19.8.1-10build1_amd64 bug

NAME

       bind_textdomain_codeset - set encoding of message translations

SYNOPSIS

       #include <libintl.h>

       char * bind_textdomain_codeset (const char * domainname,
                                       const char * codeset);

DESCRIPTION

       The bind_textdomain_codeset function sets the output codeset for message catalogs for domain domainname.

       A  message  domain  is  a set of translatable msgid messages. Usually, every software package has its own
       message domain.

       By default, the gettext family of  functions  returns  translated  messages  in  the  locale's  character
       encoding,  which  can  be retrieved as nl_langinfo(CODESET). The need for calling bind_textdomain_codeset
       arises for programs which store strings in a locale independent way (e.g.  UTF-8) and want  to  avoid  an
       extra character set conversion on the returned translated messages.

       domainname must be a non-empty string.

       If  codeset  is not NULL, it must be a valid encoding name which can be used for the iconv_open function.
       The bind_textdomain_codeset function sets the output codeset for message  catalogs  belonging  to  domain
       domainname to codeset. The function makes copies of the argument strings as needed.

       If codeset is NULL, the function returns the previously set codeset for domain domainname. The default is
       NULL, denoting the locale's character encoding.

RETURN VALUE

       If successful, the bind_textdomain_codeset function returns the current codeset  for  domain  domainname,
       after possibly changing it. The resulting string is valid until the next bind_textdomain_codeset call for
       the same domainname and must not be modified or freed. If a memory allocation  failure  occurs,  it  sets
       errno to ENOMEM and returns NULL. If no codeset has been set for domain domainname, it returns NULL.

ERRORS

       The following error can occur, among others:

       ENOMEM Not enough memory available.

BUGS

       The return type ought to be const char *, but is char * to avoid warnings in C code predating ANSI C.

SEE ALSO

       gettext(3),   dgettext(3),   dcgettext(3),   ngettext(3),   dngettext(3),  dcngettext(3),  textdomain(3),
       nl_langinfo(3), iconv_open(3)