(file) Return to ABOUT-NLS CVS log (file) (dir) Up to [RizwankCVS] / testProject / source / src

  1 rizwank 1.1 Notes on the Free Translation Project
  2             *************************************
  3             
  4                Free software is going international!  The Free Translation Project
  5             is a way to get maintainers of free software, translators, and users all
  6             together, so that will gradually become able to speak many languages.
  7             A few packages already provide translations for their messages.
  8             
  9                If you found this `ABOUT-NLS' file inside a distribution, you may
 10             assume that the distributed package does use GNU `gettext' internally,
 11             itself available at your nearest GNU archive site.  But you do *not*
 12             need to install GNU `gettext' prior to configuring, installing or using
 13             this package with messages translated.
 14             
 15                Installers will find here some useful hints.  These notes also
 16             explain how users should proceed for getting the programs to use the
 17             available translations.  They tell how people wanting to contribute and
 18             work at translations should contact the appropriate team.
 19             
 20                When reporting bugs in the `intl/' directory or bugs which may be
 21             related to internationalization, you should tell about the version of
 22 rizwank 1.1 `gettext' which is used.  The information can be found in the
 23             `intl/VERSION' file, in internationalized packages.
 24             
 25             One advise in advance
 26             =====================
 27             
 28                If you want to exploit the full power of internationalization, you
 29             should configure it using
 30             
 31                  ./configure --with-included-gettext
 32             
 33             to force usage of internationalizing routines provided within this
 34             package, despite the existence of internationalizing capabilities in the
 35             operating system where this package is being installed.  So far, only
 36             the `gettext' implementation in the GNU C library version 2 provides as
 37             many features (such as locale alias or message inheritance) as the
 38             implementation here.  It is also not possible to offer this additional
 39             functionality on top of a `catgets' implementation.  Future versions of
 40             GNU `gettext' will very likely convey even more functionality.  So it
 41             might be a good idea to change to GNU `gettext' as soon as possible.
 42             
 43 rizwank 1.1    So you need not provide this option if you are using GNU libc 2 or
 44             you have installed a recent copy of the GNU gettext package with the
 45             included `libintl'.
 46             
 47             INSTALL Matters
 48             ===============
 49             
 50                Some packages are "localizable" when properly installed; the
 51             programs they contain can be made to speak your own native language.
 52             Most such packages use GNU `gettext'.  Other packages have their own
 53             ways to internationalization, predating GNU `gettext'.
 54             
 55                By default, this package will be installed to allow translation of
 56             messages.  It will automatically detect whether the system provides
 57             usable `catgets' (if using this is selected by the installer) or
 58             `gettext' functions.  If neither is available, the GNU `gettext' own
 59             library will be used.  This library is wholly contained within this
 60             package, usually in the `intl/' subdirectory, so prior installation of
 61             the GNU `gettext' package is *not* required.  Installers may use
 62             special options at configuration time for changing the default
 63             behaviour.  The commands:
 64 rizwank 1.1 
 65                  ./configure --with-included-gettext
 66                  ./configure --with-catgets
 67                  ./configure --disable-nls
 68             
 69             will respectively bypass any pre-existing `catgets' or `gettext' to use
 70             the internationalizing routines provided within this package, enable
 71             the use of the `catgets' functions (if found on the locale system), or
 72             else, *totally* disable translation of messages.
 73             
 74                When you already have GNU `gettext' installed on your system and run
 75             configure without an option for your new package, `configure' will
 76             probably detect the previously built and installed `libintl.a' file and
 77             will decide to use this.  This might be not what is desirable.  You
 78             should use the more recent version of the GNU `gettext' library.  I.e.
 79             if the file `intl/VERSION' shows that the library which comes with this
 80             package is more recent, you should use
 81             
 82                  ./configure --with-included-gettext
 83             
 84             to prevent auto-detection.
 85 rizwank 1.1 
 86                By default the configuration process will not test for the `catgets'
 87             function and therefore they will not be used.  The reasons are already
 88             given above: the emulation on top of `catgets' cannot provide all the
 89             extensions provided by the GNU `gettext' library.  If you nevertheless
 90             want to use the `catgets' functions use
 91             
 92                  ./configure --with-catgets
 93             
 94             to enable the test for `catgets' (this causes no harm if `catgets' is
 95             not available on your system).  If you really select this option we
 96             would like to hear about the reasons because we cannot think of any
 97             good one ourself.
 98             
 99                Internationalized packages have usually many `po/LL.po' files, where
100             LL gives an ISO 639 two-letter code identifying the language.  Unless
101             translations have been forbidden at `configure' time by using the
102             `--disable-nls' switch, all available translations are installed
103             together with the package.  However, the environment variable `LINGUAS'
104             may be set, prior to configuration, to limit the installed set.
105             `LINGUAS' should then contain a space separated list of two-letter
106 rizwank 1.1 codes, stating which languages are allowed.
107             
108             Using This Package
109             ==================
110             
111                As a user, if your language has been installed for this package, you
112             only have to set the `LANG' environment variable to the appropriate
113             ISO 639 `LL' two-letter code prior to using the programs in the
114             package.  For example, let's suppose that you speak German.  At the
115             shell prompt, merely execute `setenv LANG de' (in `csh'),
116             `export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash').  This
117             can be done from your `.login' or `.profile' file, once and for all.
118             
119                An operating system might already offer message localization for
120             many of its programs, while other programs have been installed locally
121             with the full capabilities of GNU `gettext'.  Just using `gettext'
122             extended syntax for `LANG' would break proper localization of already
123             available operating system programs.  In this case, users should set
124             both `LANGUAGE' and `LANG' variables in their environment, as programs
125             using GNU `gettext' give preference to `LANGUAGE'.  For example, some
126             Swedish users would rather read translations in German than English for
127 rizwank 1.1 when Swedish is not available.  This is easily accomplished by setting
128             `LANGUAGE' to `sv:de' while leaving `LANG' to `sv'.
129             
130             Translating Teams
131             =================
132             
133                For the Free Translation Project to be a success, we need interested
134             people who like their own language and write it well, and who are also
135             able to synergize with other translators speaking the same language.
136             Each translation team has its own mailing list, courtesy of Linux
137             International.  You may reach your translation team at the address
138             `LL@li.org', replacing LL by the two-letter ISO 639 code for your
139             language.  Language codes are *not* the same as the country codes given
140             in ISO 3166.  The following translation teams exist, as of December
141             1997:
142             
143                  Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en',
144                  Esperanto `eo', Finnish `fi', French `fr', German `de', Hungarian
145                  `hu', Irish `ga', Italian `it', Indonesian `id', Japanese `ja',
146                  Korean `ko', Latin `la', Norwegian `no', Persian `fa', Polish
147                  `pl', Portuguese `pt', Russian `ru', Slovenian `sl', Spanish `es',
148 rizwank 1.1      Swedish `sv', and Turkish `tr'.
149             
150             For example, you may reach the Chinese translation team by writing to
151             `zh@li.org'.
152             
153                If you'd like to volunteer to *work* at translating messages, you
154             should become a member of the translating team for your own language.
155             The subscribing address is *not* the same as the list itself, it has
156             `-request' appended.  For example, speakers of Swedish can send a
157             message to `sv-request@li.org', having this message body:
158             
159                  subscribe
160             
161                Keep in mind that team members are expected to participate
162             *actively* in translations, or at solving translational difficulties,
163             rather than merely lurking around.  If your team does not exist yet and
164             you want to start one, or if you are unsure about what to do or how to
165             get started, please write to `translation@iro.umontreal.ca' to reach the
166             coordinator for all translator teams.
167             
168                The English team is special.  It works at improving and uniformizing
169 rizwank 1.1 the terminology in use.  Proven linguistic skill are praised more than
170             programming skill, here.
171             
172             Available Packages
173             ==================
174             
175                Languages are not equally supported in all packages.  The following
176             matrix shows the current state of internationalization, as of December
177             1997.  The matrix shows, in regard of each package, for which languages
178             PO files have been submitted to translation coordination.
179             
180                  Ready PO files    cs da de en es fi fr it ja ko nl no pl pt ru sl sv
181                                  .----------------------------------------------------.
182                  bash            |       []          []          []                   |  3
183                  bison           |       []          []          []                   |  3
184                  clisp           |       [] [] []    []                               |  4
185                  cpio            |       []    []    []       [] []    []             |  6
186                  diffutils       |       []    []    []                []          [] |  5
187                  enscript        |       []    [] [] []          []             []    |  6
188                  fileutils       | []    []    []    []       [] []    [] []    [] [] | 10
189                  findutils       |       []    []    [] []    [] []    []    []    [] |  9
190 rizwank 1.1      flex            |             []    []       []                   [] |  4
191                  gcal            |       []          []          []    []          [] |  5
192                  gettext         |    [] []    []    []       [] [] [] [] []    [] [] | 12
193                  grep            |       []    []    []       [] [] [] []    [] [] [] | 10
194                  hello           |    [] []    []    []       [] [] [] [] []    [] [] | 11
195                  id-utils        |       []          []                []             |  3
196                  indent          |    [] []                   []       []    []       |  5
197                  libc            |       []    []    []       [] []    []          [] |  7
198                  m4              |       []          []    []    []          []    [] |  6
199                  make            |       []    []    []       [] []    []             |  6
200                  music           |                   []                []             |  2
201                  ptx             |       []    []    []          [] [] [] []       [] |  8
202                  recode          |    [] []    []    []          []    [] []    [] [] |  9
203                  sh-utils        |       []    []    []          [] [] [] []       [] |  8
204                  sharutils       | []    []    []    []          []                [] |  6
205                  tar             | []    []          [] []    [] [] [] [] []    [] [] | 11
206                  texinfo         | []    []          []                               |  3
207                  textutils       | []    []    []    []       [] [] [] []          [] |  9
208                  wdiff           | []    []    []    []          [] [] []          [] |  8
209                                  `----------------------------------------------------'
210                    17 languages    cs da de en es fi fr it ja ko nl no pl pt ru sl sv
211 rizwank 1.1        27 packages      6  4 25  1 18  1 26  2  1 12 20  9 19  7  4  7 17  179
212             
213                Some counters in the preceding matrix are higher than the number of
214             visible blocks let us expect.  This is because a few extra PO files are
215             used for implementing regional variants of languages, or language
216             dialects.
217             
218                For a PO file in the matrix above to be effective, the package to
219             which it applies should also have been internationalized and
220             distributed as such by its maintainer.  There might be an observable
221             lag between the mere existence a PO file and its wide availability in a
222             distribution.
223             
224                If December 1997 seems to be old, you may fetch a more recent copy
225             of this `ABOUT-NLS' file on most GNU archive sites.
226             

Rizwan Kassim
Powered by
ViewCVS 0.9.2