1Notes on the GNU Translation Project 2************************************ 3 4 GNU is going international! The GNU Translation Project is a way to 5get maintainers, translators and users all together, so GNU will 6gradually become able to speak many native languages. A few packages 7already provide native language translation for their messages. 8 9 If you found this `ABOUT-NLS' file inside a GNU distribution, you 10may assume that the distributed package does use GNU `gettext' 11internally, itself available at your nearest GNU archive site. But you 12do not need to install GNU `gettext' prior to configuring, installing 13or using this 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 25One advise in advance 26===================== 27 28 If you want to exploit the full power of the GNU `gettext' package 29you should configure it using 30 31 --with-gnu-gettext. 32 33 No existing implementation at this point provides so many useful 34features (such as locale alias or message inheritance). It is also not 35possible to provide this additional functionality on top of a catgets 36implementation. 37 38 Future versions of GNU `gettext' will very likely provide even more 39functionality. So it might be a good idea to change to GNU `gettext' 40as soon as possible. 41 42INSTALL Matters 43=============== 44 45 Some GNU packages are "localizable" when properly installed; the 46programs they contain can be made to speak your own native language. 47Most such packages use GNU `gettext'. Other packages have their own 48ways to internationalization, predating GNU `gettext'. 49 50 By default, this package will be installed to allow translation of 51messages. It will automatically detect whether the system provides 52usable `catgets' or `gettext' functions. If neither is available, the 53GNU `gettext' own library will be used. However, installers may use 54special options at configuration time for changing this behaviour. The 55commands: 56 57 ./configure --with-gnu-gettext 58 ./configure --disable-nls 59 60will respectively bypass system `catgets' or `gettext' to use GNU 61`gettext', or else, totally disable translation of messages. 62 63 When you already have GNU `gettext' installed on your system and run 64configure without an option for your new package, configure will 65probably detect the previously built and installed `libintl.a' file and 66will decide to use this. This might be not what is desirable. You 67should use the more recent version of the GNU `gettext' library. I.e. 68if the file `intl/VERSION' shows that the library which comes with this 69package is more recent, you should use 70 71 ./configure --with-gnu-gettext 72 73to prevent auto-detection. 74 75 Internationalized packages have usually many `po/LL.po' files, where 76LL gives an ISO 639 two-letter code identifying the language. Unless 77translations are disabled, all those available are installed together 78with the package. However, the environment variable `LINGUAS' may be 79set, prior to configuration, to limit the installed set. `LINGUAS' 80should then contain a space separated list of two-letter codes, stating 81which languages are allowed. 82 83Using This Package 84================== 85 86 As a user, if your language has been installed for this package, you 87only have to set the `LANG' environment variable to the appropriate 88ISO 639 `LL' two-letter code prior to using the programs in the 89package. For example, let's suppose that you speak German. At the 90shell prompt, merely execute `setenv LANG de' (in `csh') or 91`export LANG; LANG=de' (in `sh'). This can be done from your `.login' 92or `.profile' file, once and for all. Packages which are not 93internationalized will merely ignore the setting of this variable. 94 95Translating Teams 96================= 97 98 The GNU `gettext' tool set contains *everything* maintainers need 99for internationalizing their packages for messages. It also contains 100quite useful tools for helping translators at localizing messages to 101their native language, once a package has already been 102internationalized. 103 104 To achieve the GNU Translation Project, we need many interested 105people who like their own language and write it well, and who are also 106able to synergize with other translators speaking the same language. 107Each translating team has its own mailing list, courtesy of Linux 108International. You may reach your translating team at the address 109`LL@li.org', replacing LL by the two-letter ISO 639 code for your 110language. Language codes are *not* the same as country codes given in 111ISO 3166. The following translating teams exist, as of November 1995: 112 113 Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en', 114 Esperanto `eo', Finnish `fi', French `fr', Irish `ga', German 115 `de', Greek `el', Italian `it', Japanese `ja', Indonesian `in', 116 Norwegian `no', Persian `fa', Polish `pl', Portuguese `pt', 117 Russian `ru', Spanish `es', Swedish `sv', Telugu `te' and Turkish 118 `tr'. 119 120For example, you may reach the Chinese translating team by writing to 121`zh@li.org'. 122 123 If you'd like to volunteer to *work* at translating messages, you 124should become a member of the translating team for your own language. 125The subscribing address is *not* the same as the list itself, it has 126`-request' appended. For example, Swedish people can send a message to 127`sv-request@li.org', having this message body: 128 129 subscribe 130 131 Keep in mind that team members should be interested in *working* at 132translations, or at solving translational difficulties, rather than 133merely lurking around. If your team does not exist yet and you want to 134start one, please write to `gnu-translation@prep.ai.mit.edu'; you will 135then reach the GNU coordinator for all translator teams. 136 137 The English team is special. It works at improving and uniformizing 138the terminology used in GNU. Proven linguistic skill are praised more 139than programming skill, here. For the time being, please avoid 140subscribing to the English team unless explicitely invited to do so. 141 142Available Packages 143================== 144 145 Languages are not equally supported in all GNU packages. The 146following matrix shows the current state of GNU internationalization, 147as of November 1995. Listed are: internationalized packages, and 148languages for which work is in progress, or about to start. 149 150 See note cs de en fr it ja nl no pt sv 151 \ .-------------------------------. 152 chess (1) | X / X | 153 clisp | X X X | 154 diffutils (2) | / . | 155 fileutils | . / | 156 flex (3) | / . | 157 m4 | - / - - . - | 158 gettext | X / X X X | 159 ptx | - / - - | 160 recode | - / - - - | 161 sh-utils | . / . | 162 sharutils | X / X X X X X | 163 tar | X / X - X X | 164 textutils | . / . | 165 wdiff | - - / - - | 166 `-------------------------------' 167 cs de en fr it ja nl no pt sv 168 169 The interpretation legend and notes are: 170 171`/' 172 There is no PO file, this package merely defaults to this language. 173 174`.' 175 The effort of localizing this package has been undertaken by 176 someone, or by a translating team, and work is, or should be in 177 progress. 178 179`-' 180 A PO file for this package and this language is completed and is 181 currently available in a pretest release, or is all ready for 182 inclusion in the next release of this package. 183 184`X' 185 The localization of this package to this particular language is 186 fully completed, and now distributed through an official release. 187 188(1) 189 This package is translated to specific languages by methods 190 predating GNU `gettext'. Translations are all kept on disk files, 191 and sources contain numbers where one normally expects strings. 192 193(2) 194 This package is planned to switch to GNU `gettext'. For the time 195 being, it uses temporary means for internationalization. 196 197(3) 198 This package has its translatable strings marked, but does not use 199 GNU `gettext'. A convenience patch may be available separately. 200 201 If November 1995 seems to be old, you may fetch a more recent copy 202of this `ABOUT-NLS' file on most GNU archive sites. 203 204