mirror of
https://github.com/Stichting-MINIX-Research-Foundation/netbsd.git
synced 2025-09-12 08:36:05 -04:00
136 lines
5.7 KiB
HTML
136 lines
5.7 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<!-- This HTML file has been created by texi2html 1.52a
|
|
from gettext.texi on 11 April 2005 -->
|
|
|
|
<TITLE>GNU gettext utilities - 9 The User's View</TITLE>
|
|
</HEAD>
|
|
<BODY>
|
|
Go to the <A HREF="gettext_1.html">first</A>, <A HREF="gettext_8.html">previous</A>, <A HREF="gettext_10.html">next</A>, <A HREF="gettext_22.html">last</A> section, <A HREF="gettext_toc.html">table of contents</A>.
|
|
<P><HR><P>
|
|
|
|
|
|
<H1><A NAME="SEC156" HREF="gettext_toc.html#TOC156">9 The User's View</A></H1>
|
|
|
|
<P>
|
|
When GNU <CODE>gettext</CODE> will truly have reached its goal, average users
|
|
should feel some kind of astonished pleasure, seeing the effect of
|
|
that strange kind of magic that just makes their own native language
|
|
appear everywhere on their screens. As for naive users, they would
|
|
ideally have no special pleasure about it, merely taking their own
|
|
language for <EM>granted</EM>, and becoming rather unhappy otherwise.
|
|
|
|
</P>
|
|
<P>
|
|
So, let's try to describe here how we would like the magic to operate,
|
|
as we want the users' view to be the simplest, among all ways one
|
|
could look at GNU <CODE>gettext</CODE>. All other software engineers:
|
|
programmers, translators, maintainers, should work together in such a
|
|
way that the magic becomes possible. This is a long and progressive
|
|
undertaking, and information is available about the progress of the
|
|
Translation Project.
|
|
|
|
</P>
|
|
<P>
|
|
When a package is distributed, there are two kinds of users:
|
|
<EM>installers</EM> who fetch the distribution, unpack it, configure
|
|
it, compile it and install it for themselves or others to use; and
|
|
<EM>end users</EM> that call programs of the package, once these have
|
|
been installed at their site. GNU <CODE>gettext</CODE> is offering magic
|
|
for both installers and end users.
|
|
|
|
</P>
|
|
|
|
|
|
|
|
<H2><A NAME="SEC157" HREF="gettext_toc.html#TOC157">9.1 The Current <TT>`ABOUT-NLS´</TT> Matrix</A></H2>
|
|
<P>
|
|
<A NAME="IDX970"></A>
|
|
<A NAME="IDX971"></A>
|
|
<A NAME="IDX972"></A>
|
|
|
|
</P>
|
|
<P>
|
|
Languages are not equally supported in all packages using GNU
|
|
<CODE>gettext</CODE>. To know if some package uses GNU <CODE>gettext</CODE>, one
|
|
may check the distribution for the <TT>`ABOUT-NLS´</TT> information file, for
|
|
some <TT>`<VAR>ll</VAR>.po´</TT> files, often kept together into some <TT>`po/´</TT>
|
|
directory, or for an <TT>`intl/´</TT> directory. Internationalized packages
|
|
have usually many <TT>`<VAR>ll</VAR>.po´</TT> files, where <VAR>ll</VAR> represents
|
|
the language. section <A HREF="gettext_9.html#SEC159">9.3 Magic for End Users</A> for a complete description of the format
|
|
for <VAR>ll</VAR>.
|
|
|
|
</P>
|
|
<P>
|
|
More generally, a matrix is available for showing the current state
|
|
of the Translation Project, listing which packages are prepared for
|
|
multi-lingual messages, and which languages are supported by each.
|
|
Because this information changes often, this matrix is not kept within
|
|
this GNU <CODE>gettext</CODE> manual. This information is often found in
|
|
file <TT>`ABOUT-NLS´</TT> from various distributions, but is also as old as
|
|
the distribution itself. A recent copy of this <TT>`ABOUT-NLS´</TT> file,
|
|
containing up-to-date information, should generally be found on the
|
|
Translation Project sites, and also on most GNU archive sites.
|
|
|
|
</P>
|
|
|
|
|
|
<H2><A NAME="SEC158" HREF="gettext_toc.html#TOC158">9.2 Magic for Installers</A></H2>
|
|
<P>
|
|
<A NAME="IDX973"></A>
|
|
<A NAME="IDX974"></A>
|
|
|
|
</P>
|
|
<P>
|
|
By default, packages fully using GNU <CODE>gettext</CODE>, internally,
|
|
are installed in such a way that they to allow translation of
|
|
messages. At <EM>configuration</EM> time, those packages should
|
|
automatically detect whether the underlying host system already provides
|
|
the GNU <CODE>gettext</CODE> functions. If not,
|
|
the GNU <CODE>gettext</CODE> library should be automatically prepared
|
|
and used. Installers may use special options at configuration
|
|
time for changing this behavior. The command <SAMP>`./configure
|
|
--with-included-gettext´</SAMP> bypasses system <CODE>gettext</CODE> to
|
|
use the included GNU <CODE>gettext</CODE> instead,
|
|
while <SAMP>`./configure --disable-nls´</SAMP>
|
|
produces programs totally unable to translate messages.
|
|
|
|
</P>
|
|
<P>
|
|
<A NAME="IDX975"></A>
|
|
Internationalized packages have usually many <TT>`<VAR>ll</VAR>.po´</TT>
|
|
files. Unless
|
|
translations are disabled, all those available are installed together
|
|
with the package. However, the environment variable <CODE>LINGUAS</CODE>
|
|
may be set, prior to configuration, to limit the installed set.
|
|
<CODE>LINGUAS</CODE> should then contain a space separated list of two-letter
|
|
codes, stating which languages are allowed.
|
|
|
|
</P>
|
|
|
|
|
|
<H2><A NAME="SEC159" HREF="gettext_toc.html#TOC159">9.3 Magic for End Users</A></H2>
|
|
<P>
|
|
<A NAME="IDX976"></A>
|
|
<A NAME="IDX977"></A>
|
|
<A NAME="IDX978"></A>
|
|
|
|
</P>
|
|
<P>
|
|
<A NAME="IDX979"></A>
|
|
We consider here those packages using GNU <CODE>gettext</CODE> internally,
|
|
and for which the installers did not disable translation at
|
|
<EM>configure</EM> time. Then, users only have to set the <CODE>LANG</CODE>
|
|
environment variable to the appropriate <SAMP>`<VAR>ll</VAR>_<VAR>CC</VAR>´</SAMP>
|
|
combination prior to using the programs in the package. See section <A HREF="gettext_9.html#SEC157">9.1 The Current <TT>`ABOUT-NLS´</TT> Matrix</A>.
|
|
For example, let's presume a German site. At the shell prompt, users
|
|
merely have to execute <SAMP>`setenv LANG de_DE´</SAMP> (in <CODE>csh</CODE>) or
|
|
<SAMP>`export LANG; LANG=de_DE´</SAMP> (in <CODE>sh</CODE>). They could even do
|
|
this from their <TT>`.login´</TT> or <TT>`.profile´</TT> file.
|
|
|
|
</P>
|
|
<P><HR><P>
|
|
Go to the <A HREF="gettext_1.html">first</A>, <A HREF="gettext_8.html">previous</A>, <A HREF="gettext_10.html">next</A>, <A HREF="gettext_22.html">last</A> section, <A HREF="gettext_toc.html">table of contents</A>.
|
|
</BODY>
|
|
</HTML>
|