LanguageSelectorImprovements

Differences between revisions 16 and 17
Revision 16 as of 2006-03-21 07:03:18
Size: 3290
Editor: fsproxy1
Comment: Typo fixes
Revision 17 as of 2006-06-08 11:48:50
Size: 3575
Editor: p54A6673E
Comment: updated for edgy
Deletions are marked like this. Additions are marked like this.
Line 12: Line 12:

There should only be one checkbox for the language-support (instead of the "translation" + "writing aids" we have now). This increases the required download so we need to make sure to tell the user beforehand how much it will be (for a possible solution to this see the ["LanguagePacksCD"] spec).
Line 36: Line 34:
 1. Per-User vs. Per-System setup
Line 39: Line 38:
The language-support-* packages depend on input methods and dictionaries. The language-support-* packages depend on input methods and dictionaries and the input method will be available by default for locales that need them (e.g. zh_CN). However some people will want a english default locale but still be able to input in e.g. japanese. To support this we need a "advanced" tab so that the user can select the input method he wants (we have the infrastructure via im-switch to do this on a per-system/per-user basis).
Line 43: Line 42:
We could have better fonts for some languages (e.g. Arabic). We need to evaluate what fonts are available and under what license we can use them. We could have better fonts for some languages (e.g. Arabic). We need to evaluate what fonts are available and under what license we can use them. We should also make the "fontconfig-voodoo" mechnasim available via the interface (e.g. via a advanced tab). This way people can optimize their font settings for e.g. chinese fonts.
Line 59: Line 58:

Summary

Language selector should offer more support than installing language-packs and setting /etc/environment. It should take care of setting a a system-wide keyboard and the required input methods, fonts and dictionaries as well.

Rationale

Once the system is installed it's not easy to add a new language, there is too much hand-holding needed and configurations that need to be changed by hand.

Use cases

Bob switched to dvorak and wants to have this layout system-wide.

The computer is used by a new user who speaks Arabic and wants fonts, input methods, dictionaries etc setup with a single step.

Scope

Language selector needs to be modified.

Design

There are various different goals here:

  1. Input methods
  2. Font selection
  3. Dictionaries
  4. Keyboard selection
  5. Per-User vs. Per-System setup

Input methods

The language-support-* packages depend on input methods and dictionaries and the input method will be available by default for locales that need them (e.g. zh_CN). However some people will want a english default locale but still be able to input in e.g. japanese. To support this we need a "advanced" tab so that the user can select the input method he wants (we have the infrastructure via im-switch to do this on a per-system/per-user basis).

Font selection

We could have better fonts for some languages (e.g. Arabic). We need to evaluate what fonts are available and under what license we can use them. We should also make the "fontconfig-voodoo" mechnasim available via the interface (e.g. via a advanced tab). This way people can optimize their font settings for e.g. chinese fonts.

Dictionaries

The language-support-* packages depend on the dictionaries.

Keyboard selection

  • The default keyboard layout should be automatically suggested from the selected language.
  • relationship between language and layout
  • simple list of those relationships to choose default
  • list includes only what is installed, rather than the entire set of languages (and you click 'add...' to install more)
  • unsure if there's a standard place to store the selection of relationships

Example how others do it: [http://www.muhammadanism.org/Unicode/text_services_input_languages_xp.gif XP-image]

Implementation

There are three things to do here:

  1. change gdm so that it reads a gconf (root) variable to setup its keyboard
  2. have a sensible way to configure the keyboard in language-selector
  3. make sure that the user gets the updated keyboard if he hasn't configured his own

gdm

The gdm keyboard setting can be applied using:

setxkbmap - layout ... -model ... -option .. -print | xkbcomp - :0.0

Finding available keyboard

The gnome-control-center keyboard capplet has code to figure the list of available keyboards and already maps keyboard layout and languages.

users keyboard

It should just work, if no settings are done by the user, the layout shouldn't be changed.

Code

Data preservation and migration

Outstanding issues

BoF agenda and discussion


CategorySpec

LanguageSelectorImprovements (last edited 2008-08-06 16:26:47 by localhost)