mozilla

Revision 17739 of Calendar localization

  • Revision slug: Calendar/Localization
  • Revision title: Calendar localization
  • Revision id: 17739
  • Created:
  • Creator: Sipaq
  • Is current revision? No
  • Comment 739 words added; page display name changed to 'Calendar Localization'

Revision Content

This page is aimed at current and future localizers of Lightning and Sunbird. It covers many aspects a localizer of these applications should be aware of like necessary tools, how to get information about localization-relevant events and various other items of interest.

Sunbird and Lightning are translated into many languages. As more features are implemented or certain bugs are fixed, more strings need to be translated. Near a release the file of shipped locales is updated to include all those locales that have translated all strings. If you would like to help localize, please contact the localization team of your specific language. If there is no localization team for your language, please file a bug so we can help you get started.

Creating a new localization

Creating a new localization (Mercurial) - This article describes how you can create a new localization for Lightning and Sunbird.

Localization Dashboard

The localization dashboard for Lightning and Sunbird gives localizers a precise overview of the current status of their localization. Detailed information about the localization dashboard is available on the Thunderbird l10n dashboard page.

A localization will added to the l10n dashboard on request when it has reached a high-level of completion (> 80%) as shown by the compare-locales output. To request the addition of your locale to the dashboard, file a bug in the Calendar product/Build Config component.

Getting l10n-relevant information

Developer Blog

The Calendar developers maintain a development blog, where relevant information about important events (e.g. important bugfixes, release schedules, release announcements) are posted. You can also subscribe to the blog's ATOM feed to be notified once new blogposts are posted to the blog.

Newsgroups & Mailinglists

Localizers of Lightning and Sunbird should read the localization newsgroup (mozilla.dev.l10n) to stay informed of Calendar-specific and general l10n-related items of interest to them. They are further encouraged to read the Calendar development newsgroup (mozilla.dev.apps.calendar) to stay informed of recent Calendar-related developments.

These newsgroups can also be accessed via the dev-l10n@lists.mozilla.org (localization mailinglist) or dev-apps-calendar@lists.mozilla.org (Calendar development mailinglist) mailinglists, which mirror the newsgroups mentioned above. You can subscribe to or unsubscribe from these mailinglists via the web interface at lists.mozilla.org.

Bugzilla

Localizers should watch the calendar-l10n@mozilla.bugs mail address to stay current on bugs that might affect Lightning/Sunbird localizers, especially late in a release cycle. This can be done by adding this mail address to the "User Watching" section of your Email preferences in bugzilla.

A few helpful links

String Freeze

String freeze impact

After a string freeze of a given, no new English (en-US) strings will be added or changed until the release date. This enables localizers to catch up with all the string changes and give them enough time to translate and test all the l10n-specific changes that were made in the release cycle.

This means that all work for a release that might affect the strings on the UI must be finished before the string freeze date.

Breaking the string freeze

There may be late-breaking changes or security fixes after the string freeze, where the benefit of those changes outweighs the cost of breaking the string freeze. In that case developers will have to do the following:

  • Get the string change approved by the relevant driver for the release.
  • Add the late-l10n keyword to the relevant bug in bugzilla.mozilla.org
  • Post a note into the localization newsgroup mozilla.dev.l10n or the localization mailinglist dev-l10n@lists.mozilla.org
  • The note should contain a short description of the change and where it is occurring (e.g. in which part of the UI, which dialog, etc.) to enable localizers to adequately test their localization
  • The note should also describe possible implications for localizers in case anything special is going on (e.g. the order of the strings is important)

Building Lightning in your Language

We are working on providing nightly localized builds, see work in bug 346278

Building Lightning in your language is almost as easy as building Lightning. First of all, follow the general build guide to build Lightning. If there is already a localization for your language, you will need to check out or update your locale files. Otherwise, please see this page for some information on creating a new localization. Make sure to check out the locale directory in the same level as the checked out comm-central tree. For example consider this directory structure:

 [+] mozilla                // Common parent directory
  |-[+] comm-central        // Checked out comm-central source tree
  |  |-[+] calendar
  |  |-[+] mail
  |  |-[+] mailnews
  |-[+] l10n-central        // Checked out l10n-central source tree
     |-[+] de
        |-[+] calendar

