]>
Commit | Line | Data |
---|---|---|
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 Translator's View</TITLE> | |
7 | <link href="gettext_10.html" rel=Next> | |
8 | <link href="gettext_8.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_8.html">previous</A>, <A HREF="gettext_10.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="SEC56" HREF="gettext_toc.html#TOC56">The Translator's View</A></H1> | |
18 | ||
19 | ||
20 | ||
21 | <H2><A NAME="SEC57" HREF="gettext_toc.html#TOC57">Introduction 0</A></H2> | |
22 | ||
23 | <P> | |
24 | GNU is going international! The Translation Project is a way | |
25 | to get maintainers, translators and users all together, so GNU will | |
26 | gradually become able to speak many native languages. | |
27 | ||
28 | </P> | |
29 | <P> | |
30 | The GNU <CODE>gettext</CODE> tool set contains <EM>everything</EM> maintainers | |
31 | need for internationalizing their packages for messages. It also | |
32 | contains quite useful tools for helping translators at localizing | |
33 | messages to their native language, once a package has already been | |
34 | internationalized. | |
35 | ||
36 | </P> | |
37 | <P> | |
38 | To achieve the Translation Project, we need many interested | |
39 | people who like their own language and write it well, and who are also | |
40 | able to synergize with other translators speaking the same language. | |
41 | If you'd like to volunteer to <EM>work</EM> at translating messages, | |
42 | please send mail to your translating team. | |
43 | ||
44 | </P> | |
45 | <P> | |
46 | Each team has its own mailing list, courtesy of Linux | |
47 | International. You may reach your translating team at the address | |
48 | <TT>`<VAR>ll</VAR>@li.org'</TT>, replacing <VAR>ll</VAR> by the two-letter ISO 639 | |
49 | code for your language. Language codes are <EM>not</EM> the same as | |
50 | country codes given in ISO 3166. The following translating teams | |
51 | exist: | |
52 | ||
53 | </P> | |
54 | ||
55 | <BLOCKQUOTE> | |
56 | <P> | |
57 | Chinese <CODE>zh</CODE>, Czech <CODE>cs</CODE>, Danish <CODE>da</CODE>, Dutch <CODE>nl</CODE>, | |
58 | Esperanto <CODE>eo</CODE>, Finnish <CODE>fi</CODE>, French <CODE>fr</CODE>, Irish | |
59 | <CODE>ga</CODE>, German <CODE>de</CODE>, Greek <CODE>el</CODE>, Italian <CODE>it</CODE>, | |
60 | Japanese <CODE>ja</CODE>, Indonesian <CODE>in</CODE>, Norwegian <CODE>no</CODE>, Polish | |
61 | <CODE>pl</CODE>, Portuguese <CODE>pt</CODE>, Russian <CODE>ru</CODE>, Spanish <CODE>es</CODE>, | |
62 | Swedish <CODE>sv</CODE> and Turkish <CODE>tr</CODE>. | |
63 | </BLOCKQUOTE> | |
64 | ||
65 | <P> | |
66 | For example, you may reach the Chinese translating team by writing to | |
67 | <TT>`zh@li.org'</TT>. When you become a member of the translating team | |
68 | for your own language, you may subscribe to its list. For example, | |
69 | Swedish people can send a message to <TT>`sv-request@li.org'</TT>, | |
70 | having this message body: | |
71 | ||
72 | </P> | |
73 | ||
74 | <PRE> | |
75 | subscribe | |
76 | </PRE> | |
77 | ||
78 | <P> | |
79 | Keep in mind that team members should be interested in <EM>working</EM> | |
80 | at translations, or at solving translational difficulties, rather than | |
81 | merely lurking around. If your team does not exist yet and you want to | |
82 | start one, please write to <TT>`gnu-translation@prep.ai.mit.edu'</TT>; | |
83 | you will then reach the GNU coordinator for all translator teams. | |
84 | ||
85 | </P> | |
86 | <P> | |
87 | A handful of GNU packages have already been adapted and provided | |
88 | with message translations for several languages. Translation | |
89 | teams have begun to organize, using these packages as a starting | |
90 | point. But there are many more packages and many languages for | |
91 | which we have no volunteer translators. If you would like to | |
92 | volunteer to work at translating messages, please send mail to | |
93 | <TT>`gnu-translation@prep.ai.mit.edu'</TT> indicating what language(s) | |
94 | you can work on. | |
95 | ||
96 | </P> | |
97 | ||
98 | ||
99 | <H2><A NAME="SEC58" HREF="gettext_toc.html#TOC58">Introduction 1</A></H2> | |
100 | ||
101 | <P> | |
102 | This is now official, GNU is going international! Here is the | |
103 | announcement submitted for the January 1995 GNU Bulletin: | |
104 | ||
105 | </P> | |
106 | ||
107 | <BLOCKQUOTE> | |
108 | <P> | |
109 | A handful of GNU packages have already been adapted and provided | |
110 | with message translations for several languages. Translation | |
111 | teams have begun to organize, using these packages as a starting | |
112 | point. But there are many more packages and many languages | |
113 | for which we have no volunteer translators. If you'd like to | |
114 | volunteer to work at translating messages, please send mail to | |
115 | <SAMP>`gnu-translation@prep.ai.mit.edu'</SAMP> indicating what language(s) | |
116 | you can work on. | |
117 | </BLOCKQUOTE> | |
118 | ||
119 | <P> | |
120 | This document should answer many questions for those who are curious | |
121 | about the process or would like to contribute. Please at least skim | |
122 | over it, hoping to cut down a little of the high volume of e-mail | |
123 | generated by this collective effort towards GNU internationalization. | |
124 | ||
125 | </P> | |
126 | <P> | |
127 | Most free programming which is widely shared is done in English, and | |
128 | currently, English is used as the main communicating language between | |
129 | national communities collaborating to the GNU project. This very document | |
130 | is written in English. This will not change in the foreseeable future. | |
131 | ||
132 | </P> | |
133 | <P> | |
134 | However, there is a strong appetite from national communities for | |
135 | having more software able to write using national language and habits, | |
136 | and there is an on-going effort to modify GNU software in such a way | |
137 | that it becomes able to do so. The experiments driven so far raised | |
138 | an enthusiastic response from pretesters, so we believe that GNU | |
139 | internationalization is dedicated to succeed. | |
140 | ||
141 | </P> | |
142 | <P> | |
143 | For suggestion clarifications, additions or corrections to this | |
144 | document, please e-mail to <TT>`gnu-translation@prep.ai.mit.edu'</TT>. | |
145 | ||
146 | </P> | |
147 | ||
148 | ||
149 | <H2><A NAME="SEC59" HREF="gettext_toc.html#TOC59">Discussions</A></H2> | |
150 | ||
151 | <P> | |
152 | Facing this internationalization effort, a few users expressed their | |
153 | concerns. Some of these doubts are presented and discussed, here. | |
154 | ||
155 | </P> | |
156 | ||
157 | <UL> | |
158 | <LI>Smaller groups | |
159 | ||
160 | Some languages are not spoken by a very large number of people, so people | |
161 | speaking them sometimes consider that there may not be all that much | |
162 | demand such versions of free software packages. Moreover, many people | |
163 | being <EM>into computers</EM>, in some countries, generally seem to prefer | |
164 | English versions of their software. | |
165 | ||
166 | On the other end, people might enjoy their own language a lot, and be | |
167 | very motivated at providing to themselves the pleasure of having their | |
168 | beloved free software speaking their mother tongue. They do themselves | |
169 | a personal favor, and do not pay that much attention to the number of | |
170 | people beneficiating of their work. | |
171 | ||
172 | <LI>Misinterpretation | |
173 | ||
174 | Other users are shy to push forward their own language, seeing in this | |
175 | some kind of misplaced propaganda. Someone thought there must be some | |
176 | users of the language over the networks pestering other people with it. | |
177 | ||
178 | But any spoken language is worth localization, because there are | |
179 | people behind the language for whom the language is important and | |
180 | dear to their hearts. | |
181 | ||
182 | <LI>Odd translations | |
183 | ||
184 | The biggest problem is to find the right translations so that | |
185 | everybody can understand the messages. Translations are usually a | |
186 | little odd. Some people get used to English, to the extent they may | |
187 | find translations into their own language "rather pushy, obnoxious | |
188 | and sometimes even hilarious." As a French speaking man, I have | |
189 | the experience of those instruction manuals for goods, so poorly | |
190 | translated in French in Korea or Taiwan... | |
191 | ||
192 | The fact is that we sometimes have to create a kind of national | |
193 | computer culture, and this is not easy without the collaboration of | |
194 | many people liking their mother tongue. This is why translations are | |
195 | better achieved by people knowing and loving their own language, and | |
196 | ready to work together at improving the results they obtain. | |
197 | ||
198 | <LI>Dependencies over the GPL | |
199 | ||
200 | Some people wonder if using GNU <CODE>gettext</CODE> necessarily brings their package | |
201 | under the protective wing of the GNU General Public License, when they | |
202 | do not want to make their program free, or want other kinds of freedom. | |
203 | The simplest answer is yes. | |
204 | ||
205 | The mere marking of localizable strings in a package, or conditional | |
206 | inclusion of a few lines for initialization, is not really including | |
207 | GPL'ed code. However, the localization routines themselves are under | |
208 | the GPL and would bring the remainder of the package under the GPL | |
209 | if they were distributed with it. So, I presume that, for those | |
210 | for which this is a problem, it could be circumvented by letting to | |
211 | the end installers the burden of assembling a package prepared for | |
212 | localization, but not providing the localization routines themselves. | |
213 | ||
214 | </UL> | |
215 | ||
216 | ||
217 | ||
218 | <H2><A NAME="SEC60" HREF="gettext_toc.html#TOC60">Organization</A></H2> | |
219 | ||
220 | <P> | |
221 | On a larger scale, the true solution would be to organize some kind of | |
222 | fairly precise set up in which volunteers could participate. I gave | |
223 | some thought to this idea lately, and realize there will be some | |
224 | touchy points. I thought of writing to Richard Stallman to launch | |
225 | such a project, but feel it might be good to shake out the ideas | |
226 | between ourselves first. Most probably that Linux International has | |
227 | some experience in the field already, or would like to orchestrate | |
228 | the volunteer work, maybe. Food for thought, in any case! | |
229 | ||
230 | </P> | |
231 | <P> | |
232 | I guess we have to setup something early, somehow, that will help | |
233 | many possible contributors of the same language to interlock and avoid | |
234 | work duplication, and further be put in contact for solving together | |
235 | problems particular to their tongue (in most languages, there are many | |
236 | difficulties peculiar to translating technical English). My Swedish | |
237 | contributor acknowledged these difficulties, and I'm well aware of | |
238 | them for French. | |
239 | ||
240 | </P> | |
241 | <P> | |
242 | This is surely not a technical issue, but we should manage so the | |
243 | effort of locale contributors be maximally useful, despite the national | |
244 | team layer interface between contributors and maintainers. | |
245 | ||
246 | </P> | |
247 | <P> | |
248 | The Translation Project needs some setup for coordinating language | |
249 | coordinators. Localizing evolving programs will surely | |
250 | become a permanent and continuous activity in the free software community, | |
251 | once well started. | |
252 | The setup should be minimally completed and tested before GNU | |
253 | <CODE>gettext</CODE> becomes an official reality. The e-mail address | |
254 | <TT>`translation@iro.umontreal.ca'</TT> has been setup for receiving | |
255 | offers from volunteers and general e-mail on these topics. This address | |
256 | reaches the Translation Project coordinator. | |
257 | ||
258 | </P> | |
259 | ||
260 | ||
261 | ||
262 | <H3><A NAME="SEC61" HREF="gettext_toc.html#TOC61">Central Coordination</A></H3> | |
263 | ||
264 | <P> | |
265 | I also think GNU will need sooner than it thinks, that someone setup | |
266 | a way to organize and coordinate these groups. Some kind of group | |
267 | of groups. My opinion is that it would be good that GNU delegates | |
268 | this task to a small group of collaborating volunteers, shortly. | |
269 | Perhaps in <TT>`gnu.announce'</TT> a list of this national committee's | |
270 | can be published. | |
271 | ||
272 | </P> | |
273 | <P> | |
274 | My role as coordinator would simply be to refer to Ulrich any German | |
275 | speaking volunteer interested to localization of free software packages, and | |
276 | maybe helping national groups to initially organize, while maintaining | |
277 | national registries for until national groups are ready to take over. | |
278 | In fact, the coordinator should ease volunteers to get in contact with | |
279 | one another for creating national teams, which should then select | |
280 | one coordinator per language, or country (regionalized language). | |
281 | If well done, the coordination should be useful without being an | |
282 | overwhelming task, the time to put delegations in place. | |
283 | ||
284 | </P> | |
285 | ||
286 | ||
287 | <H3><A NAME="SEC62" HREF="gettext_toc.html#TOC62">National Teams</A></H3> | |
288 | ||
289 | <P> | |
290 | I suggest we look for volunteer coordinators/editors for individual | |
291 | languages. These people will scan contributions of translation files | |
292 | for various programs, for their own languages, and will ensure high | |
293 | and uniform standards of diction. | |
294 | ||
295 | </P> | |
296 | <P> | |
297 | From my current experience with other people in these days, those who | |
298 | provide localizations are very enthusiastic about the process, and are | |
299 | more interested in the localization process than in the program they | |
300 | localize, and want to do many programs, not just one. This seems | |
301 | to confirm that having a coordinator/editor for each language is a | |
302 | good idea. | |
303 | ||
304 | </P> | |
305 | <P> | |
306 | We need to choose someone who is good at writing clear and concise | |
307 | prose in the language in question. That is hard--we can't check | |
308 | it ourselves. So we need to ask a few people to judge each others' | |
309 | writing and select the one who is best. | |
310 | ||
311 | </P> | |
312 | <P> | |
313 | I announce my prerelease to a few dozen people, and you would not | |
314 | believe all the discussions it generated already. I shudder to think | |
315 | what will happen when this will be launched, for true, officially, | |
316 | world wide. Who am I to arbitrate between two Czekolsovak users | |
317 | contradicting each other, for example? | |
318 | ||
319 | </P> | |
320 | <P> | |
321 | I assume that your German is not much better than my French so that | |
322 | I would not be able to judge about these formulations. What I would | |
323 | suggest is that for each language there is a group for people who | |
324 | maintain the PO files and judge about changes. I suspect there will | |
325 | be cultural differences between how such groups of people will behave. | |
326 | Some will have relaxed ways, reach consensus easily, and have anyone | |
327 | of the group relate to the maintainers, while others will fight to | |
328 | death, organize heavy administrations up to national standards, and | |
329 | use strict channels. | |
330 | ||
331 | </P> | |
332 | <P> | |
333 | The German team is putting out a good example. Right now, they are | |
334 | maybe half a dozen people revising translations of each other and | |
335 | discussing the linguistic issues. I do not even have all the names. | |
336 | Ulrich Drepper is taking care of coordinating the German team. | |
337 | He subscribed to all my pretest lists, so I do not even have to warn | |
338 | him specifically of incoming releases. | |
339 | ||
340 | </P> | |
341 | <P> | |
342 | I'm sure, that is a good idea to get teams for each language working | |
343 | on translations. That will make the translations better and more | |
344 | consistent. | |
345 | ||
346 | </P> | |
347 | ||
348 | ||
349 | ||
350 | <H4><A NAME="SEC63" HREF="gettext_toc.html#TOC63">Sub-Cultures</A></H4> | |
351 | ||
352 | <P> | |
353 | Taking French for example, there are a few sub-cultures around computers | |
354 | which developed diverging vocabularies. Picking volunteers here and | |
355 | there without addressing this problem in an organized way, soon in the | |
356 | project, might produce a distasteful mix of internationalized programs, | |
357 | and possibly trigger endless quarrels among those who really care. | |
358 | ||
359 | </P> | |
360 | <P> | |
361 | Keeping some kind of unity in the way French localization of | |
362 | internationalized programs is achieved is a difficult (and delicate) job. | |
363 | Knowing the latin character of French people (:-), if we take this | |
364 | the wrong way, we could end up nowhere, or spoil a lot of energies. | |
365 | Maybe we should begin to address this problem seriously <EM>before</EM> | |
366 | GNU <CODE>gettext</CODE> become officially published. And I suspect that this | |
367 | means soon! | |
368 | ||
369 | </P> | |
370 | ||
371 | ||
372 | <H4><A NAME="SEC64" HREF="gettext_toc.html#TOC64">Organizational Ideas</A></H4> | |
373 | ||
374 | <P> | |
375 | I expect the next big changes after the official release. Please note | |
376 | that I use the German translation of the short GPL message. We need | |
377 | to set a few good examples before the localization goes out for true | |
378 | in the free software community. Here are a few points to discuss: | |
379 | ||
380 | </P> | |
381 | ||
382 | <UL> | |
383 | <LI> | |
384 | ||
385 | Each group should have one FTP server (at least one master). | |
386 | ||
387 | <LI> | |
388 | ||
389 | The files on the server should reflect the latest version (of | |
390 | course!) and it should also contain a RCS directory with the | |
391 | corresponding archives (I don't have this now). | |
392 | ||
393 | <LI> | |
394 | ||
395 | There should also be a ChangeLog file (this is more useful than the | |
396 | RCS archive but can be generated automatically from the later by | |
397 | Emacs). | |
398 | ||
399 | <LI> | |
400 | ||
401 | A <STRONG>core group</STRONG> should judge about questionable changes (for now | |
402 | this group consists solely by me but I ask some others occasionally; | |
403 | this also seems to work). | |
404 | ||
405 | </UL> | |
406 | ||
407 | ||
408 | ||
409 | <H3><A NAME="SEC65" HREF="gettext_toc.html#TOC65">Mailing Lists</A></H3> | |
410 | ||
411 | <P> | |
412 | If we get any inquiries about GNU <CODE>gettext</CODE>, send them on to: | |
413 | ||
414 | </P> | |
415 | ||
416 | <PRE> | |
417 | <TT>`translation@iro.umontreal.ca'</TT> | |
418 | </PRE> | |
419 | ||
420 | <P> | |
421 | The <TT>`*-pretest'</TT> lists are quite useful to me, maybe the idea could | |
422 | be generalized to many GNU, and non-GNU packages. But each maintainer | |
423 | his/her way! | |
424 | ||
425 | </P> | |
426 | <P> | |
427 | Fran@,{c}ois, we have a mechanism in place here at | |
428 | <TT>`gnu.ai.mit.edu'</TT> to track teams, support mailing lists for | |
429 | them and log members. We have a slight preference that you use it. | |
430 | If this is OK with you, I can get you clued in. | |
431 | ||
432 | </P> | |
433 | <P> | |
434 | Things are changing! A few years ago, when Daniel Fekete and I | |
435 | asked for a mailing list for GNU localization, nested at the FSF, we | |
436 | were politely invited to organize it anywhere else, and so did we. | |
437 | For communicating with my pretesters, I later made a handful of | |
438 | mailing lists located at iro.umontreal.ca and administrated by | |
439 | <CODE>majordomo</CODE>. These lists have been <EM>very</EM> dependable | |
440 | so far... | |
441 | ||
442 | </P> | |
443 | <P> | |
444 | I suspect that the German team will organize itself a mailing list | |
445 | located in Germany, and so forth for other countries. But before they | |
446 | organize for true, it could surely be useful to offer mailing lists | |
447 | located at the FSF to each national team. So yes, please explain me | |
448 | how I should proceed to create and handle them. | |
449 | ||
450 | </P> | |
451 | <P> | |
452 | We should create temporary mailing lists, one per country, to help | |
453 | people organize. Temporary, because once regrouped and structured, it | |
454 | would be fair the volunteers from country bring back <EM>their</EM> list | |
455 | in there and manage it as they want. My feeling is that, in the long | |
456 | run, each team should run its own list, from within their country. | |
457 | There also should be some central list to which all teams could | |
458 | subscribe as they see fit, as long as each team is represented in it. | |
459 | ||
460 | </P> | |
461 | ||
462 | ||
463 | <H2><A NAME="SEC66" HREF="gettext_toc.html#TOC66">Information Flow</A></H2> | |
464 | ||
465 | <P> | |
466 | There will surely be some discussion about this messages after the | |
467 | packages are finally released. If people now send you some proposals | |
468 | for better messages, how do you proceed? Jim, please note that | |
469 | right now, as I put forward nearly a dozen of localizable programs, I | |
470 | receive both the translations and the coordination concerns about them. | |
471 | ||
472 | </P> | |
473 | <P> | |
474 | If I put one of my things to pretest, Ulrich receives the announcement | |
475 | and passes it on to the German team, who make last minute revisions. | |
476 | Then he submits the translation files to me <EM>as the maintainer</EM>. | |
477 | For free packages I do not maintain, I would not even hear about it. | |
478 | This scheme could be made to work for the whole Translation Project, | |
479 | I think. For security reasons, maybe Ulrich (national coordinators, | |
480 | in fact) should update central registry kept at the Translation Project | |
481 | (Jim, me, or Len's recruits) once in a while. | |
482 | ||
483 | </P> | |
484 | <P> | |
485 | In December/January, I was aggressively ready to internationalize | |
486 | all of GNU, giving myself the duty of one small GNU package per week | |
487 | or so, taking many weeks or months for bigger packages. But it does | |
488 | not work this way. I first did all the things I'm responsible for. | |
489 | I've nothing against some missionary work on other maintainers, but | |
490 | I'm also loosing a lot of energy over it--same debates over again. | |
491 | ||
492 | </P> | |
493 | <P> | |
494 | And when the first localized packages are released we'll get a lot of | |
495 | responses about ugly translations :-). Surely, and we need to have | |
496 | beforehand a fairly good idea about how to handle the information | |
497 | flow between the national teams and the package maintainers. | |
498 | ||
499 | </P> | |
500 | <P> | |
501 | Please start saving somewhere a quick history of each PO file. I know | |
502 | for sure that the file format will change, allowing for comments. | |
503 | It would be nice that each file has a kind of log, and references for | |
504 | those who want to submit comments or gripes, or otherwise contribute. | |
505 | I sent a proposal for a fast and flexible format, but it is not | |
506 | receiving acceptance yet by the GNU deciders. I'll tell you when I | |
507 | have more information about this. | |
508 | ||
509 | </P> | |
510 | <P><HR><P> | |
511 | <p>Go to the <A HREF="gettext_1.html">first</A>, <A HREF="gettext_8.html">previous</A>, <A HREF="gettext_10.html">next</A>, <A HREF="gettext_12.html">last</A> section, <A HREF="gettext_toc.html">table of contents</A>. | |
512 | </BODY> | |
513 | </HTML> |