textdomain - set domain for future gettext() calls |
#include <libintl.h> char * textdomain (const char * domainname); |
The textdomain function sets or retrieves the current message domain. |
A message domain is a set of translatable msgid messages. Usually, every software package has its own message domain. The domain name is used to determine the message catalog where a translation is looked up; it must be a non-empty string. |
The current message domain is used by the gettext, ngettext functions, and by the dgettext, dcgettext, dngettext and dcngettext functions when called with a NULL domainname argument. |
If domainname is not NULL, the current message domain is set to domainname. The string the function stores internally is a copy of the domainname argument. |
If domainname is NULL, the function returns the current message domain. |
If successful, the textdomain function returns the current message domain, after possibly changing it. The resulting string is valid until the next textdomain call and must not be modified or freed. If a memory allocation failure occurs, it sets errno to ENOMEM and returns NULL. |
The following error can occur, among others: |
ENOMEM |
Not enough memory available. |
The return type ought to be const char *, but is char * to avoid warnings in C code predating ANSI C. |
gettext(3), ngettext(3), bindtextdomain(3), bind_textdomain_codeset(3) |