Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

How to start a localization?

1 view
Skip to first unread message

Filip Miletic

unread,
Nov 14, 2006, 8:17:41 PM11/14/06
to
Hello all:

I am setting up a workspace for a localization of firefox and
thunderbird and am reading through
http://developer.mozilla.org/en/docs/Create_a_new_localization

I have questions though, and hope this is not unusual given that the
said document is in the draft phase and incomplete.

Which tag should I use to check the l10n related files out from the CVS?
The example in the above document says it should be MOZILLA_1_8_BRANCH.
Is this still current?

What happens if one checks out both 'browser' and 'mail' one after the
other? Is the l10n/ directory obtained this way consistent? Checking
out 'mail' after 'browser' produces errors along the lines 'directory
already exists'.

Is the locale name that consists only of the language code enough, or
should the country code be appended too?

Advice appreciated,
f

Axel Hecht

unread,
Nov 14, 2006, 9:31:59 PM11/14/06
to
Filip Miletic wrote:
> Hello all:
>
> I am setting up a workspace for a localization of firefox and
> thunderbird and am reading through
> http://developer.mozilla.org/en/docs/Create_a_new_localization
>
> I have questions though, and hope this is not unusual given that the
> said document is in the draft phase and incomplete.
>
> Which tag should I use to check the l10n related files out from the CVS?
> The example in the above document says it should be MOZILLA_1_8_BRANCH.
> Is this still current?

Yes, and that is part of that document that I actually should keep up to
date.

> What happens if one checks out both 'browser' and 'mail' one after the
> other? Is the l10n/ directory obtained this way consistent? Checking
> out 'mail' after 'browser' produces errors along the lines 'directory
> already exists'.

That shouldn't happen, though I'm not sure I ever tested. You should be
able to set your environment to just use "browser,mail", though, and be
done with it.

> Is the locale name that consists only of the language code enough, or
> should the country code be appended too?
>

That depends on your locale, actually. If there is a reasonable scenario
where there's going to be a significantly different localization in the
same language for a different region, yes, you want to include the
region. Otherwise likely not. Name your locale and I'll cast my vote.

Axel, who's actually glad to get feedback on that doc.

Filip Miletic

unread,
Nov 14, 2006, 10:16:20 PM11/14/06
to
Axel Hecht wrote:
>> The example in the above document says it should be MOZILLA_1_8_BRANCH.
>> Is this still current?
> Yes, and that is part of that document that I actually should keep up to
> date.
It would be very nice to specify somewhere near this text, a date tag
(or otherwise) at which the text was last known to be current.

> That shouldn't happen, though I'm not sure I ever tested. You should be
> able to set your environment to just use "browser,mail", though, and be
> done with it.

At the end of this message I attached the report I get by creating a
locale first for the 'browser', and then for the 'mail'.

OTOH, doing a
MOZ_CO_PROJECT=browser,mail make -f tools/l10n/l10n.mk create-sr
that you recommend made the locale without errors.

> That depends on your locale, actually. [...]


> Name your locale and I'll cast my vote.

The locale I am interested in is sr-RS. There might be interest in
sr-BA, sr-MN, as well as the now obsolete sr-CS and sr-YU. What are the
criteria for being allowed to drop the country code for a locale?

Note:
1) I have no clue whether significant differences exist e.g. between
sr-RS and sr-BA because I rarely have the opportunity to deal with sr-BA
in real life.
2) I don't know whether all of the mentioned locales really apply, i.e.
is there something as sr-MN at all; and
3) I would be happiest just to work on sr-RS because in part the
relationship between sr, sr-RS, sr-BA, sr-MN etc is a political one and
I don't want to get involved in that.

