12.10

Differences between revisions 1 and 13 (spanning 12 versions)
Revision 1 as of 2012-04-01 02:56:49
Size: 4188
Editor: mightyiam
Comment:
Revision 13 as of 2012-04-04 12:26:45
Size: 5005
Editor: mightyiam
Comment:
Deletions are marked like this. Additions are marked like this.
Line 25: Line 25:
Subject: [Desktop12.10-Topic] RTL support from the ground up Subject: [Desktop12.10-Topic] RTL support
Line 29: Line 29:
Users of right to left (RTL) languages (locales) need their GUI's to perform mirroring. A good explanation of this is in the Chromium project[1]. We, the RTL Team, hope that RTL supoprt can be acknowledged as a requisite in Ubuntu Desktop.
Line 31: Line 31:
This support is usually delivered by the GUI toolkit so that developers of applications don't have to do much about it. GTK+ and Qt have sufficient RTL support. And we suggest that RTL will be given the required attention in this cycle in order to deliver a product that can be used in RTL languages. We believe that with a bit of help from the RTL team we can make 12.10 a release that can be used with RTL languages out of the box again.
Line 33: Line 33:
How many RTL users are there? Popcon from Sat Mar 31 07:17:47 2012 UTC: <<BR>>
language-pack-ar 22622<<BR>>
language-pack-he 11380<<BR>>
language-pack-fa 6294<<BR>>
language-pack-ur 4362<<BR>>
language-pack-dv 3736<<BR>>
language-pack-yi 3600<<BR>>
language-pack-ug 3303<<BR>>
language-pack-sd 2970<<BR>>
language-pack-ps 2136<<BR>>
language-pack-ks 1728<<BR>>
Total 62131
Implementing support for languages that are written from right to left (RTL), requires more than just translation. Since RTL users are accustomed to read from right to left, they naturally scan the UI from right to left. Essentially, they expect to see a mirror image of the UI (there are exceptions). So the UI's layout needs to be changed to facilitate this. For instance, text should be right aligned instead of left aligned, and checkboxes are placed to the right of their label instead of to the left of it, vertical scrollbars are on the left side instead of on the right side and so on. Here are some screenshots[1] and there's a good, more in-depth reading about this RTL mirroring at the Chromium project[2].

How many RTL users are there? Popcon from Sat Mar 31 07:17:47 2012 UTC:
 * language-pack-ar 22622
 * language-pack-he 11380
 * language-pack-fa 6294
 * language-pack-ur 4362
 * language-pack-dv 3736
 * language-pack-yi 3600
 * language-pack-ug 3303
 * language-pack-sd 2970
 * language-pack-ps 2136
 * language-pack-ks 1728
Total: 62131 RTL language-support packages.
Line 48: Line 50:
Even though Ubuntu has some RTL bugs[2], users have enjoyed a reasonably consistent RTL experience... until Unity came along. RTL languages speakers in the world:
 * Arabic: 300 Million
 * Persian: 110 Million
 * Urdu: 60 Million
 * Pashto: 50 Million
 * Kurdish: 16 Million
 * Sindhi: 21 Million
 * Hebrew: 8 Million
