The textdomain() function sets or queries the name of the
current domain of the active LC_MESSAGES locale category. The
domainname argument is a string that can contain only the
characters allowed in legal filenames.
The domainname argument is the unique name of a domain on the
system. If there are multiple versions of the same domain on
one system, namespace collisions can be avoided by using
bindtextdomain(). If textdomain() is not called, a default
domain is selected. The setting of domain made by the last
valid call to textdomain() remains valid across subsequent
calls to setlocale, and gettext().
The normal return value from textdomain() is a string
containing the current setting of the domain. If domainname is
void, textdomain() returns a string containing the current
domain. If textdomain() was not previously called and
domainname is void, the name of the default domain is
returned.