Region & Language

Regional and locale settings, including display language, locale for formats (date, time, currency), keyboard layout, input method languages.


  • Select a display language.
  • Decide how formats should be displayed.
    • Someone might want currency and time to follow local convention, but use a display language that isn't native to that region.
  • Choose a list of input sources - either keyboard layouts or input methods.

Relevant Art



Locales are composed as <language>_<country> pairs. For example: en_US (English, United States), ja_JP (Japanese, Japan).

The language (LC_MESSAGES) and format settings (LC_TIME, LC_NUMERIC, LC_MONETARY, etc) are assigned a locale.

Since the format settings include a language, they can have a different language from the UI language (LC_MESSAGES). For example: dates can be displayed in a different language from the rest of the UI.

Only a subset of possible <language>_<country> combinations are available as locales. It isn't possible to offer a choice of any region for the formats setting, therefore: both the language and formats settings have to expose both the language and country elements of their locales.

Compose and Third Level Chooser Keys

  • The Compose and Third Level Chooser keys have similar roles, and having both present in the UI and documentation would be confusing
  • Both OS X and Windows 7 have an equivalent to the Third Level Chooser
  • The Third Level Chooser has suffered because of its name and a lack of documentation
  • The Third Level Chooser is not automatically mapped to the Right Alt or AltGr key

  • The characters accessed by the Third Level Chooser are often marked on keyboards
  • Compose is a great tool for confident users but could be intimating for others

I'm therefore proposing that we use the Third Level Chooser as the default method for inputting alternative characters. The Compose key can be made available by another means for those who want to use it.

A number of things need to happen to integrate the Third Level Chooser in this way:

  • Automatically map it to the AltGr key, if there is one (iBus seems to do this anyway)

  • Give it a different name. 'Alternative Characters Key', perhaps
  • Expose it in the keyboard shortcuts settings
  • Add it to the documentation page on using special characters
  • Improve the keyboard previews so people can learn how to use it - a mockup for this

Tentative Guidelines

Original Designs

When using XKB to manage multiple layouts and switching between them, there is a hard-to-lift restriction of at most 4 layouts that can be active at the same time. Instead, we should use a higher layer, namely IBus to switch between active input sources. In this scenario, only one XKB layout at a time is set, and the restriction on the number of active layouts no longer applies.

Change Proposals

Other updates to the current designs can be found here: /ChangeProposals

See Also

Design/SystemSettings/RegionAndLanguage (last edited 2019-12-18 14:11:24 by AllanDay)