Missing l18n support

Bug #189087 reported by Rusty Lynch
4
Affects Status Importance Assigned to Milestone
Moblin Multimedia
Fix Released
Critical
Rusty Lynch

Bug Description

Moblin-media app is missing proper internationalization (l18n) support.

Even if a localized language pack was created for moblin-media, and if that language pack was installed with the system environment set to a local that matched the language pack, the user would still only see English text in any of the UI elements.

Tags: bugfest
Changed in moblin-multimedia:
assignee: nobody → rusty-lynch-intel
importance: Undecided → Critical
milestone: none → m9
status: New → In Progress
Revision history for this message
Rusty Lynch (rusty-lynch-intel) wrote :

Basic internationalization support has been released in version 0.34. Since no translations are available yet (i.e. this bug is for basic internationalization support, not localization for any given region), I have added a testing translation file in moblin-media/po/test.po.

To use test.po, create a moblin-media.mo file by doing:
$ msgfmt -o moblin-media.mo test.po

Then, copy the mo file to the current locale directory. As of this entry, the default moblin image is setup with local en_GB, so the mo file needs to be copied to the /usr/share/locale/en_GB/LC_MESSAGES/ directory. All visible strings should contain LANG-TEST-STRING.

NOTE: The default gtk buttons pick up their translations from the GNOME mo files, so the 'OK', 'Cancel', 'Yes', 'No' (and a few others I can no think of right now) will not pick up any of the test translations.

NOTE: Please create new bug reports for each specific string that is not translated instead of re-opening this bug as a catch-all for any existing or future translation bugs

Changed in moblin-multimedia:
status: In Progress → Fix Released
Revision history for this message
yanglei (lei-a-yang) wrote :

Rusty, I read your test about the i18n support.
I think it is not complete test method.
Your method is just cover the string replacement. But we cannot test if the application can set language based on current domain environment.
when testing, we need to change our test environment to other language. And then, we can use the related .mo file and launch applications to check if the interpretation is OK.

For general applications, the method using i18n and l10n are:
1) in application initialization codes, programmer should call API to get current language environment and set domain according env (like setlocale, bindtextdomain in C)
2) in other application codes, programmer should call macro to invoke all the strings/time/number-format... which he want to interpret.
the above steps should be called as internationalization.
3) when finish application programming, programmer should create .po and .mo files based on the app source codes with gettext tool

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.