Friday, February 27, 2009

Where is that link?


Working with Narro I have come to the conclusion that the Actions columns from the text lists was just eating up valuable space. So I dropped it. Now you have to click the translation cell to translate. This way I also had the chance to explain the colours that I use:
  • black means approved
  • blue means not approved and not your translation, but the most voted
  • green means still not approved but it's your translation
Feel free to give some feedback on this.


I also added Search by author. Sometimes I get a very good translator and I want to approve all of his suggestions. So now I just search for him using the texts list and either use mass approve or just do it old fashion, text by text.

Another hidden feature worth mentioning is that the translation page already has some access keys defined for keyboard fanatics. Here's the list:
  • Save - s
  • Save and ignore - i
  • Approve - v
  • Next - k
  • Next 100 - h
  • Previous 100 - l
  • Previous - j
  • Copy original - c
In Firefox you use Alt+Shift+letter above. Feedback is welcomed on this as well, but have in mind that I'm planning to make this keys customizable.

Monday, February 16, 2009

Nobody's perfect: 0.9.4

The new release contains many improvements on the import and export side as I got a lot of complaints that "it's not working", especially for Windows based installations.

There are also new features, probably the most notable is the mass approve function on the text list.

I'd like to draw some attention to a hidden feature that I've never talked about before. If you put in the project's directory, let's say data/import/1 two files named import.sh and export.sh they will be executed, the first before import (for things like running a wget) and the second after export (for things like creating a language pack, or a compiled .po file). The scripts are called with useful arguments. Here's a script used for creating a Firefox language pack after the export process:
#!/bin/bash
# $1 - language code
# $2 - language id
# $3 - project name
# $4 - project id
# $5 - user id

cd /mozilla_projects/firefox/fx/browser/locales

make -s langpack-$1
export retVal=$?

exit $retVal
Don't forget about returning a value. The output will be shown anyway but with a warning or success message depending on the retVal.

If you're doing a fresh installation, follow the instructions in the INSTALL file.
If you're updating from 0.9.3, run the update files in the root directory. Their names are pretty suggestive.

And here's the link: http://narro.googlecode.com/files/narro-0.9.4.tar.gz.

I'd just like to add a small note of warning. The setup and install process may be a little rough as systems installations differ. But if you need help, don't hesitate to ask for help on the discussion group: http://groups.google.com/group/narro-project/post.

Thursday, February 12, 2009

Sharing the story: localization matters

Ever since I installed a Narro instance on the l10n.mozilla.org server I received requests for supporting languages that you don't usually find next to other languages in localized software versions. They want Firefox in their language. Like Mayan, Oromo, Valencian, Kabyle, Kazakh, Zapotec, Malayalam and others.

They have to register an account and I have to give them administrative permissions on their language. After that, they can start translating in Narro. They can invite their friends to help. Whenever they feel like testing, they export the translation and a language pack is generated ready to be installed. That's a language pack that they can post on addons.mozilla.org for others to enjoy.

So a low entry barrier to the localization matters. If people like the software, sooner or later they want it in their own language. And be sure that there are people that won't use software in English.

So today I feel the essence of localization, which is making a product suitable for use in a particular country or region. I might add "by simply translating it", because usually you need tools and knowledge.

Love your language!

Thursday, February 5, 2009

Sort files and projects by progress


I've just finished writing the piece of code that allows sorting files and projects by progress. This seems such a natural thing to do, but it's so complicated to code.

More on mass aproval

I've been testing this feature on production for just a day and I can say "yes, it's very useful" already. For now, I use it like this:
  • I choose to see only texts that require approval
  • I click Mass approve
  • I choose which suggestions to approve
  • I save them all
I have 20 texts per page. I never could approve 20 at once because some of them don't have suggestions, are too long, have access keys or have bad suggestions. But the average is about 10 out of 20, which is good.

I'll be updating https://l10n.mozilla.org/narro instance shortly with this change which I think others will find it useful too.

Wednesday, February 4, 2009

Approve multiple texts at once


I've got this request from many Rosetta fans. Mass operations directly in the text list. I've started with the approve operation, which doesn't need any validation. There are some restrictions though:
  • only texts that have less then 100 characters
  • only texts that don't have an access key
As you can see in the image, the idea is simple, select a suggestion to approve for each text and click "Approve all selected suggestions". In this mode, the column context is always shown, as it's useful for approval and the actions column is hidden.

I'm thinking also of mass vote and mass add operations. Voting shouldn't be a problem, but adding should, because plugins validate the added suggestion and have to display a message somewhere.

Personally I'm not happy about mass operations as they bring errors with them, but sometimes they may be useful if the right people use them. Like when you're approving a batch of search results for a term, let's say "File". So for this mass operations there's a special permission separate from the normal operations that can be give only to some people.

This feature is on the trunk and subject to change. Any opinions are welcomed.