Locale::gettext_xs - XS Implementation of Uniforum Message Translation


Locale::gettext_xs - XS Implementation of Uniforum Message Translation


 use gettext_xs (:locale_h :libintl_h);
 gettext $msgid;
 dgettext $domainname, $msgid;
 dcgettext $domainname, $msgid, LC_MESSAGES;
 ngettext $msgid, $msgid_plural, $count;
 dngettext $domainname, $msgid, $msgid_plural, $count;
 dcngettext $domainname, $msgid, $msgid_plural, $count, LC_MESSAGES;
 textdomain $domainname;
 bindtextdomain $domainname, $directory;
 bind_textdomain_codeset $domainname, $encoding;
 my $category = LC_CTYPE;
 my $category = LC_NUMERIC;
 my $category = LC_TIME;
 my $category = LC_COLLATE;
 my $category = LC_MONETARY;
 my $category = LC_MESSAGES;
 my $category = LC_ALL;


The module Locale::gettext_xs is the low-level interface to message translation according to the Uniforum approach that is for example used in GNU gettext and Sun's Solaris.

The module does not necessarily work on your system. It depends on the presence of shared libraries that are not always available. The higher-level modules Locale::TextDomain::(3), resp. Locale::Messages(3) will fall back to a pure Perl version if boostrapping Locale::gettext_xs fails.

The interface of Locale::gettext_xs is mostly identical to the pure Perl version as described in Locale::gettext_pp(3), see there for details. Differences are outlined below.

Locale::gettext_xs is downwards compatible to Locale::gettext(3) by Phillip Vandry <vandry@Mlink.NET>. You can use it as replacement for Locale::gettext(3).

Please note that directory names passed to the function bindtextdomain() are automatically converted from Perl semantics (slash as directory separator) to local semantics (for example the backslash for MS-DOS).


Copyright (C) 2002-2004, Guido Flohr <guido@imperia.net>, all rights reserved. See the source code for details.

The module is based on the work of Phillip Vandry <vandry@Mlink.NET> in Locale::gettext(3).

This software is contributed to the Perl community by Imperia (http://www.imperia.net/).


Locale::TextDomain(3pm), Locale::gettext_pp(3pm), Locale::gettext(3pm), Locale::Messages(3pm), File::Spec(3), perl(1)

 Locale::gettext_xs - XS Implementation of Uniforum Message Translation