aboutsummaryrefslogtreecommitdiffstats
path: root/chapter06/gettext.xml
blob: 9c3b449cd4a6fb7494439a498c5993622ea926d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../general.ent">
  %general-entities;
]>
<sect1 id="ch-system-gettext" xreflabel="Gettext">
<title>Gettext-&gettext-version;</title>
<?dbhtml filename="gettext.html"?>

<indexterm zone="ch-system-gettext"><primary sortas="a-Gettext">Gettext</primary></indexterm>

<para>The Gettext package contains utilities for internationalization and
localization. These allow programs to be compiled with Native Language Support
(NLS), enabling them to output messages in the user's native language.</para>

<screen>&buildtime; 0.5 SBU
&diskspace; 55 MB</screen>

<para>Gettext installation depends on: Bash, Binutils, Bison, Coreutils,
Diffutils, Gawk, GCC, Glibc, Grep, Make, Sed.</para>



<sect2>
<title>Installation of Gettext</title>

<para>Prepare Gettext for compilation:</para>

<screen><userinput>./configure --prefix=/usr</userinput></screen>

<para>Compile the package:</para>

<screen><userinput>make</userinput></screen>

<para>To test the results, issue:
<userinput>make check</userinput>. This takes a very long time, around
7 SBUs.</para>

<para>Now install the package:</para>

<screen><userinput>make install</userinput></screen>

</sect2>


<sect2 id="contents-gettext"><title>Contents of Gettext</title>

<para><emphasis>Installed programs</emphasis>: autopoint, config.charset,
config.rpath, envsubst, gettext, gettextize, hostname, msgattrib, msgcat,
msgcmp, msgcomm, msgconv, msgen, msgexec, msgfilter, msgfmt, msggrep, msginit,
msgmerge, msgunfmt, msguniq, ngettext, project-id, team-address, trigger,
urlget, user-email and xgettext</para>

<para><emphasis>Installed libraries</emphasis>: libasprintf[a,so],
libgettextlib[a,so], libgettextpo[a,so] and libgettextsrc[a,so]</para>

</sect2>

<sect2><title>Short descriptions</title>

<indexterm zone="ch-system-gettext autopoint"><primary sortas="b-autopoint">autopoint</primary></indexterm>
<para id="autopoint"><command>autopoint</command> copies standard gettext infrastructure
files into a source package.</para>

<indexterm zone="ch-system-gettext config.charset"><primary sortas="b-config.charset">config.charset</primary></indexterm>
<para id="config.charset"><command>config.charset</command> outputs a system-dependent table of
character encoding aliases.</para>

<indexterm zone="ch-system-gettext config.rpath"><primary sortas="b-config.rpath">config.rpath</primary></indexterm>
<para id="config.rpath"><command>config.rpath</command> outputs a system-dependent set of
variables, describing how to set the runtime search path of shared libraries in an
executable.</para>

<indexterm zone="ch-system-gettext envsubst"><primary sortas="b-envsubst">envsubst</primary></indexterm>
<para id="envsubst"><command>envsubst</command> substitutes environment variables in shell
format strings.</para>

<indexterm zone="ch-system-gettext gettext"><primary sortas="b-gettext">gettext</primary></indexterm>
<para id="gettext"><command>gettext</command> translates a natural language message into
the user's language, by looking up the translation in a message catalog.</para>

<indexterm zone="ch-system-gettext gettextize"><primary sortas="b-gettextize">gettextize</primary></indexterm>
<para id="gettextize"><command>gettextize</command> copies all standard Gettext files into
the given top-level directory of a package, to begin inter-nationalizing it.</para>

<indexterm zone="ch-system-gettext hostname-gettext"><primary sortas="b-hostname-gettext">hostname</primary></indexterm>
<para id="hostname-gettext"><command>hostname</command> displays a network hostname in various
forms.</para>

<indexterm zone="ch-system-gettext msgattrib"><primary sortas="b-msgattrib">msgattrib</primary></indexterm>
<para id="msgattrib"><command>msgattrib</command> filters the messages of a translation
catalog according to their attributes and manipulates the attributes.</para>

<indexterm zone="ch-system-gettext msgcat"><primary sortas="b-msgcat">msgcat</primary></indexterm>
<para id="msgcat"><command>msgcat</command> concatenates and merges the given
<filename>.po</filename> files.</para>

<indexterm zone="ch-system-gettext msgcmp"><primary sortas="b-msgcmp">msgcmp</primary></indexterm>
<para id="msgcmp"><command>msgcmp</command> compares two <filename>.po</filename>
files to check that both contain the same set of msgid strings.</para>