(for your reference: https://bugzilla.mozilla.org/show_bug.cgi?id=283456 )

> Axel, who's actually glad to get feedback on that doc.

No problem. I will try to take notes as I go and feed the remarks back.

f

ps: the log for sequentially checking out first the browser, then mail.
The log excerpt is seen to end with some '... already exists' messages.
It was not clear for me whether the resulting checkout missed some
files or not.

> [filip@cow mozilla]$ MOZ_CO_PROJECT=browser make -f tools/l10n/l10n.mk create-sr
> for mod in browser dom extensions/reporter extensions/spellcheck netwerk other-licenses/branding/firefox security/manager toolkit; do \
> if test -d /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod; then \
> echo /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod already exists; \
> else \
> echo Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod from /home/filip/personal/l10n/orig/mozilla/$mod/locales/en-US; \
> mkdirhier ../l10n/sr/$mod; \
> cp -r /home/filip/personal/l10n/orig/mozilla/$mod/locales/en-US/* /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod; \
> find /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod -name CVS | xargs rm -rf; \
> fi; \
> done;
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/browser from /home/filip/personal/l10n/orig/mozilla/browser/locales/en-US
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/dom from /home/filip/personal/l10n/orig/mozilla/dom/locales/en-US
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/extensions/reporter from /home/filip/personal/l10n/orig/mozilla/extensions/reporter/locales/en-US
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/extensions/spellcheck from /home/filip/personal/l10n/orig/mozilla/extensions/spellcheck/locales/en-US
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/netwerk from /home/filip/personal/l10n/orig/mozilla/netwerk/locales/en-US
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/other-licenses/branding/firefox from /home/filip/personal/l10n/orig/mozilla/other-licenses/branding/firefox/locales/en-US
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/security/manager from /home/filip/personal/l10n/orig/mozilla/security/manager/locales/en-US
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/toolkit from /home/filip/personal/l10n/orig/mozilla/toolkit/locales/en-US
> [filip@cow mozilla]$ MOZ_CO_PROJECT=mail make -f tools/l10n/l10n.mk create-sr
> for mod in dom editor/ui extensions/spellcheck mail netwerk other-licenses/branding/thunderbird security/manager toolkit; do \
> if test -d /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod; then \
> echo /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod already exists; \
> else \
> echo Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod from /home/filip/personal/l10n/orig/mozilla/$mod/locales/en-US; \
> mkdirhier ../l10n/sr/$mod; \
> cp -r /home/filip/personal/l10n/orig/mozilla/$mod/locales/en-US/* /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod; \
> find /home/filip/personal/l10n/orig/mozilla/../l10n/sr/$mod -name CVS | xargs rm -rf; \
> fi; \
> done;
> /home/filip/personal/l10n/orig/mozilla/../l10n/sr/dom already exists
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/editor/ui from /home/filip/personal/l10n/orig/mozilla/editor/ui/locales/en-US
> /home/filip/personal/l10n/orig/mozilla/../l10n/sr/extensions/spellcheck already exists
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/mail from /home/filip/personal/l10n/orig/mozilla/mail/locales/en-US
> /home/filip/personal/l10n/orig/mozilla/../l10n/sr/netwerk already exists
> Creating /home/filip/personal/l10n/orig/mozilla/../l10n/sr/other-licenses/branding/thunderbird from /home/filip/personal/l10n/orig/mozilla/other-licenses/branding/thunderbird/locales/en-US
> /home/filip/personal/l10n/orig/mozilla/../l10n/sr/security/manager already exists
> /home/filip/personal/l10n/orig/mozilla/../l10n/sr/toolkit already exists

Axel Hecht

unread,
Nov 16, 2006, 5:40:07 PM11/16/06
to

Well, even -RS is subject to politics, so let's just use 'sr' and you
can blame the Germans (me) for messing that up yet another time ;-)

> (for your reference: https://bugzilla.mozilla.org/show_bug.cgi?id=283456 )
>
>> Axel, who's actually glad to get feedback on that doc.
> No problem. I will try to take notes as I go and feed the remarks back.
>
> f
>
> ps: the log for sequentially checking out first the browser, then mail.
> The log excerpt is seen to end with some '... already exists' messages.
> It was not clear for me whether the resulting checkout missed some
> files or not.
>

You're not actually checking out anymore, but creating your locale over
and over. You only want to do that once.

After that, you should only have to check out en-US until you actually
have your locale in CVS.

Axel

Marek Stępień

unread,
Nov 16, 2006, 6:01:55 PM11/16/06
to
Filip Miletic napisał:

> 2) I don't know whether all of the mentioned locales really apply, i.e.
> is there something as sr-MN at all; and

Yeah, I don't think there are many people speaking Serbian in Mongolia
(MN). ;-))

--
Marek Stępień <marcoos at aviary dot pl>
Aviary.pl Team

Filip Miletic

unread,
Nov 16, 2006, 7:53:00 PM11/16/06
to
Marek Stępień wrote:
> Yeah, I don't think there are many people speaking Serbian in Mongolia
> (MN). ;-))
There are some, but not enough to warrant a separate locale. sr-ME
(Montenegro, http://en.wikipedia.org/wiki/Montenegro ) was what I meant
to write. The given Wikipedia page may shed some light what I'm
pondering about.

f

Filip Miletic

unread,
Nov 16, 2006, 8:07:59 PM11/16/06
to
Axel Hecht wrote:
> Well, even -RS is subject to politics, so let's just use 'sr' and you
> can blame the Germans (me) for messing that up yet another time ;-)

Ok, 'sr' it is.

> You're not actually checking out anymore, but creating your locale over
> and over. You only want to do that once.
>
> After that, you should only have to check out en-US until you actually
> have your locale in CVS.

Thanks for the instructions.

But of course, having done that I started the automatic question
generator (sorry:) so I'll be reverting often.

Is there a checklist of things that need to be done to complete the
localization? Apart from the obvious that is, which is translating the
properties, the dtds and whatnot.

Finally, some questions from your friendly automatic question generator:

- What language label should I put for MOZ_LANG_TITLE: Serbian, or Српски?
- Should I change ab-CD tags throughout to sr-RS?
- How can I find a fairly complete locale to learn from an example? (I
suppose bonsai is the answer, but I'd be grateful to get a pointer to a
well-done locale so that I don't drift around too much.)

Thanks
f

Axel Hecht

unread,
Nov 16, 2006, 8:31:26 PM11/16/06
to
Filip Miletic wrote:
> Axel Hecht wrote:
>> Well, even -RS is subject to politics, so let's just use 'sr' and you
>> can blame the Germans (me) for messing that up yet another time ;-)
>
> Ok, 'sr' it is.
>
>> You're not actually checking out anymore, but creating your locale over
>> and over. You only want to do that once.
>>
>> After that, you should only have to check out en-US until you actually
>> have your locale in CVS.
>
> Thanks for the instructions.
>
> But of course, having done that I started the automatic question
> generator (sorry:) so I'll be reverting often.
>
> Is there a checklist of things that need to be done to complete the
> localization? Apart from the obvious that is, which is translating the
> properties, the dtds and whatnot.

Yes, for the not-so-easy stuff, the best document today is
http://wiki.mozilla.org/Firefox2/L10n_Requirements.
There are a bunch of common pitfalls,
http://developer.mozilla.org/en/docs/Encodings_for_localization_files
talks about encodings and friends.
And you want to be careful about translating CSS lengths as well as
values like "true", "false" etc. Those may actually be values in a set
of english words.

> Finally, some questions from your friendly automatic question generator:
>
> - What language label should I put for MOZ_LANG_TITLE: Serbian, or Српски?

Good questions, other localizers may know better ad-hoc.

> - Should I change ab-CD tags throughout to sr-RS?

No, just "sr", unless it is @ab-CD@ or so (the two @ being key), then it
is just a variable which is going to be replaced by the build system.

> - How can I find a fairly complete locale to learn from an example? (I
> suppose bonsai is the answer, but I'd be grateful to get a pointer to a
> well-done locale so that I don't drift around too much.)

http://lxr.mozilla.org/l10n-mozilla1.8/source, pick your favorite.

Axel

Marek Stępień

unread,
Nov 17, 2006, 5:13:29 AM11/17/06
to
Axel Hecht napisał:

>> - What language label should I put for MOZ_LANG_TITLE: Serbian, or
>> Српски?
> Good questions, other localizers may know better ad-hoc.

http://lxr.mozilla.org/l10n-mozilla1.8/search?string=MOZ_LANG_TITLE

Some put the English name of their language here, others - the native name.

Looking at this:
http://lxr.mozilla.org/mozilla1.8/source/browser/locales/generic/install.rdf#46
I suppose the English name is more correct here, but on the other hand,
the thing that "Language Pack" is hard coded seems like a bug to me...

0 new messages