FusionForge

Difference between revisions of "Translations"

From FusionForge Wiki
Jump to: navigation, search
(Updated translation stats)
(For FusionForge maintainers: remove 5.3 doc)
 
(17 intermediate revisions by 4 users not shown)
Line 1: Line 1:
FusionForge uses standard GNU gettext for its internationalisation system.  This system is widely known amongst the i18n community, which removes the burden of having to learn a home-made translsation system.
+
FusionForge uses standard GNU gettext for its internationalisation system.  This system is widely known amongst the i18n community, which removes the burden of having to learn a home-made translation system.
  
The Debian i18n people are kindly hosting the FusionForge translation effort on their [https://pootle.debian.net/projects/fusionforge/ Pootle] instance, and the results are regularly merged into the development code.
+
* [http://translationproject.org/domain/fusionforge.html Translation status]
  
As of end of March, 2010, there are a handful of languages with rather good translation status: French is  100% translated, Russian is about 80%, German is about 60%, and Spanish, Catalan, traditional Chinese and simplified Chinese are all above 50%.  Other languages with a reasonably good status include Basque, Italian, Brazilian Portuguese, Korean, Dutch and Swedish (all above 30%).  These numbers should be taken with a grain of salt, though, as the untranslated strings are often the ones least frequently seen.
+
== Translation rules ==
  
Potential translators are encouraged to create an account on the Pootle server and start to get a feel on how it worksIt's designed to be usable by a wide range of users, from the occasional user who just wants to offer a suggestion for one string to the seasoned translator who can juggle *.po files blindfolded.
+
* No HTML tags in translated strings except <nowiki><a>, <b>, <i>, <em> and <strong>.</nowiki>
 +
* No more all CAPS word. Exceptions are acronyms like URL, HTML, etc.
 +
* If you need quotes, use smart quotes “like this” and not ASCII quotes "like that"; this will avoid many backslashes in *.po files and is nicer to read
 +
* A sentence ends by a period '.'
 +
* First letter of the first word has capital case.
 +
* We use only one colon ':' between level of information and message.
 +
* There is no space between level of information and the colon.
 +
* level of information + colon = one word.
 +
* There is one space between the colon and the message.
 +
* gettext must be used as much as possible. Add a comment in your code to specify when not using gettext.
 +
 
 +
== Translation Project ==
 +
 
 +
=== For translators ===
 +
 
 +
Potential translators are encouraged to join their language translation team at the [http://translationproject.org Translation Project] and join the language mailing list.
 +
 
 +
* [http://translationproject.org/domain/fusionforge.html FusionForge package page]
 +
* [http://translationproject.org/team/index.html Teams]
 +
 
 +
To submit a translation, e.g. for French, [http://translationproject.org/html/robot.html write a mail to the robot], precisely as follow:
 +
* To: robot@translationproject.org
 +
* Subject: fusionforge-5.3.fr.po (update version if necessary)
 +
* Body: whatever
 +
* Attachment: fr.po.gz (gzip'd otherwise there are encoding issues)
 +
 
 +
=== For FusionForge maintainers ===
 +
 
 +
At each release, we:
 +
* Make sure the POT file is up-to-date (<tt>make -C locale fusionforge.pot</tt>).
 +
* Sync the latest translations (see [http://translationproject.org/html/maintainers.html Info for maintainers]).
 +
* Notify mailto:coordinator@translationproject.org of release candidates (RC) tarball URLs so that translators can update their translations before the final release.
 +
* Notify mailto:coordinator@translationproject.org of the final release tarball URL so he imports the included .pot file at translationproject.org.
 +
 
 +
Merging from a stable branch to master branch:
 +
* you can ignore any change to the .po files (they are not built against the same version of the .pot file, and you'll sync them once at release time).
 +
 
 +
Between releases:
 +
* The workflow is that you submit a new .pot when you make the RCs. At that time the translators work in batch.  That way you avoid getting the translators to work each time you add a comma, then change your mind and put it back ;)
 +
* If you added a bunch of new strings you can submit a new version even before RCs (e.g. fusionforge-5.3.99.1.pot).
 +
 
 +
== People to check / ping ==
 +
 
 +
The following languages were being worked on by:
 +
* French (the Friendly French Cabal)
 +
* Spanish (lcanas, marianoguerra, jfcastro, e1th0r)
 +
* Italian (reinhard)
 +
* German (mirabilos, Nilsius)
 +
* Simplified Chinese (markqiu)
 +
* Polish (pustelnik)
  
 
Back to [[FusionForge]]
 
Back to [[FusionForge]]

Latest revision as of 09:46, 28 May 2015

FusionForge uses standard GNU gettext for its internationalisation system. This system is widely known amongst the i18n community, which removes the burden of having to learn a home-made translation system.

Translation rules

  • No HTML tags in translated strings except <a>, <b>, <i>, <em> and <strong>.
  • No more all CAPS word. Exceptions are acronyms like URL, HTML, etc.
  • If you need quotes, use smart quotes “like this” and not ASCII quotes "like that"; this will avoid many backslashes in *.po files and is nicer to read
  • A sentence ends by a period '.'
  • First letter of the first word has capital case.
  • We use only one colon ':' between level of information and message.
  • There is no space between level of information and the colon.
  • level of information + colon = one word.
  • There is one space between the colon and the message.
  • gettext must be used as much as possible. Add a comment in your code to specify when not using gettext.

Translation Project

For translators

Potential translators are encouraged to join their language translation team at the Translation Project and join the language mailing list.

To submit a translation, e.g. for French, write a mail to the robot, precisely as follow:

  • To: robot@translationproject.org
  • Subject: fusionforge-5.3.fr.po (update version if necessary)
  • Body: whatever
  • Attachment: fr.po.gz (gzip'd otherwise there are encoding issues)

For FusionForge maintainers

At each release, we:

Merging from a stable branch to master branch:

  • you can ignore any change to the .po files (they are not built against the same version of the .pot file, and you'll sync them once at release time).

Between releases:

  • The workflow is that you submit a new .pot when you make the RCs. At that time the translators work in batch. That way you avoid getting the translators to work each time you add a comma, then change your mind and put it back ;)
  • If you added a bunch of new strings you can submit a new version even before RCs (e.g. fusionforge-5.3.99.1.pot).

People to check / ping

The following languages were being worked on by:

  • French (the Friendly French Cabal)
  • Spanish (lcanas, marianoguerra, jfcastro, e1th0r)
  • Italian (reinhard)
  • German (mirabilos, Nilsius)
  • Simplified Chinese (markqiu)
  • Polish (pustelnik)

Back to FusionForge