<indexterm zone="ch-system-gettext msgcomm"><primary sortas="b-msgcomm">msgcomm</primary></indexterm>
<para id="msgcomm"><command>msgcomm</command> finds the messages that are common to
to the given <filename>.po</filename> files.</para>

<indexterm zone="ch-system-gettext msgconv"><primary sortas="b-msgconv">msgconv</primary></indexterm>
<para id="msgconv"><command>msgconv</command> converts a translation catalog to a
different character encoding.</para>

<indexterm zone="ch-system-gettext msgen"><primary sortas="b-msgen">msgen</primary></indexterm>
<para id="msgen"><command>msgen</command> creates an English translation catalog.</para>

<indexterm zone="ch-system-gettext msgexec"><primary sortas="b-msgexec">msgexec</primary></indexterm>
<para id="msgexec"><command>msgexec</command> applies a command to all translations of a
translation catalog.</para>

<indexterm zone="ch-system-gettext msgfilter"><primary sortas="b-msgfilter">msgfilter</primary></indexterm>
<para id="msgfilter"><command>msgfilter</command> applies a filter to all translations of a
translation catalog.</para>

<indexterm zone="ch-system-gettext msgfmt"><primary sortas="b-msgfmt">msgfmt</primary></indexterm>
<para id="msgfmt"><command>msgfmt</command> generates a binary message catalog from
from a translation catalog.</para>

<indexterm zone="ch-system-gettext msggrep"><primary sortas="b-msggrep">msggrep</primary></indexterm>
<para id="msggrep"><command>msggrep</command> extracts all messages of a translation
catalog that match a given pattern or belong to some given source files.</para>

<indexterm zone="ch-system-gettext msginit"><primary sortas="b-msginit">msginit</primary></indexterm>
<para id="msginit"><command>msginit</command> creates a new <filename>.po</filename>
file, initializing the meta information with values from the user's
environment.</para>

<indexterm zone="ch-system-gettext msgmerge"><primary sortas="b-msgmerge">msgmerge</primary></indexterm>
<para id="msgmerge"><command>msgmerge</command> combines two raw translations into a
single file.</para>

<indexterm zone="ch-system-gettext msgunfmt"><primary sortas="b-msgunfmt">msgunfmt</primary></indexterm>
<para id="msgunfmt"><command>msgunfmt</command> decompiles a binary message catalog
into raw translation text.</para>

<indexterm zone="ch-system-gettext msguniq"><primary sortas="b-msguniq">msguniq</primary></indexterm>
<para id="msguniq"><command>msguniq</command> unifies duplicate translations in a
translation catalog.</para>

<indexterm zone="ch-system-gettext ngettext"><primary sortas="b-ngettext">ngettext</primary></indexterm>
<para id="ngettext"><command>ngettext</command> displays native language translations of a
textual message whose grammatical form depends on a number.</para>

<indexterm zone="ch-system-gettext xgettext"><primary sortas="b-xgettext">xgettext</primary></indexterm>
<para id="xgettext"><command>xgettext</command> extracts the translatable message lines
from the given source files, to make the first translation template.</para>

<indexterm zone="ch-system-gettext libasprintf"><primary sortas="c-libasprintf">libasprintf</primary></indexterm>
<para id="libasprintf"><command>libasprintf</command> defines the autosprintf class, which
makes C formatted output routines usable in C++ programs, for use with the
&lt;string&gt; strings and the &lt;iostream&gt; streams.</para>

<indexterm zone="ch-system-gettext libgettextlib"><primary sortas="c-libgettextlib">libgettextlib</primary></indexterm>
<para id="libgettextlib"><command>libgettextlib</command> is a private library containing
common routines used by the various gettext programs. They're not meant for
general use.</para>

<indexterm zone="ch-system-gettext libgettextpo"><primary sortas="c-libgettextpo">libgettextpo</primary></indexterm>
<para id="libgettextpo"><command>libgettextpo</command> is used to write specialized
programs that process PO files. This library is used when the standard
applications shipped with gettext won't suffice (such as msgcomm, msgcmp,
msgattrib and msgen).</para>

<indexterm zone="ch-system-gettext libgettextsrc"><primary sortas="c-libgettextsrc">libgettextsrc</primary></indexterm>
<para id="libgettextsrc"><command>libgettextsrc</command> is a private library containing
common routines used by the various gettext programs. They're not meant for
general use.</para>

</sect2>



</sect1>