Closed
Bug 1092387
(iosl10n)
Opened 10 years ago
Closed 9 years ago
[META] IOS-7 - L10N - Support localization into a core set of languages (EFIGS)
Categories
(Firefox for iOS :: General, defect, P5)
Tracking
()
RESOLVED
FIXED
People
(Reporter: bnicholson, Assigned: st3fan)
References
(Depends on 1 open bug)
Details
Before we can jump into all the upcoming iOS work, we need a plan for localization. Some things to figure out:
* How do we reuse strings? For instance, how could we share a string between a storyboard and code to toggle its label? Or how could we use the same string across multiple storyboards?
* What's the process for extracting strings? genstrings?
* Can/should we integrate with the same l10n tools we use for Android for localizers to use? What format must be the strings files be in to use those tools?
After some light experimentation with different options, the most straightforward approach to me would be to exclusively use NSLocalizedString (e.g., extract strings only from code, not storyboards). This solves the reuse problem, and allows us to create our own string bundle-like class to contain all strings. Of course, this limits the usefulness of storyboards/xibs since the strings wouldn't be visible in the GUI.
Alternatively, if the team is interested in storyboards as part of the normal development process, it would useful to see a storyboard-based demo project using localizations, with the above questions answered, so we have a pattern to follow.
Reporter | ||
Comment 1•10 years ago
|
||
Stefan, I think you said you were going to look into this (specifically, figuring out how to share strings between code and storyboards). Any luck?
Flags: needinfo?(sarentz)
Comment 2•10 years ago
|
||
I'd really like to get input from Axel and Jeff before we commit to a particular avenue.
I know that there are lots of tools hanging around, and it might be premature to assume that we should take the same .properties/.dtd-style approach that we use for Fennec.
So chaps: what localization mechanism, ending up in-tree (but not necessarily starting there) would work best for you?
Flags: needinfo?(l10n)
Flags: needinfo?(jbeatty)
Comment 3•10 years ago
|
||
I'll be on PTO next week, and then I'll need to get back to work and start investigating, so it's probably going to be two weeks or so 'til I can come back with something. Which might just be questions.
Keeping the needinfo around.
Updated•10 years ago
|
Summary: Add localization support to iOS apps → (ios) Add localization support to iOS apps
Assignee | ||
Comment 4•10 years ago
|
||
I'd like to do a little experiment too and rediscover how localization works on iOS. Things have changed a lot since Firefox Home. We used to do things on https://localize.mozilla.org .. at least I think so .. the name Verbatim sounds familiar. I can't find the Home project there anymore though.
That said, I am strongly in favor of:
* Not fighting Apple's tools
* ... yet, integrating with the best localization tool we use at Mozilla
* Using Xcode to manage Storyboards and Xibs for visual layout as much as possible
* ... accept that a likely a *very* small subset of strings may be duplicated and just live with that
I think it will be a mistake to already give up on Storyboards or Xibs completely just based on a possible duplicate strings issue.
(I would rather see us find a balance between those things that absolutely need to be done in code while keeping most high level views in Xibs. It will allow us to more easily design, including for Size Classes and to let the whole team participate in the design process except just those of us who know how to code.)
Flags: needinfo?(sarentz)
Comment 5•10 years ago
|
||
While it may not have much overlap with l10n, I do like the idea Brian mentioned about doing more of the UI creation in code. He mentioned a DSL called Masonry that allowed more of the UI constraint logic to be expressed in code rather than through storyboards. I like being able to look at code and understand it, without needing to fire up an IDE and open the right panels.
Comment 6•10 years ago
|
||
Stefan, do you have pointers to docs to read when I'm back?
Comment 7•10 years ago
|
||
Flagging a needinfo for Stefan exlicitly, it'd be great if you had recommended docs to read for someone that never ever did anything iOS related.
Flags: needinfo?(l10n) → needinfo?(sarentz)
Assignee | ||
Comment 8•10 years ago
|
||
Hi Axel, this is probably a good starting point:
https://developer.apple.com/library/ios/documentation/MacOSX/Conceptual/BPInternational/Introduction/Introduction.html
Flags: needinfo?(sarentz)
Updated•10 years ago
|
Group: mozilla-employee-confidential
Product: Firefox for Android → Firefox for iOS
Version: Trunk → unspecified
Assignee | ||
Comment 9•10 years ago
|
||
Assigning this to myself. This does not have the highest priotity at the moment but I am working on figuring out all the steps involved to make this as smooth as possible.
Initial notes are in https://github.com/st3fan/LocalizationTest/blob/master/README.md
Assignee: nobody → sarentz
Comment 10•10 years ago
|
||
(In reply to Stefan Arentz [:st3fan] from comment #9)
> Initial notes are in
> https://github.com/st3fan/LocalizationTest/blob/master/README.md
Please allow localizing via vcs and don't force verbatim/localize.mozilla.org, pretty please.
Comment 11•10 years ago
|
||
Stefan: locamotion.mozilla.org is the Pootle platform used for localization. Verbatim is used for web content.
Many teams use Pootle as their primary translation tool. Some edit native source files they clone from vcs, but the number of those teams working in that fashion is in decline. More and more are moving toward localization tools that enable collaborative work, translation memory, terminology management, and other features. That being said, we will need to accommodate both workflows for the l10n teams to actively participate.
Could you go into more detail about your objections to Pootle for this project?
Flags: needinfo?(jbeatty)
Comment 12•10 years ago
|
||
(In reply to Stefan Plewako [:stef] from comment #10)
> (In reply to Stefan Arentz [:st3fan] from comment #9)
> > Initial notes are in
> > https://github.com/st3fan/LocalizationTest/blob/master/README.md
>
> Please allow localizing via vcs and don't force
> verbatim/localize.mozilla.org, pretty please.
(In reply to Jeff Beatty [:gueroJeff] from comment #11)
> Stefan: locamotion.mozilla.org is the Pootle platform used for localization.
> Verbatim is used for web content.
localize.mozilla.org is explicitly mentioned in initial notes
> Could you go into more detail about your objections to Pootle for this
> project?
I don't think it is the right place to discuss l10n tools pros and cons and I'm not objecting Pootle or any other tool. I'm objecting personal views as a base to force one tool (esp without proper discussion) - ie for pl, the tool that enables collaborative work, translation memory, terminology management, and other features is vcs.
Comment 13•10 years ago
|
||
(In reply to Stefan Plewako [:stef] from comment #12)
> (In reply to Stefan Plewako [:stef] from comment #10)
> > (In reply to Stefan Arentz [:st3fan] from comment #9)
> > > Initial notes are in
> > > https://github.com/st3fan/LocalizationTest/blob/master/README.md
> >
> > Please allow localizing via vcs and don't force
> > verbatim/localize.mozilla.org, pretty please.
>
> (In reply to Jeff Beatty [:gueroJeff] from comment #11)
> > Stefan: locamotion.mozilla.org is the Pootle platform used for localization.
> > Verbatim is used for web content.
>
> localize.mozilla.org is explicitly mentioned in initial notes
>
> > Could you go into more detail about your objections to Pootle for this
> > project?
>
> I don't think it is the right place to discuss l10n tools pros and cons and
> I'm not objecting Pootle or any other tool. I'm objecting personal views as
> a base to force one tool (esp without proper discussion) - ie for pl, the
> tool that enables collaborative work, translation memory, terminology
> management, and other features is vcs.
We'll continue the policy of keeping toolchains and workflows open.
Updated•10 years ago
|
Summary: (ios) Add localization support to iOS apps → [META] IOS-7 - L10N - Support localization into a core set of languages (EFIGS)
Updated•10 years ago
|
Priority: -- → P5
Assignee | ||
Updated•10 years ago
|
Alias: iosl10n
Updated•10 years ago
|
Depends on: fxios-l10n
Updated•9 years ago
|
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•