source: trunk/third/libiconv/ABOUT-NLS @ 20454

Revision 20454, 28.6 KB checked in by ghudson, 21 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r20453, which included commits to RCS files with non-trunk default branches.
Line 
1Notes on the Free Translation Project
2*************************************
3
4   Free software is going international!  The Free Translation Project
5is a way to get maintainers of free software, translators, and users all
6together, so that will gradually become able to speak many languages.
7A few packages already provide translations for their messages.
8
9   If you found this `ABOUT-NLS' file inside a distribution, you may
10assume that the distributed package does use GNU `gettext' internally,
11itself available at your nearest GNU archive site.  But you do _not_
12need to install GNU `gettext' prior to configuring, installing or using
13this package with messages translated.
14
15   Installers will find here some useful hints.  These notes also
16explain how users should proceed for getting the programs to use the
17available translations.  They tell how people wanting to contribute and
18work at translations should contact the appropriate team.
19
20   When reporting bugs in the `intl/' directory or bugs which may be
21related to internationalization, you should tell about the version of
22`gettext' which is used.  The information can be found in the
23`intl/VERSION' file, in internationalized packages.
24
25Quick configuration advice
26==========================
27
28   If you want to exploit the full power of internationalization, you
29should configure it using
30
31     ./configure --with-included-gettext
32
33to force usage of internationalizing routines provided within this
34package, despite the existence of internationalizing capabilities in the
35operating system where this package is being installed.  So far, only
36the `gettext' implementation in the GNU C library version 2 provides as
37many features (such as locale alias, message inheritance, automatic
38charset conversion or plural form handling) as the implementation here.
39It is also not possible to offer this additional functionality on top
40of a `catgets' implementation.  Future versions of GNU `gettext' will
41very likely convey even more functionality.  So it might be a good idea
42to change to GNU `gettext' as soon as possible.
43
44   So you need _not_ provide this option if you are using GNU libc 2 or
45you have installed a recent copy of the GNU gettext package with the
46included `libintl'.
47
48INSTALL Matters
49===============
50
51   Some packages are "localizable" when properly installed; the
52programs they contain can be made to speak your own native language.
53Most such packages use GNU `gettext'.  Other packages have their own
54ways to internationalization, predating GNU `gettext'.
55
56   By default, this package will be installed to allow translation of
57messages.  It will automatically detect whether the system already
58provides the GNU `gettext' functions.  If not, the GNU `gettext' own
59library will be used.  This library is wholly contained within this
60package, usually in the `intl/' subdirectory, so prior installation of
61the GNU `gettext' package is _not_ required.  Installers may use
62special options at configuration time for changing the default
63behaviour.  The commands:
64
65     ./configure --with-included-gettext
66     ./configure --disable-nls
67
68will respectively bypass any pre-existing `gettext' to use the
69internationalizing routines provided within this package, or else,
70_totally_ disable translation of messages.
71
72   When you already have GNU `gettext' installed on your system and run
73configure without an option for your new package, `configure' will
74probably detect the previously built and installed `libintl.a' file and
75will decide to use this.  This might be not what is desirable.  You
76should use the more recent version of the GNU `gettext' library.  I.e.
77if the file `intl/VERSION' shows that the library which comes with this
78package is more recent, you should use
79
80     ./configure --with-included-gettext
81
82to prevent auto-detection.
83
84   The configuration process will not test for the `catgets' function
85and therefore it will not be used.  The reason is that even an
86emulation of `gettext' on top of `catgets' could not provide all the
87extensions of the GNU `gettext' library.
88
89   Internationalized packages have usually many `po/LL.po' files, where
90LL gives an ISO 639 two-letter code identifying the language.  Unless
91translations have been forbidden at `configure' time by using the
92`--disable-nls' switch, all available translations are installed
93together with the package.  However, the environment variable `LINGUAS'
94may be set, prior to configuration, to limit the installed set.
95`LINGUAS' should then contain a space separated list of two-letter
96codes, stating which languages are allowed.
97
98Using This Package
99==================
100
101   As a user, if your language has been installed for this package, you
102only have to set the `LANG' environment variable to the appropriate
103`LL_CC' combination.  Here `LL' is an ISO 639 two-letter language code,
104and `CC' is an ISO 3166 two-letter country code.  For example, let's
105suppose that you speak German and live in Germany.  At the shell
106prompt, merely execute `setenv LANG de_DE' (in `csh'),
107`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash').
108This can be done from your `.login' or `.profile' file, once and for
109all.
110
111   You might think that the country code specification is redundant.
112But in fact, some languages have dialects in different countries.  For
113example, `de_AT' is used for Austria, and `pt_BR' for Brazil.  The
114country code serves to distinguish the dialects.
115
116   The locale naming convention of `LL_CC', with `LL' denoting the
117language and `CC' denoting the country, is the one use on systems based
118on GNU libc.  On other systems, some variations of this scheme are
119used, such as `LL' or `LL_CC.ENCODING'.  You can get the list of
120locales supported by your system for your country by running the command
121`locale -a | grep '^LL''.
122
123   Not all programs have translations for all languages.  By default, an
124English message is shown in place of a nonexistent translation.  If you
125understand other languages, you can set up a priority list of languages.
126This is done through a different environment variable, called
127`LANGUAGE'.  GNU `gettext' gives preference to `LANGUAGE' over `LANG'
128for the purpose of message handling, but you still need to have `LANG'
129set to the primary language; this is required by other parts of the
130system libraries.  For example, some Swedish users who would rather
131read translations in German than English for when Swedish is not
132available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'.
133
134   In the `LANGUAGE' environment variable, but not in the `LANG'
135environment variable, `LL_CC' combinations can be abbreviated as `LL'
136to denote the language's main dialect.  For example, `de' is equivalent
137to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT'
138(Portuguese as spoken in Portugal) in this context.
139
140Translating Teams
141=================
142
143   For the Free Translation Project to be a success, we need interested
144people who like their own language and write it well, and who are also
145able to synergize with other translators speaking the same language.
146Each translation team has its own mailing list.  The up-to-date list of
147teams can be found at the Free Translation Project's homepage,
148`http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams"
149area.
150
151   If you'd like to volunteer to _work_ at translating messages, you
152should become a member of the translating team for your own language.
153The subscribing address is _not_ the same as the list itself, it has
154`-request' appended.  For example, speakers of Swedish can send a
155message to `sv-request@li.org', having this message body:
156
157     subscribe
158
159   Keep in mind that team members are expected to participate
160_actively_ in translations, or at solving translational difficulties,
161rather than merely lurking around.  If your team does not exist yet and
162you want to start one, or if you are unsure about what to do or how to
163get started, please write to `translation@iro.umontreal.ca' to reach the
164coordinator for all translator teams.
165
166   The English team is special.  It works at improving and uniformizing
167the terminology in use.  Proven linguistic skill are praised more than
168programming skill, here.
169
170Available Packages
171==================
172
173   Languages are not equally supported in all packages.  The following
174matrix shows the current state of internationalization, as of February
1752003.  The matrix shows, in regard of each package, for which languages
176PO files have been submitted to translation coordination, with a
177translation percentage of at least 50%.
178
179     Ready PO files    az be bg ca cs da de el en en_GB eo es et fa fi
180                     +-------------------------------------------------+
181     a2ps            |                [] [] []                []    [] |
182     aegis           |                   ()                            |
183     anubis          |                                                 |
184     ap-utils        |                                                 |
185     bash            |                   []             [] []          |
186     batchelor       |                                                 |
187     bfd             |                []                   []          |
188     binutils        |                []                   []          |
189     bison           |                [] []                [] []       |
190     clisp           |                   []    []          []          |
191     clisp           |                                                 |
192     coreutils       |                [] []                [] []       |
193     cpio            |                [] []                []          |
194     darkstat        |                ()                   []          |
195     diffutils       |          [] [] [] []             [] []       [] |
196     enscript        |          []    [] []                            |
197     error           |                   []        []      []       [] |
198     fetchmail       |          [] () [] []                []          |
199     fileutils       |                [] []                [] []       |
200     findutils       |          []    [] []             [] [] []    [] |
201     flex            |          []    [] []                []          |
202     gas             |                                     []          |
203     gawk            |                [] []                []          |
204     gcal            |          []                                     |
205     gcc             |                []                   []          |
206     gettext         |    []    []    [] []                []          |
207     gimp-print      |                                                 |
208     gliv            |                                                 |
209     gnucash         |                [] ()                            |
210     gnucash-glossary|                [] ()                []          |
211     gnupg           |          []       [] []          [] [] []    [] |
212     gpe-todo        |                                                 |
213     gphoto2         |                   []                []          |
214     gprof           |                []                   []          |
215     gpsdrive        |                () ()    ()          ()          |
216     grep            |       [] []       [] []             [] []    [] |
217     gretl           |                                     []          |
218     hello           |          []    [] [] []          [] [] [] [] [] |
219     id-utils        |                [] []                            |
220     indent          |          []       []             [] [] []    [] |
221     jpilot          |             () [] []                []          |
222     jwhois          |                                     []          |
223     kbd             |                [] []                []          |
224     ld              |                []                   []          |
225     libc            |          [] [] [] [] []             []       [] |
226     libgpewidget    |                                                 |
227     libiconv        |          []    [] []             [] []       [] |
228     lifelines       |                [] ()                            |
229     lilypond        |                []                               |
230     lingoteach      |                []                               |
231     lingoteach_lessons|                   ()                ()          |
232     lynx            |          [] [] [] []                   []       |
233     m4              |             [] [] [] []                         |
234     mailutils       |          []                         []          |
235     make            |                [] []                []          |
236     man-db          |          [] ()    []                ()          |
237     mysecretdiary   |                [] []                []          |
238     nano            |          [] () [] []                []          |
239     nano_1_0        |          [] () [] []                []          |
240     opcodes         |                []                   []          |
241     parted          |          []    [] []                []          |
242     ptx             |          []    [] []             [] [] []    [] |
243     python          |                                                 |
244     radius          |                                                 |
245     recode          |                [] [] []          [] []          |
246     sed             |          []    [] []             [] [] []       |
247     sh-utils        |                   []                [] []    [] |
248     sharutils       |          [] [] [] [] []             [] []       |
249     sketch          |                [] ()                []          |
250     soundtracker    |                [] []                []          |
251     sp              |                   []                            |
252     tar             |             [] [] []                [] []    [] |
253     texinfo         |             [] [] []             []             |
254     textutils       |          []    [] []                []          |
255     tin             |                   ()        ()         []       |
256     util-linux      |          [] [] [] []                [] []    [] |
257     vorbis-tools    |                []                   []          |
258     wastesedge      |                   ()                            |
259     wdiff           |          []    [] []                [] []       |
260     wget            |       [] [] [] [] [] []             [] []    [] |
261     xchat           |                                                 |
262     xpad            |                                                 |
263                     +-------------------------------------------------+
264                       az be bg ca cs da de el en en_GB eo es et fa fi
265                        0  1  2 26  9 49 46  9  1   1   11 52 19  1 15
266     
267                       fr gl he hr hu id it ja ko lg lv ms nb nl
268                     +-------------------------------------------+
269     a2ps            | []                ()    ()       []    [] |
270     aegis           |                                        () |
271     anubis          | []                               []       |
272     ap-utils        | []                                        |
273     bash            | []          []                            |
274     batchelor       |                                           |
275     bfd             | []                   []                   |
276     binutils        | []                   []                   |
277     bison           | []             [] []                   [] |
278     clisp           | []                                     [] |
279     clisp           |                                           |
280     coreutils       | []                [] []                   |
281     cpio            | [] []       []          []             [] |
282     darkstat        | ()          []                   []    [] |
283     diffutils       | [] [] []    [] []    []                   |
284     enscript        | []       []                            [] |
285     error           | []          []                         [] |
286     fetchmail       |                      []                   |
287     fileutils       | []          []    [] []                   |
288     findutils       | [] []    [] [] [] [] [] []             [] |
289     flex            | []                      []                |
290     gas             | []                                        |
291     gawk            | []    []                                  |
292     gcal            | []                                        |
293     gcc             | []                                        |
294     gettext         | []                   [] []                |
295     gimp-print      |                                           |
296     gliv            | ()                                        |
297     gnucash         | []          []    []                      |
298     gnucash-glossary|                   []                   [] |
299     gnupg           | [] []          [] [] []                   |
300     gpe-todo        |                                           |
301     gphoto2         | []          []       []                   |
302     gprof           | []             []                         |
303     gpsdrive        | ()          []    ()                   () |
304     grep            | [] [] [] [] [] [] [] []                   |
305     gretl           | []                                        |
306     hello           | [] [] [] [] [] [] [] [] []    [] [] [] [] |
307     id-utils        | []          []                         [] |
308     indent          | [] []       []    [] []                [] |
309     jpilot          | []                   ()                () |
310     jwhois          | []          [] []                      [] |
311     kbd             | []                                        |
312     ld              | []                                        |
313     libc            | [] []       []       [] []          []    |
314     libgpewidget    |                                           |
315     libiconv        | [] []    [] [] [] []                      |
316     lifelines       | ()                                        |
317     lilypond        | []                                     [] |
318     lingoteach      |                []                         |
319     lingoteach_lessons|                                           |
320     lynx            |             []    [] []                [] |
321     m4              | [] []          []    []                [] |
322     mailutils       |                                           |
323     make            | [] [] [] []          [] []             [] |
324     man-db          | []                () ()                   |
325     mysecretdiary   | []             []                         |
326     nano            | [] []          [] []             []    [] |
327     nano_1_0        | [] []          [] []             [] []    |
328     opcodes         | []             []                      [] |
329     parted          | [] []                []                   |
330     ptx             | [] []       [] []                   [] [] |
331     python          |                                           |
332     radius          |                                           |
333     recode          | [] [] []       [] []                      |
334     sed             | [] []          [] [] []                   |
335     sh-utils        | []          []    [] []             []    |
336     sharutils       | [] []       []       []                [] |
337     sketch          | []                                        |
338     soundtracker    | [] []    []                               |
339     sp              | []                   ()                   |
340     tar             | [] []    [] [] [] [] []          [] []    |
341     texinfo         | []    [] []          []                   |
342     textutils       | [] []       []       [] []          []    |
343     tin             |                                           |
344     util-linux      | []          []    () []                [] |
345     vorbis-tools    |                                        [] |
346     wastesedge      | ()                                        |
347     wdiff           | [] []       [] []                []       |
348     wget            | [] [] [] [] []       []                [] |
349     xchat           |                                           |
350     xpad            |                                           |
351                     +-------------------------------------------+
352                       fr gl he hr hu id it ja ko lg lv ms nb nl
353                       59 23  8 10 26 20 18 26  8  0  1  8  7 24
354     
355                       nn no pl pt pt_BR ro ru sk sl sv tr uk zh_CN zh_TW
356                     +----------------------------------------------------+
357     a2ps            |    () () ()  []      []    [] [] [] []             | 14
358     aegis           |                      ()                            |  0
359     anubis          |                                  [] []             |  4
360     ap-utils        |       ()                            ()             |  1
361     bash            |              []      []                            |  7
362     batchelor       |                                                    |  0
363     bfd             |                               [] []                |  6
364     binutils        |                               [] []                |  6
365     bison           |              []      []       []                   | 11
366     clisp           |                                                    |  5
367     clisp           |                                                    |  0
368     coreutils       |                      []    [] [] []           []   | 12
369     cpio            |       []     []      []       []        []         | 13
370     darkstat        |              []               []        ()    ()   |  6
371     diffutils       |       []     []      []       [] []           []   | 19
372     enscript        |              []      []       [] []                | 10
373     error           |              []         []       []           []   | 11
374     fetchmail       |       ()     ()                  []                |  6
375     fileutils       |                      []    [] [] []     []    []   | 14
376     findutils       |       []     []      [] [] [] [] []     []         | 24
377     flex            |              []      []       [] []                | 10
378     gas             |                                  []                |  3
379     gawk            |                               [] []                |  7
380     gcal            |                               [] []                |  4
381     gcc             |                                  []                |  4
382     gettext         |                      [] [] [] [] []           []   | 14
383     gimp-print      |                                                    |  0
384     gliv            |              []                                    |  1
385     gnucash         |          []  []         []    []              []   |  9
386     gnucash-glossary|          []             []    []              []   |  8
387     gnupg           |       []                      [] []           []   | 16
388     gpe-todo        |                                                    |  0
389     gphoto2         |                               []        []         |  7
390     gprof           |              []               [] []                |  7
391     gpsdrive        |                         []    []                   |  3
392     grep            |       []     []      []    []    []                | 20
393     gretl           |                                                    |  2
394     hello           | [] [] []     []      [] []    [] [] []             | 31
395     id-utils        |              []      []       [] []                |  9
396     indent          |              []      [] []    [] []                | 17
397     jpilot          |    ()                         [] []     []    []   |  8
398     jwhois          |              []      ()       () []           []   |  8
399     kbd             |                               [] []                |  6
400     ld              |                               [] []                |  5
401     libc            |    [] []     []         []    [] []     []         | 20
402     libgpewidget    |                                                    |  0
403     libiconv        |              []      [] [] [] [] []                | 18
404     lifelines       |                               []                   |  2
405     lilypond        |                               []                   |  4
406     lingoteach      |              []               []                   |  4
407     lingoteach_lessons|                                         ()         |  0
408     lynx            |              []      []       [] []                | 13
409     m4              |       []     []      []       []                   | 13
410     mailutils       |                                                    |  2
411     make            |              []      []       [] []     []         | 15
412     man-db          |                               []                   |  4
413     mysecretdiary   |              []               [] []                |  8
414     nano            |       []                      []    []             | 13
415     nano_1_0        | []    []             []       []    []             | 15
416     opcodes         |              []               [] []                |  8
417     parted          | []       []  []               [] []                | 12
418     ptx             |    [] [] []  []      []       [] []                | 20
419     python          |                                                    |  0
420     radius          |                                                    |  0
421     recode          |       []     []      []    [] [] []                | 16
422     sed             |              []         [] [] [] []                | 16
423     sh-utils        |                      []    []    []                | 12
424     sharutils       |                      []       [] []           []   | 16
425     sketch          |              []               []                   |  5
426     soundtracker    |                               []                   |  7
427     sp              |                                  []                |  3
428     tar             |    [] []     []   []    [] [] [] []     []         | 24
429     texinfo         |                      []       [] []     []         | 12
430     textutils       |                      []    [] [] []           []   | 15
431     tin             |                                                    |  1
432     util-linux      |              []               [] []                | 14
433     vorbis-tools    |                      []                            |  4
434     wastesedge      |                                                    |  0
435     wdiff           |              []      [] []    [] []                | 15
436     wget            |       []             [] [] [] [] [] []        []   | 24
437     xchat           |                                                    |  0
438     xpad            |                                                    |  0
439                     +----------------------------------------------------+
440       43 teams        nn no pl pt pt_BR ro ru sk sl sv tr uk zh_CN zh_TW
441       82 domains       3  4 14  4  34    1 29 14 13 53 46  6   9    13    723
442
443   Some counters in the preceding matrix are higher than the number of
444visible blocks let us expect.  This is because a few extra PO files are
445used for implementing regional variants of languages, or language
446dialects.
447
448   For a PO file in the matrix above to be effective, the package to
449which it applies should also have been internationalized and
450distributed as such by its maintainer.  There might be an observable
451lag between the mere existence a PO file and its wide availability in a
452distribution.
453
454   If February 2003 seems to be old, you may fetch a more recent copy
455of this `ABOUT-NLS' file on most GNU archive sites.  The most
456up-to-date matrix with full percentage details can be found at
457`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.
458
459Using `gettext' in new packages
460===============================
461
462   If you are writing a freely available program and want to
463internationalize it you are welcome to use GNU `gettext' in your
464package.  Of course you have to respect the GNU Library General Public
465License which covers the use of the GNU `gettext' library.  This means
466in particular that even non-free programs can use `libintl' as a shared
467library, whereas only free software can use `libintl' as a static
468library or use modified versions of `libintl'.
469
470   Once the sources are changed appropriately and the setup can handle
471the use of `gettext' the only thing missing are the translations.  The
472Free Translation Project is also available for packages which are not
473developed inside the GNU project.  Therefore the information given above
474applies also for every other Free Software Project.  Contact
475`translation@iro.umontreal.ca' to make the `.pot' files available to
476the translation teams.
477
Note: See TracBrowser for help on using the repository browser.