Now execute the following command in the object directory, replacing <language identifier> with the correct identifier (for example de for German). This will create a separate lightning-<language identifier>.xpi file in the obj-dir/mozilla/dist/xpi-stage/ directory.

make AB_CD=<language identifier> repack-l10n

Building Sunbird in your Language

TBD

Revision Source

<p>This page is aimed at current and future localizers of Lightning and Sunbird. It covers many aspects a localizer of these applications should be aware of like necessary tools, how to get information about localization-relevant events and various other items of interest.</p>
<p>Sunbird and Lightning are translated into <a class="external" href="http://mxr.mozilla.org/comm-central/source/calendar/locales/all-locales" title="http://mxr.mozilla.org/comm-central/source/calendar/locales/all-locales">many languages</a>. As more features are implemented or certain bugs are fixed, more strings need to be translated. Near a release the file of<a class="external" href="http://mxr.mozilla.org/comm-central/source/calendar/locales/shipped-locales" title="http://mxr.mozilla.org/comm-central/source/calendar/locales/shipped-locales"> shipped locales</a> is updated to include all those locales that have translated all strings. If you would like to help localize, please <a class="link-https" href="https://wiki.mozilla.org/L10n:Localization_Teams" title="https://wiki.mozilla.org/L10n:Localization_Teams">contact the localization team</a> of your specific language. If there is no localization team for your language, please <a class="external" href="/https://bugzilla.mozilla.org/enter_bug.cgi?product=Calendar&amp;rep_platform=All&amp;op_sys=All&amp;component=General&amp;short_desc=New%20localization:%20&lt;your%20language>" title="https://bugzilla.mozilla.org/enter_bug.cgi?product=Calendar&amp;rep_platform=All&amp;op_sys=All&amp;component=General&amp;short_desc=New localization: &lt;your language>">file a bug</a> so we can help you get started.</p>
<h2>Creating a new localization</h2>
<p><a href="/En/Creating_a_new_localization_(Mercurial)" title="En/Creating_a_new_localization_(Mercurial)">Creating a new localization (Mercurial)</a> - This article describes how you can create a new localization for Lightning and Sunbird.</p>
<h2>Localization Dashboard</h2>
<p>The <a class="external text" href="http://l10n.mozilla.org/dashboard/?tree=sunbird10x" rel="nofollow" title="http://l10n.mozilla.org/dashboard/?tree=sunbird10x">localization dashboard</a> for Lightning and Sunbird gives localizers a precise overview of the current status of their localization. Detailed information about the localization dashboard is available on the <a class="link-https" href="https://wiki.mozilla.org/Thunderbird:Localization:Dashboard" title="https://wiki.mozilla.org/Thunderbird:Localization:Dashboard">Thunderbird l10n dashboard page</a>.</p>
<p>A localization will added to the l10n dashboard on request when it has reached a high-level of completion (&gt; 80%) as shown by the <a href="/en/Compare-locales" title="En/Compare-locales">compare-locales</a> output. To request the addition of your locale to the dashboard, <a class="external text" href="https://bugzilla.mozilla.org/enter_bug.cgi?product=Calendar&amp;component=Build%20Config" rel="nofollow" title="https://bugzilla.mozilla.org/enter_bug.cgi?product=Calendar&amp;component=Build%20Config">file a bug</a> in the Calendar product/Build Config component.</p>
<h2>Getting l10n-relevant information</h2>
<h3>Developer Blog</h3>
<p>The Calendar developers maintain a <a class="external text" href="http://weblogs.mozillazine.org/calendar/" rel="nofollow" title="http://weblogs.mozillazine.org/calendar/">development blog</a>, where relevant information about important events (e.g. important bugfixes, release schedules, release announcements) are posted. You can also subscribe to the blog's <a class="external text" href="http://weblogs.mozillazine.org/calendar/atom.xml" rel="nofollow" title="http://weblogs.mozillazine.org/calendar/atom.xml">ATOM feed</a> to be notified once new blogposts are posted to the blog.</p>
<h3>Newsgroups &amp; Mailinglists</h3>
<p>Localizers of Lightning and Sunbird should read the localization newsgroup (<a class="external text" href="http://groups.google.de/group/mozilla.dev.l10n" rel="nofollow" title="http://groups.google.de/group/mozilla.dev.l10n">mozilla.dev.l10n</a>) to stay informed of Calendar-specific and general l10n-related items of interest to them. They are further encouraged to read the Calendar development newsgroup (<a class="external text" href="http://groups.google.de/group/mozilla.dev.apps.calendar" rel="nofollow" title="http://groups.google.de/group/mozilla.dev.apps.calendar">mozilla.dev.apps.calendar</a>) to stay informed of recent Calendar-related developments.</p>
<p>These newsgroups can also be accessed via the <a class="link-https" href="https://lists.mozilla.org/listinfo/dev-l10n" title="https://lists.mozilla.org/listinfo/dev-l10n">dev-l10n@lists.mozilla.org</a> (localization mailinglist) or <a class="link-https" href="https://lists.mozilla.org/listinfo/dev-apps-calendar" title="https://lists.mozilla.org/listinfo/dev-apps-calendar">dev-apps-calendar@lists.mozilla.org</a> (Calendar development mailinglist) mailinglists, which mirror the newsgroups mentioned above. You can subscribe to or unsubscribe from these mailinglists via the web interface at <a class="link-https" href="https://lists.mozilla.org/listinfo" title="https://lists.mozilla.org/listinfo">lists.mozilla.org</a>.</p>
<h3>Bugzilla</h3>
<p>Localizers should watch the <a class=" link-mailto" href="mailto:calendar-l10n@mozilla.bugs" rel="freelink">calendar-l10n@mozilla.bugs</a> mail address to stay current on bugs that might affect Lightning/Sunbird localizers, especially late in a release cycle. This can be done by adding this mail address to the "User Watching" section of your <a class="link-https" href="https://bugzilla.mozilla.org/userprefs.cgi?tab=email" title="https://bugzilla.mozilla.org/userprefs.cgi?tab=email">Email preferences in bugzilla</a>.</p>
<h3>A few helpful links</h3>
<ul> <li><a class="external text" href="https://bugzilla.mozilla.org/buglist.cgi?bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED&amp;chfieldfrom=1m&amp;chfieldto=Now&amp;field0-0-0=attachments.ispatch&amp;type0-0-0=equals&amp;value0-0-0=1&amp;field0-1-0=attach_data.thedata&amp;type0-1-0=substring&amp;value0-1-0=++++b/calendar/locales/" rel="nofollow" title="https://bugzilla.mozilla.org/buglist.cgi?bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED&amp;chfieldfrom=1m&amp;chfieldto=Now&amp;field0-0-0=attachments.ispatch&amp;type0-0-0=equals&amp;value0-0-0=1&amp;field0-1-0=attach_data.thedata&amp;type0-1-0=substring&amp;value0-1-0=%2B%2B%2B+b%2Fcalendar%2Flocales%2F">Open bugs with string impact that have been changed in the last month</a></li> <li><a class="external text" href="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;chfieldfrom=1m&amp;chfieldto=Now&amp;field0-0-0=attachments.ispatch&amp;type0-0-0=equals&amp;value0-0-0=1&amp;field0-1-0=attach_data.thedata&amp;type0-1-0=substring&amp;value0-1-0=++++b/calendar/locales/" rel="nofollow" title="https://bugzilla.mozilla.org/buglist.cgi?resolution=FIXED&amp;chfieldfrom=1m&amp;chfieldto=Now&amp;field0-0-0=attachments.ispatch&amp;type0-0-0=equals&amp;value0-0-0=1&amp;field0-1-0=attach_data.thedata&amp;type0-1-0=substring&amp;value0-1-0=%2B%2B%2B+b%2Fcalendar%2Flocales%2F">Fixed bugs with string impact that have been changed in the last month</a></li> <li><a class="external text" href="https://bugzilla.mozilla.org/buglist.cgi?product=MailNews+Core&amp;product=Calendar&amp;keywords_type=allwords&amp;keywords=l12y&amp;bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED" rel="nofollow" title="https://bugzilla.mozilla.org/buglist.cgi?product=Calendar&amp;keywords_type=allwords&amp;keywords=l12y&amp;bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED">Open bugs with the l12y (localizability) keyword</a></li> <li><a class="external text" href="https://bugzilla.mozilla.org/buglist.cgi?product=Calendar&amp;bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED&amp;emailcc1=1&amp;emailtype1=exact&amp;email1=calendar-l10n@mozilla.bugs" rel="nofollow" title="https://bugzilla.mozilla.org/buglist.cgi?product=Calendar&amp;bug_status=UNCONFIRMED,NEW,ASSIGNED,REOPENED&amp;emailcc1=1&amp;emailtype1=exact&amp;email1=calendar-l10n@mozilla.bugs">Open bugs which need localizer attention (calendar-l10n@mozilla.bugs has been CC'ed on that bug)</a></li>
</ul>
<h2>String Freeze</h2>
<h3>String freeze impact</h3>
<p>After a string freeze of a given, no new English (en-US) strings will be added or changed until the release date. This enables localizers to catch up with all the string changes and give them enough time to translate and test all the l10n-specific changes that were made in the release cycle.</p>
<p>This means that all work for a release that might affect the strings on the UI must be finished before the string freeze date.</p>
<h3>Breaking the string freeze</h3>
<p>There may be late-breaking changes or security fixes after the string freeze, where the benefit of those changes outweighs the cost of breaking the string freeze. In that case developers will have to do the following:</p>
<ul> <li>Get the string change approved by the relevant driver for the release.</li> <li>Add the <strong>late-l10n</strong> keyword to the relevant bug in <a class="external text" href="https://bugzilla.mozilla.org" rel="nofollow" title="bugzilla.mozilla.org">bugzilla.mozilla.org</a></li> <li>Post a note into the localization newsgroup <a class="external text" href="http://groups.google.de/group/mozilla.dev.l10n" rel="nofollow" title="http://groups.google.de/group/mozilla.dev.l10n">mozilla.dev.l10n</a> or the localization mailinglist <a class="external text" href="mailto:dev-l10n@lists.mozilla.org" rel="nofollow" title="mailto:dev-l10n@lists.mozilla.org">dev-l10n@lists.mozilla.org</a></li> <li>The note should contain a short description of the change and where it is occurring (e.g. in which part of the UI, which dialog, etc.) to enable localizers to adequately test their localization</li> <li>The note should also describe possible implications for localizers in case anything special is going on (e.g. the order of the strings is important)</li>
</ul>
<h2>Building Lightning in your Language</h2>
<div class="note">We are working on providing nightly localized builds, see work in <a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=346278" title="https://bugzilla.mozilla.org/show_bug.cgi?id=346278">bug 346278</a></div>
<p>Building Lightning in your language is almost as easy as building Lightning. First of all, follow the <a class="internal" href="/En/Developer_Guide/Source_Code/Getting_comm-central#Sunbird_and_Lightning" title="En/Developer Guide/Source Code/Getting comm-central#Sunbird and Lightning">general build guide</a> to build Lightning. If there is already a localization for your language, you will need to <a class="internal" href="/En/Maintaining_a_localization_(Mercurial)" title="En/Maintaining a localization (Mercurial)">check out or update your locale files</a>. Otherwise, please see <a class="internal" href="/en/Create_a_new_localization" title="En/Create a new localization">this page</a> for some information on creating a new localization. Make sure to check out the locale directory in the same level as the checked out comm-central tree. For example consider this directory structure:</p>
<pre> [+] mozilla                // Common parent directory
  |-[+] comm-central        // Checked out comm-central source tree
  |  |-[+] calendar
  |  |-[+] mail
  |  |-[+] mailnews
  |-[+] l10n-central        // Checked out l10n-central source tree
     |-[+] de
        |-[+] calendar
</pre>
<p>Now execute the following command in the object directory, replacing &lt;language identifier&gt; with the correct identifier (for example <code>de</code> for German). This will create a separate <code>lightning-&lt;language identifier&gt;.xpi</code> file in the <code>obj-dir/mozilla/dist/xpi-stage/</code> directory.</p>
<pre>make AB_CD=&lt;language identifier&gt; repack-l10n
</pre>
<h2>Building Sunbird in your Language</h2>
<p>TBD</p>
Revert to this revision