LanguageSelectorImprovements
Launchpad Entry: https://launchpad.net/distros/ubuntu/+spec/language-selector-improvements
Created: Date(2005-12-09T17:14:17Z) by MichaelVogt
Contributors: MichaelVogt
Packages affected: language-selector
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.
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).
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:
- Input methods
- Font selection
- Dictionaries
- Keyboard selection
Input methods
The language-support-* packages depend on input methods and dictionaries.
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.
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:
- change gdm so that it reads a gconf (root) variable to setup its keyboard
- have a sensible way to configure the keyboard in language-selector
- 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