Total: 565 Million people!
(stats from Wikipedia)
Line 50: Line 61:
Unity, with it's underlying toolkit, Nux, don't have RTL mirroring support[3]. This means that RTL users get Unity rendered LTR while the rest of the desktop is RTL. Here's a screenshot[4]. Even though Ubuntu has some RTL bugs[3], users have enjoyed a reasonably consistent RTL experience; Qt and GTK+ have sufficient RTL support and so do Firefox and LibreOffice. RTL experience has dramatically changed since Unity became default session.
Line 52: Line 63:
Notice that, as explained in the Chromium project page that is linked above, in Nautilus, elements which are usually on the left, or aligned to the left, are now aligned to the right. That is how it would be in other GTK+ and Qt applications and Firefox and LibreOffice. Notice that Unity is still on the left side and that the panel is also exactly like in LTR. Unity, and Nux, it's underlying toolkit, don't have RTL mirroring support[4]. This means that RTL users get Unity rendered LTR while the rest of the desktop is RTL. Here's a screenshot[5]. Notice that Unity is still on the left side and that the panel is also exactly like in LTR.
Line 54: Line 65:
We, at the Ubuntu RTL Team[5], are both trying to fix this bug and, in the meantime, in order to provide a sane situation in precise, we are working on a fallback[6] from Unity to Unity 2D, which does already support RTL (because it is based on Qt). We, at the Ubuntu RTL Team[6], are both trying to develop RTL support (mainly Haggai Eran) and, in the meantime, in order to provide a sane situation in precise, we are working on a fallback[7] from Unity to Unity 2D (which already supports RTL).
Line 56: Line 67:
This bug in Unity should never have happened. RTL mirroring should have been included in the beginning of Unity's development. And the RTL users should have been participatory. By the way, this mistake was also done in Android, giving birth to the most popular issue on the tracker[8]. Unlike Ubuntu, Android's development is closed to the public. In Ubuntu we don't have this "excuse".
Line 58: Line 69:
This mistake was also done in Android, giving birth to the most popular issue on the tracker[7]. Android development is not open to the public. We don't have this excuse. The RTL community should have stepped in at the beginning of Ayatana. I hope that we will be able to participate more from now on.
Line 60: Line 71:
In order to keep RTL users happy what is needed is awareness to the needs of these special languages, the RTL languages, throughout the development process. We, at the Ubuntu RTL Team, are here to help and take part. Finally, here are some RTL resources for developers[9].
Line 62: Line 73:
  1. http://www.chromium.org/developers/design-documents/ui-mirroring-infrastructure
  2. https://launchpad.net/ubuntu/+bugs?field.tag=rtl
  3. https://bugs.launchpad.net/unity/+bug/654988
  4. https://bugs.launchpad.net/unity/+bug/654988/+attachment/2979647/+files/screenshot.png
  5. https://wiki.ubuntu.com/RTLTeam
  6. https://wiki.ubuntu.com/RTLTEAM/FallBackToUnity2D
  7. https://code.google.com/p/android/issues/detail?id=5597&sort=-stars
  1. https://wiki.ubuntu.com/RTLTeam/RTLScreenshots
  2. http
://www.chromium.org/developers/design-documents/ui-mirroring-infrastructure
  3. https://launchpad.net/ubuntu/+bugs?field.tag=rtl
  4. https://bugs.launchpad.net/unity/+bug/654988
  5. https://bugs.launchpad.net/unity/+bug/654988/+attachment/2979647/+files/screenshot.png
  6. https://wiki.ubuntu.com/RTLTeam
  7. https://wiki.ubuntu.com/RTLTEAM/FallBackToUnity2D
  8. https://code.google.com/p/android/issues/detail?id=5597&sort=-stars
  9. https://wiki.ubuntu.com/RTLTeam/RTLResources
Line 70: Line 83:
Thanks and Blessings,<<BR>> Thanks and Blessings,
Line 74: Line 88:

[[CategoryRTLTeam]]

Call for Action

At March 28, 2012, Jason Warner, Ubuntu Desktop Manager at Canonical Ltd., published a "Call for Topics" for Ubuntu 12.10 in the ubuntu-desktop mailing list.

This is an Opportunity

This is an opportunity to drive RTL considerations deep into the considerations of Ubuntu developers and particularly Ayatana developers.

It would be great if RTL could be represented at UDS.

Timeline

March 28th to April 30th: Discussions in the list.

May 1st to UDS: Desktop Team will present a review of topics in form of approved blueprints.

May 7th to May 11th: Ubuntu Developer Summit

Approx. two weeks post UDS: Desktop Team presents the 12.10 Plan Review

Our Topic Request

Here is a suggested Call for Topic to send to the ubuntu-desktop mailing list:

--- snip ---

Subject: [Desktop12.10-Topic] RTL support

