]> git.saurik.com Git - wxWidgets.git/blame - docs/html/gettext/gettext_7.html
I like if things compile with --enable-unicode + --enable-mediactrl. Code shamelessly...
[wxWidgets.git] / docs / html / gettext / gettext_7.html
CommitLineData
f6bcfd97
BP
1<HTML>
2<HEAD>
3<!-- This HTML file has been created by texi2html 1.54
4 from gettext.texi on 25 January 1999 -->
5
6<TITLE>GNU gettext utilities - The User's View</TITLE>
7<link href="gettext_8.html" rel=Next>
8<link href="gettext_6.html" rel=Previous>
9<link href="gettext_toc.html" rel=ToC>
10
11</HEAD>
12<BODY>
13<p>Go to the <A HREF="gettext_1.html">first</A>, <A HREF="gettext_6.html">previous</A>, <A HREF="gettext_8.html">next</A>, <A HREF="gettext_12.html">last</A> section, <A HREF="gettext_toc.html">table of contents</A>.
14<P><HR><P>
15
16
17<H1><A NAME="SEC35" HREF="gettext_toc.html#TOC35">The User's View</A></H1>
18
19<P>
20When GNU <CODE>gettext</CODE> will truly have reached is goal, average users
21should feel some kind of astonished pleasure, seeing the effect of
22that strange kind of magic that just makes their own native language
23appear everywhere on their screens. As for naive users, they would
24ideally have no special pleasure about it, merely taking their own
25language for <EM>granted</EM>, and becoming rather unhappy otherwise.
26
27</P>
28<P>
29So, let's try to describe here how we would like the magic to operate,
30as we want the users' view to be the simplest, among all ways one
31could look at GNU <CODE>gettext</CODE>. All other software engineers:
32programmers, translators, maintainers, should work together in such a
33way that the magic becomes possible. This is a long and progressive
34undertaking, and information is available about the progress of the
35Translation Project.
36
37</P>
38<P>
39When a package is distributed, there are two kind of users:
40<STRONG>installers</STRONG> who fetch the distribution, unpack it, configure
41it, compile it and install it for themselves or others to use; and
42<STRONG>end users</STRONG> that call programs of the package, once these have
43been installed at their site. GNU <CODE>gettext</CODE> is offering magic
44for both installers and end users.
45
46</P>
47
48
49
50<H2><A NAME="SEC36" HREF="gettext_toc.html#TOC36">The Current <TT>`ABOUT-NLS'</TT> Matrix</A></H2>
51
52<P>
53Languages are not equally supported in all packages using GNU
54<CODE>gettext</CODE>. To know if some package uses GNU <CODE>gettext</CODE>, one
55may check the distribution for the <TT>`ABOUT-NLS'</TT> information file, for
56some <TT>`<VAR>ll</VAR>.po'</TT> files, often kept together into some <TT>`po/'</TT>
57directory, or for an <TT>`intl/'</TT> directory. Internationalized packages
58have usually many <TT>`<VAR>ll</VAR>.po'</TT> files, where <VAR>ll</VAR> represents
59the language. section <A HREF="gettext_7.html#SEC38">Magic for End Users</A> for a complete description of the format
60for <VAR>ll</VAR>.
61
62</P>
63<P>
64More generally, a matrix is available for showing the current state
65of the Translation Project, listing which packages are prepared for
66multi-lingual messages, and which languages is supported by each.
67Because this information changes often, this matrix is not kept within
68this GNU <CODE>gettext</CODE> manual. This information is often found in
69file <TT>`ABOUT-NLS'</TT> from various distributions, but is also as old as
70the distribution itself. A recent copy of this <TT>`ABOUT-NLS'</TT> file,
71containing up-to-date information, should generally be found on the
72Translation Project sites, and also on most GNU archive sites.
73
74</P>
75
76
77<H2><A NAME="SEC37" HREF="gettext_toc.html#TOC37">Magic for Installers</A></H2>
78
79<P>
80By default, packages fully using GNU <CODE>gettext</CODE>, internally,
81are installed in such a way that they to allow translation of
82messages. At <EM>configuration</EM> time, those packages should
83automatically detect whether the underlying host system provides usable
84<CODE>catgets</CODE> or <CODE>gettext</CODE> functions. If neither is present,
85the GNU <CODE>gettext</CODE> library should be automatically prepared
86and used. Installers may use special options at configuration
87time for changing this behavior. The command <SAMP>`./configure
88--with-included-gettext'</SAMP> bypasses system <CODE>catgets</CODE> or <CODE>gettext</CODE> to
89use GNU <CODE>gettext</CODE> instead, while <SAMP>`./configure --disable-nls'</SAMP>
90produces program totally unable to translate messages.
91
92</P>
93<P>
94Internationalized packages have usually many <TT>`<VAR>ll</VAR>.po'</TT>
95files. Unless
96translations are disabled, all those available are installed together
97with the package. However, the environment variable <CODE>LINGUAS</CODE>
98may be set, prior to configuration, to limit the installed set.
99<CODE>LINGUAS</CODE> should then contain a space separated list of two-letter
100codes, stating which languages are allowed.
101
102</P>
103
104
105<H2><A NAME="SEC38" HREF="gettext_toc.html#TOC38">Magic for End Users</A></H2>
106
107<P>
108We consider here those packages using GNU <CODE>gettext</CODE> internally,
109and for which the installers did not disable translation at
110<EM>configure</EM> time. Then, users only have to set the <CODE>LANG</CODE>
111environment variable to the appropriate <SAMP>`<VAR>ll</VAR>'</SAMP> prior to
112using the programs in the package. See section <A HREF="gettext_7.html#SEC36">The Current <TT>`ABOUT-NLS'</TT> Matrix</A>. For example,
113let's presume a German site. At the shell prompt, users merely have to
114execute <SAMP>`setenv LANG de'</SAMP> (in <CODE>csh</CODE>) or <SAMP>`export
115LANG; LANG=de'</SAMP> (in <CODE>sh</CODE>). They could even do this from their
116<TT>`.login'</TT> or <TT>`.profile'</TT> file.
117
118</P>
119<P><HR><P>
120<p>Go to the <A HREF="gettext_1.html">first</A>, <A HREF="gettext_6.html">previous</A>, <A HREF="gettext_8.html">next</A>, <A HREF="gettext_12.html">last</A> section, <A HREF="gettext_toc.html">table of contents</A>.
121</BODY>
122</HTML>