3 <!-- This HTML file has been created by texi2html 1.54 
   4      from gettext.texi on 25 January 1999 --> 
   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
> 
  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>.
 
  17 <H1><A NAME=
"SEC56" HREF=
"gettext_toc.html#TOC56">The Translator's View
</A></H1> 
  21 <H2><A NAME=
"SEC57" HREF=
"gettext_toc.html#TOC57">Introduction 
0</A></H2> 
  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.
 
  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
 
  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.
 
  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
 
  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>.
 
  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:
 
  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.
 
  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)
 
  99 <H2><A NAME=
"SEC58" HREF=
"gettext_toc.html#TOC58">Introduction 
1</A></H2> 
 102 This is now official, GNU is going international!  Here is the
 
 103 announcement submitted for the January 
1995 GNU Bulletin:
 
 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)
 
 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.
 
 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.
 
 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.
 
 143 For suggestion clarifications, additions or corrections to this
 
 144 document, please e-mail to 
<TT>`gnu-translation@prep.ai.mit.edu'
</TT>.
 
 149 <H2><A NAME=
"SEC59" HREF=
"gettext_toc.html#TOC59">Discussions
</A></H2> 
 152 Facing this internationalization effort, a few users expressed their
 
 153 concerns.  Some of these doubts are presented and discussed, here.
 
 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.
 
 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.
 
 172 <LI>Misinterpretation
 
 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.
 
 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.
 
 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...
 
 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.
 
 198 <LI>Dependencies over the GPL
 
 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.
 
 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.
 
 218 <H2><A NAME=
"SEC60" HREF=
"gettext_toc.html#TOC60">Organization
</A></H2> 
 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!
 
 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
 
 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.
 
 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,
 
 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.
 
 262 <H3><A NAME=
"SEC61" HREF=
"gettext_toc.html#TOC61">Central Coordination
</A></H3> 
 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
 
 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.
 
 287 <H3><A NAME=
"SEC62" HREF=
"gettext_toc.html#TOC62">National Teams
</A></H3> 
 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.
 
 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
 
 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.
 
 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?
 
 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
 
 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.
 
 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
 
 350 <H4><A NAME=
"SEC63" HREF=
"gettext_toc.html#TOC63">Sub-Cultures
</A></H4> 
 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.
 
 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
 
 372 <H4><A NAME=
"SEC64" HREF=
"gettext_toc.html#TOC64">Organizational Ideas
</A></H4> 
 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:
 
 385 Each group should have one FTP server (at least one master).
 
 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).
 
 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
 
 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).
 
 409 <H3><A NAME=
"SEC65" HREF=
"gettext_toc.html#TOC65">Mailing Lists
</A></H3> 
 412 If we get any inquiries about GNU 
<CODE>gettext
</CODE>, send them on to:
 
 417 <TT>`translation@iro.umontreal.ca'
</TT> 
 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
 
 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.
 
 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
 
 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.
 
 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.
 
 463 <H2><A NAME=
"SEC66" HREF=
"gettext_toc.html#TOC66">Information Flow
</A></H2> 
 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.
 
 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.
 
 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.
 
 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.
 
 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.
 
 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>.