Dear Friends,

We, the RTL Team, hope that RTL supoprt can be acknowledged as a requisite in Ubuntu Desktop.

And we suggest that RTL will be given the required attention in this cycle in order to deliver a product that can be used in RTL languages. We believe that with a bit of help from the RTL team we can make 12.10 a release that can be used with RTL languages out of the box again.

Implementing support for languages that are written from right to left (RTL), requires more than just translation. Since RTL users are accustomed to read from right to left, they naturally scan the UI from right to left. Essentially, they expect to see a mirror image of the UI (there are exceptions). So the UI's layout needs to be changed to facilitate this. For instance, text should be right aligned instead of left aligned, and checkboxes are placed to the right of their label instead of to the left of it, vertical scrollbars are on the left side instead of on the right side and so on. Here are some screenshots[1] and there's a good, more in-depth reading about this RTL mirroring at the Chromium project[2].

How many RTL users are there? Popcon from Sat Mar 31 07:17:47 2012 UTC:

  • language-pack-ar 22622
  • language-pack-he 11380
  • language-pack-fa 6294
  • language-pack-ur 4362
  • language-pack-dv 3736
  • language-pack-yi 3600
  • language-pack-ug 3303
  • language-pack-sd 2970
  • language-pack-ps 2136
  • language-pack-ks 1728

Total: 62131 RTL language-support packages.

Obviously, this number does not reflect the actual number of Ubuntu RTL users. One, less obvious reason for why it does not, is that many of the RTL users choose to set their Ubuntu Desktop language to an LTR language. This would mostly be a second language for them, like, English, for example. I would say that the vast majority of the more technical users do this.

RTL languages speakers in the world:

  • Arabic: 300 Million
  • Persian: 110 Million
  • Urdu: 60 Million
  • Pashto: 50 Million
  • Kurdish: 16 Million
  • Sindhi: 21 Million
  • Hebrew: 8 Million

Total: 565 Million people! (stats from Wikipedia)

Even though Ubuntu has some RTL bugs[3], users have enjoyed a reasonably consistent RTL experience; Qt and GTK+ have sufficient RTL support and so do Firefox and LibreOffice. RTL experience has dramatically changed since Unity became default session.

Unity, and Nux, it's underlying toolkit, don't have RTL mirroring support[4]. This means that RTL users get Unity rendered LTR while the rest of the desktop is RTL. Here's a screenshot[5]. Notice that Unity is still on the left side and that the panel is also exactly like in LTR.

We, at the Ubuntu RTL Team[6], are both trying to develop RTL support (mainly Haggai Eran) and, in the meantime, in order to provide a sane situation in precise, we are working on a fallback[7] from Unity to Unity 2D (which already supports RTL).

By the way, this mistake was also done in Android, giving birth to the most popular issue on the tracker[8]. Unlike Ubuntu, Android's development is closed to the public. In Ubuntu we don't have this "excuse".

The RTL community should have stepped in at the beginning of Ayatana. I hope that we will be able to participate more from now on.

Finally, here are some RTL resources for developers[9].

  1. https://wiki.ubuntu.com/RTLTeam/RTLScreenshots

  2. http://www.chromium.org/developers/design-documents/ui-mirroring-infrastructure

  3. https://launchpad.net/ubuntu/+bugs?field.tag=rtl

  4. https://bugs.launchpad.net/unity/+bug/654988

  5. https://bugs.launchpad.net/unity/+bug/654988/+attachment/2979647/+files/screenshot.png

  6. https://wiki.ubuntu.com/RTLTeam

  7. https://wiki.ubuntu.com/RTLTEAM/FallBackToUnity2D

  8. https://code.google.com/p/android/issues/detail?id=5597&sort=-stars

  9. https://wiki.ubuntu.com/RTLTeam/RTLResources

Thanks and Blessings,

Shahar and the RTL Team

--- snip ---

CategoryRTLTeam

RTLTeam/12.10 (last edited 2012-04-04 12:26:45 by mightyiam)