Closed Bug 1014535 Opened 10 years ago Closed 10 years ago

Localizations for updater hotfix

Categories

(Firefox :: General, defect)

x86
Windows XP
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: benjamin, Assigned: gps)

References

Details

Attachments

(3 files, 1 obsolete file)

For the updater hotfix, we want to provide localizations. Here are the strings from the UX bug 994882:

Three rotating doorhanger messages:
"Free upgrade: a new, faster Firefox is already downloaded and ready for you to use!"

"Your version of Firefox is out of date, which can put your computer and information at risk. A new, secure Firefox is ready for you to use for free!"

"Your version of Firefox is out of date, which makes it run slower. But don't worry; a new, faster Firefox is already downloaded and ready for you to use!"

Two buttons.

"Not now"

"Start using it right now!" <-- I'm worried this might be too long, but we'll see

Any remaining UI will be on SUMO and translated separately.

Here are the top locales with outdated Firefox users, ordered (ADI data from dataviz, I'm not sure why it's missing the full locale):
en
de
es
fr
ru
pt
pl
zh
it
ja
tr
hu
ar
cs
nl
vi
id
el
fi
sv
th

Axel or Chofmann can you help me figure out how to get these strings from the right communities for the hotfix?
Flags: needinfo?(l10n)
OS: Linux → Windows XP
Hardware: x86_64 → x86
Can you create a mock in html with those strings, with the right UI constraints? Then we could put them in pontoon, that would allow folks to actually localize them in a way that doesn't create surprising overflowing content.

CCing Matjaz. Matjaz, any recommended pratices to mark up the DOM to play nicely with pontoon?

It'd help if we knew these things before you need 'em. I recall asking, too.

Neither zh nor pt make sense, we don't have those as locale codes. pt might make sense a little bit, but zh needs to be two.
Flags: needinfo?(l10n)
For such small amount of strings, no additional markup is needed. A simple website with strings in .lang file format will be enough for Pontoon to detect them.

Example .lang file:
https://svn.mozilla.org/projects/mozilla.com/trunk/locales/en-GB/firefox/channel.lang
Axel, why are you snarking? This is the advance request, the feature isn't built yet.

I don't know anything about the .lang file format or how to use it; my entire experience is with product .properties/dtd files. Are there good docs or examples?
More details as requested by chofmann:

gps is implementing the doorhanger in English currently. Please let us know ASAP about whether the string "Start using it right now!" is too long.

Eventually all localizations will end up committed to https://hg.mozilla.org/releases/firefox-hotfixes/, but not until we're ready for staging. Until them localizations need to be collected elsewhere.

If necessary gps can provide the English strings as a .properties file attached to this bug.

We are hoping to be ready to ship no later than Friday 13-June, which means that we'd like to have the main translations by the end of next week (Friday 6-June).

We plan on providing the hotfix to everyone, so if there is not a translation we will fall back to English.
Flags: needinfo?(gps)
I didn't realize the time frame was so short, one week is probably not enough for several of those locales.

How long is this hotfix going to be proposed to users? Will locales still be able to provide a localization after Jun 13?
The hotfix will probably be active until Firefox 31 launches, so about 5-6 weeks. We don't have a plan to update it with new data after the initial launch.
Benjamin, I just created repository for localization with slightly modified list of locales (split zh, added pt-BR):
http://viewvc.svn.mozilla.org/vc/projects/l10n-misc/trunk/firefoxupdater/

Here's an example of .lang file that you'll need to convert to .properties:
http://viewvc.svn.mozilla.org/vc/projects/l10n-misc/trunk/firefoxupdater/sl/updater.lang?view=markup

I kept the original strings as suggested and noted in comments that localizers should keep the confirm button string short.

Could you create HTML mockup with the strings, with the right UI constraints? That would allow us to translate strings in-place and thus guarantee translations are not too long.

See an example here:
https://pontoon.mozillalabs.com/locale/de/project/Testpilot/
Here's the mockup. Please let me know if that's what you need.
Flags: needinfo?(m)
Benjamin, that is fan-tas-tic!
Flags: needinfo?(m)
Attached is a .properties file for the UI.

Please note that "Not now" has already been translated as part of the pop-up notifications feature.

Also note that I modified one of the "alternate" strings slightly to remove "is already downloaded" because that statement is not correct in the stub installer case. This reflects the distinction made in the original messages for full vs stub install and is thus consistent.
Flags: needinfo?(gps)
Ok, translations updated and localizers notified. Looks quite sexy in Pontoon:
http://cl.ly/image/3e3Q0N3W3K2D

The good news is 8 locales were already complete. The bad news is they aren't anymore. :)
I've started to import the translations into the hotfix add-on source: https://bitbucket.org/indygreg/firefox-hotfixes/commits/dd98a25f492288f4aadcfa7096cc09b57ec2b922?at=update-hotfix#chg-v20140527.01/locale/zh-TW/hotfix.properties.

