Closed Bug 1119889 Opened 9 years ago Closed 9 years ago

Add langpack metadata resource file

Categories

(Firefox OS Graveyard :: Gaia::L10n, defect)

x86
macOS
defect
Not set
normal

Tracking

(b2g-v2.1S fixed, b2g-v2.2 fixed, b2g-master fixed)

RESOLVED FIXED
2.2 S4 (23jan)
Tracking Status
b2g-v2.1S --- fixed
b2g-v2.2 --- fixed
b2g-master --- fixed

People

(Reporter: zbraniecki, Assigned: zbraniecki)

References

Details

Attachments

(1 file)

With langpacks we have a need to have three new pieces of information:

 - english name/desc of the langpack
 - localized name/desc of the langpack
 - localized name of the language

Those bits should come from the localizer, so we'd like to add a file:

 /shared/locales/langpack/dec.properties

with the following content:

langpack.name = 
langpack.description =
langpack_enUS.name =
langpack_enUS.description =
language.name =

and comments explaining where the strings will be used.
Assignee: nobody → gandalf
Status: NEW → ASSIGNED
Attached file pull request
Can you guys confirm that the file looks good and has all the data we want for the marketplace and Settings?
Attachment #8546764 - Flags: review?(wclouser)
Attachment #8546764 - Flags: review?(stas)
Attachment #8546764 - Flags: review?(francesco.lodolo)
I'm not completely sure I understand the full context just by reading the comments in the file.

Are all of these strings (or some) supposed to be adapted to the locale (e.g. refer to "Italian" for 'it')? In that case it definitely needs a clear comment (last one sort of has, but I'd be more explicit with actual examples). I would also avoid using "English (US)", because a lot of locales would simply translate the name.

What's the purpose of the 2 langpack_enUS.* strings? If they're supposed to be a localized name/description for the English (US) language pack, do we really want to localize them? If I'm searching for the en-US language pack, I'm supposed to understand the language, so maybe having them in a different language could be even confusing.

Last question: shouldn't the file be called desc.en-US.properties?
(In reply to Francesco Lodolo [:flod] from comment #2)
> I'm not completely sure I understand the full context just by reading the
> comments in the file.
> 
> Are all of these strings (or some) supposed to be adapted to the locale
> (e.g. refer to "Italian" for 'it')? In that case it definitely needs a clear
> comment (last one sort of has, but I'd be more explicit with actual
> examples). I would also avoid using "English (US)", because a lot of locales
> would simply translate the name.

Sure, can you help me word the comments properly?


> What's the purpose of the 2 langpack_enUS.* strings? If they're supposed to
> be a localized name/description for the English (US) language pack, do we
> really want to localize them? If I'm searching for the en-US language pack,
> I'm supposed to understand the language, so maybe having them in a different
> language could be even confusing.

The purpose is to display the langpack name/description in en-US if the user is not browsing the marketplace using the locale of the langpack.

Say, if you're browsing in italian, your italian langpack will use italian name/description. But polish, french and german langpacks will use english name/desc.

> Last question: shouldn't the file be called desc.en-US.properties?

It should!
As an example, polish version would look like this:

langpack.name = Polska paczka językowa
langpack.description = Paczka językowa dla {{ brandShortName }}
langpack_enUS.name = Polish language pack
langpack_enUS.description = A package providing Polish localization of {{ brandShortName }}.
language.name = Polski
Thanks, with the example is much clearer. I'd go with something like this.

###
# The name of the langpack and its description will be displayed to the user
# when browsing the list of language packs on the marketplace and during
# installation.
#
# IMPORTANT: these strings need to be adapted to your language, not simply 
# translated. "Locale" needs to be replaced with the localized version 
# of your language name: "Italiano" for Italian, "Polski" for Polish, etc. 
# Add the region if it's relevant for your locale, e.g. "English (US)".
###
langpack.name = Locale Language Pack
langpack.description = A package providing a localization for Locale of {{ brandShortName }}.
language.name = Locale

To be honest I don't think English text should be part of a localized file: it will be translated 9 times out of 10, and it should be easy to manage in some automated way. E.g. "A language pack providing localization for %S", with %S generated from a list of languages in English.

Might be worth asking Pike's opinion too.
Comment on attachment 8546764 [details] [review]
pull request

Flod, I updated the file. I don't think I should pretend that en-US file is some "template file". It is an en-US langpack file that we will use for building en-US Language Pack, so I need to use "English (US)" in it instead of your "Locale".

Pike: your opinion?
Attachment #8546764 - Flags: feedback?(l10n)
Comment on attachment 8546764 [details] [review]
pull request

I left some comments in the PR, but I tend to agree, we shouldn't make the strings in en-US not work for English (US).

I'm torn on the details of English, might be good to get a copy review.
Attachment #8546764 - Flags: feedback?(l10n) → feedback+
Comment on attachment 8546764 [details] [review]
pull request

We talked on IRC.  It sounds like this is doing what is expected by Marketplace.  (This is a source for the manifest, which is actually what the Marketplace will be looking at)
Attachment #8546764 - Flags: review?(wclouser) → review+
Comment on attachment 8546764 [details] [review]
pull request

(In reply to Zibi Braniecki [:gandalf] from comment #6)
> Flod, I updated the file. I don't think I should pretend that en-US file is
> some "template file". It is an en-US langpack file that we will use for
> building en-US Language Pack, so I need to use "English (US)" in it instead
> of your "Locale".

Didn't think of that :-\

Anyhow, someone will have to keep an eye on these strings and file bugs. Because we'll have bugs, and some language packs claiming to be English in their descriptions.
Attachment #8546764 - Flags: review?(francesco.lodolo) → review+
Comment on attachment 8546764 [details] [review]
pull request

Left comments on github.  Pasting them below:

Maybe use the standard LOCALIZATION_NOTE header here and before each group of strings in this file, in case tools rely on it to parse localization comments?

Could we name the keys as follows?

  langpack.native.name
  langpack.native.description
  langpack.english.name
  langpack.english.description

I think this makes them clearer.  You can also use dashes instead of dots.
Attachment #8546764 - Flags: review?(stas) → review+
Comment on attachment 8546764 [details] [review]
pull request

[Approval Request Comment]
[Bug caused by] (feature/regressing bug #): bug 1107341
[User impact] if declined: no way for localizers to provide langpack name/desc
[Testing completed]: It's a new file, not part of the build.
[Risk to taking this patch] (and alternatives if risky): It's a new file that is not packaged into the build. No risk.
[String changes made]:
New strings for langpack manifest file.
Attachment #8546764 - Flags: approval-gaia-v2.2?(bbajaj)
Attachment #8546764 - Flags: approval-gaia-v2.2?(bbajaj) → approval-gaia-v2.2+
2.2: https://github.com/mozilla-b2g/gaia/commit/5b8da984acad60d2232b0e49147545184a83422e
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → 2.2 S4 (23jan)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: