Narro is a handy web-based translation tool that is available to localizers to translate Firefox. With Narro, you can translate Mozilla applications online, export files with the same source structure as Mozilla code in a zip archive, or generate a .XPI file that can be installed locally for testing. This document will walk you though using Narro to translate Mozilla. Both the project blog and web-based tool provide a good starting point for you to see the current status of the project.
One of the first tasks when using Narro is to create your user account. If the localization you would like to start is not listed in Narro, please mail Mozilla's dev-l10n mailing list to ask if a localization effort already exists. If no volunteer effort exists, email the same dev-l10n mailing list, asking the Narro global administrator to start a new localization in Narro for your locale. Please provide your user name and the language. You will then receive rights to maintain (export, import, and approval permissions) the new localization. After receiving these rights, you have to log out and log in again to activate them.
The first step is to import the project you want to translate by accessing the "Manage" link in your project list. If you don't see the link, it means you don't have permissions. (Email the mailing list or Narro global admin from above to gain access to the manage link.)
Although the Narro installation has nightly updated files of both en-US and your locale, it is up to you to import it. If the projects were imported automatically, it would have to be for all languages. Narro is not used by all languages, so this would lead to any interested end-users translating in languages that are not maintained in Narro.
With the new locale, you can start translating online in Narro. One quick way to start is to click
When finished, you will need to send an email to dev-l10n mailing list to the Narro admin asking for assistance on the export from Narro in order to participate in the Mozilla release.
X-Testing locale. Set up as a reviewer (or an owner) of a locale. Get At anypoint, you can export the en-US.zip package if you want to see the whole source structure of the files with en-US strings.
Locale switcher is required.
Translate the red bar 0%.
Texts link: Gives you a list of all texts that need to be translated. (Presently, that is 108 pages of 5,395 Firefox strings displayed in Narro.)
First strings are the region.properties files and should not be translated with Narro.
Searching: you can search for original strings to translate if you see them in the Firefox UI.
After you have done some work and you are ready for testing, navigate to the "Manage" link and click. Scroll down to Export Project. Leave "Copy unhandled file" as checked. This tells Narro to leave all files that are not handled by the translation interface (.txt, .rdf, .xml files) and copies them directly to your structure.
20:29 alexxed> stas: (21:25:37) Alex: ah, that checkbox is for unhandled files/ Alex: that is files that are Narro doesn't handle, xml, rdf for example / Alex: you can't get a broken export from Narro, if something is untranslated, you get it in english
Export archive format is "zip".
Export translation using: "Approved suggestion".
Export and download when the export is finished.
Do not Hg Push from an export. This is only a testable local build.
Visit Projects page. There you will see an .XPI you can install for the latest nightly branch.
19:58 stas> alexxed1: is there a way to test translation while translating?
19:58 stas> i.e. when not at 100%
19:58 stas> to check progress, test etc?
19:58 alexxed1> yes, everytime you export the translation, an xpi is built
To install, you need to be able to change the locale of the browser. Install Locale Switcher 2.1. This is a requirement for locale testing with Narro. Be sure to change the language.
19:52 stas> alexxed1: "when finished" means "no more missing strings"?
19:52 alexxed1> 100% translated
19:59 stas> even if it's incomplete? is the xpi merged with en-US?
19:59 alexxed1> yes, at export the untranslated strings get exported with en-us instead
20:00 stas> alexxed1: any chance you could create a x-testing locale for me, so that I can try it out, take screenshots etc? When I'm done, you can delete it of course
20:09 alexxed1> stas: https://l10n.mozilla.org/narro/narro_project_list.php?l=xx-XX , if you login again, you should have the necessary rights to approve/export/import on xx
20:29 stas> so how do I get something I can push to hg?
20:30 stas> i.e. without english strings?
20:30 alexxed> why would you want that ?
20:30 alexxed> you would commit something broken
20:30 stas> yeah, but compare-locales will be broken otherwise, no?
20:30 alexxed> no, why would it be ?
20:31 stas> as in, I will no longer know what is tranlsated and what is not
20:31 stas> I mean, Narro tracks this
20:31 stas> but l10n dashboard would break, no?
20:31 alexxed> no
20:31 alexxed> compare-locales shows you how many strings you have in english (untranslated) if you want to see that
20:31 alexxed> outside Narro
20:32 alexxed> http://l10n.mozilla.org/dashboard/?locale=ro
20:32 alexxed> everything here is exported from Narro
20:32 alexxed> under Unchanged column
20:32 alexxed> you will see how many strings are still in English
20:33 stas> right, that's unchanged, but I think it should be missing?
20:33 alexxed> no, working with narro you'll have missing 0 after you commit
20:34 @Pike> alexxed: which is a bug, tbh
20:34 alexxed> imho, comitting with missing entities is equal to comitting something broken
20:36 @Pike> alexxed: the untranslated count is useless for us to see how much work needs to be done. landing with missing strings on the other hand doesn't break that much anymore now that we have l10n-merge on the nightlies on the build system
20:38 alexxed> well, my objective is to have a translation working from the first string, although I could export with missing entities, I see no logical reason to do that
20:39 alexxed> for example, when I switch to the next Firefox version, I'm forced to review the strings left in english in the previous translated version
20:39 @Pike> well, I think the drama that es-MX has right now is example enough
20:39 alexxed> how come ?
20:40 alexxed> the patch is correct from a technical point of view right ? the translation had and probably has a few problems, but as far as I seen they are manually generated by who translated
20:41 @Pike> alexxed: no, the patch is not right
20:42 alexxed> do you have some comments on it somewhere ?
20:42 @Pike> so because the stuff was only in narro, we have no metrics that we understand
20:43 @Pike> alexxed: I didn't go through all of the diff yet. But the export that juanb did and the diff that you did show different spanish strings in those files that had english strings in juanb's export
20:43 @Pike> and it's regressing list.txt, a technical piece
20:43 alexxed> yes, probably because the directory wasn't cleand before export
20:44 alexxed> which I did before creating the patch
20:44 (*) juanb didn't know that part, about the cleaning
20:44 alexxed> so the old files that should have been removed were in juanb's export
20:45 @Pike> alexxed: you still have browser's branding (the non-official ones), too
20:46 alexxed> I know, but afaik you get there from a different part in the build process ?
20:47 alexxed> usually with an export from Narro you have some files, like list.txt that you have to manage on your own, so far people have dealt well with that
20:47 alexxed> I always suggest to run hg diff before, to see what you're comitting