I wrote a script for it, so I'll just refresh SVN periodically.
(In reply to Gregory Szorc [:gps] from comment #12)
> I've started to import the translations into the hotfix add-on source:
> https://bitbucket.org/indygreg/firefox-hotfixes/commits/
> dd98a25f492288f4aadcfa7096cc09b57ec2b922?at=update-hotfix#chg-v20140527.01/
> locale/zh-TW/hotfix.properties.
> 
> I wrote a script for it, so I'll just refresh SVN periodically.

I just updated French (http://viewvc.svn.mozilla.org/vc?view=revision&sortby=date&revision=129182 ), could you please check that non-breaking spaces are properly imported (before : in the French localization) and that our flag {ok} is not imported for the accesskey?
Is the accesskey used only for "Start using it right now!"? Because "Get the new version" doesn't have any I

From the XUL file it looks like a dropdown list, and "Not now" doesn't have an accesskey, so it seems a bit strange.
Flags: needinfo?(gps)
The access key is used for both install_full and install_stub from my uploaded .properties file. "Now now" is built into the PopupManager facility and is already translated as part of Firefox AFAICT.
Flags: needinfo?(gps)
The following locales have not yet been translated:

* fi
* sv
* th
* vi
* zh-CN

Axel: I'm not sure how to resolve this. Could you nudge the responsible parties or something?
Status: NEW → RESOLVED
Closed: 10 years ago
Flags: needinfo?(l10n)
Resolution: --- → FIXED
I didn't mean to close this.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Status: REOPENED → NEW
The only one on there which might be worth waiting on is zh-CN.
I'll file a bug for sv-SE and zh-CN, on the other 3 I don't have many hopes.

For sv-SE, the mistake was on our part, since we put the file in "sv" and there's no locale called "sv".
Flags: needinfo?(l10n)
Depends on: 1032684
Depends on: 1032686
As explained in comment 13, your import script needs to strip "{ok}" from the translation, and trim it.
https://bitbucket.org/indygreg/firefox-hotfixes/src/1aecc14ef0a61f2ff9d648476119b3dc4e633343/v20140527.01/locale/zh-TW/hotfix.properties?at=default

install.accesskey=i {ok}

should be just "i"
Flags: needinfo?(gps)
Attached patch Strip '{ok}' from translations (obsolete) — Splinter Review
Attachment #8448822 - Flags: review?(benjamin)
Assignee: nobody → gps
Status: NEW → ASSIGNED
The just-submitted patch handles {ok}.
Flags: needinfo?(gps)
I just saw comment #13 about non-breaking spaces. I'm not sure exactly what should happen here.

Could you please verify https://hg.mozilla.org/releases/firefox-hotfixes/file/e565ec993e1c/v20140527.01/locale/fr/hotfix.properties is correct?
Flags: needinfo?(tchevalier)
I'd also strip trailing/starting whitespaces
(In reply to Gregory Szorc [:gps] from comment #23)
> I just saw comment #13 about non-breaking spaces. I'm not sure exactly what
> should happen here.
> 
> Could you please verify
> https://hg.mozilla.org/releases/firefox-hotfixes/file/e565ec993e1c/v20140527.
> 01/locale/fr/hotfix.properties is correct?

The space between "gratuite" and ":" is not a regular space, but a non-breaking space. Just checked, we have the right character here https://hg.mozilla.org/releases/firefox-hotfixes/raw-file/e565ec993e1c/v20140527.01/locale/fr/hotfix.properties
Thanks!
Flags: needinfo?(tchevalier)
(In reply to Francesco Lodolo [:flod] from comment #24)
> I'd also strip trailing/starting whitespaces

The patch strips whitespace around "{ok}". Stripping the entire string itself results in no change to the output.
You may want to trim whitespace around strings just before injecting them in the properties file, especially for access key. I remember seeing in the past an accesskey not working for a locale in Firefox because the letter for the access key had a trailing space. Maybe our platform code now handles trailing spaces on accesskeys but better safe than sorry :)
Attachment #8448826 - Flags: review?(benjamin)
Attachment #8448822 - Attachment is obsolete: true
Attachment #8448822 - Flags: review?(benjamin)
FWIW, I'm not familiar with the quirks of translation, .properties files, etc. Thank you everyone for providing all the pointers so far!

If there are any more quirks you can think of and want to audit things, you can find the properties files at https://hg.mozilla.org/releases/firefox-hotfixes/file/default/v20140527.01/locale.
I haven't checked in the just-uploaded patch (which strips {ok}) yet.
Attachment #8448826 - Flags: review?(benjamin) → review+
Benjamin: We got the simplified Chinese translation. Should we wait on the others or close this out?
Flags: needinfo?(benjamin)
Do not wait. If we get more before the AMO staging issues are resolved, we can take them, but it's not required.
Flags: needinfo?(benjamin)
I don't think this bug is continuing to provide any benefit. Closing it out.
Status: ASSIGNED → RESOLVED
Closed: 10 years ago10 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: