| # The list of input methods that we support. The input methods metadata is |
| # also defined here. We use this data for the following purposes. |
| # |
| # 1. Exclude unnecessary input methods. For example, we don't need |
| # "ja:anthy", and "zh:pinyin" engines in ibus-m17n since we have better |
| # alternatives outside of ibus-m17n. Excluding these input methods from |
| # the IBus engine XML files, such as /usr/share/ibus/component/m17n.xml, |
| # makes the startup time of the IBus daemon faster. This filtering is |
| # done using a python script at build time of ibus-m17n. |
| # See crosbug.com/4161 for details. |
| # |
| # 2. Provide the input methods metadata to Chrome at build time. Chrome |
| # needs to know about the supported input methods for the input method |
| # features, such as the input method switching and the options page, |
| # to work. Note that we can retrieve the same metadata from the IBus |
| # daemon, but Chrome needs be able to get the metadata without talking |
| # to the IBus daemon. This requirement comes from the fact that the |
| # IBus daemon should not run if the user is just using keyboard layouts |
| # such as US keyboard. The metadata generation is done using a python |
| # script at build time of Chrome. See crosbug.com/16961 for details. |
| # |
| # The order of the list is important. In Chrome's "Languages and input" options |
| # page, we list input methods in this order, when more than one input methods |
| # are available for a language (ex. French). |
| # |
| # Each non-comment line contains the following tab-separated columns. |
| # |
| # 1) The input method ID used by Chrome. (ex. "xkb:ca::fra") You should *NEVER* |
| # change the ID since the ID might be written in user's ~/Preferences. For |
| # example, three-letter ISO 639-2/B codes are used for IDs start with "xkb:" |
| # for histrical reason, but we should not replace them with two-letter 639-1 |
| # codes that are currently in use in the 3rd column. |
| # 2) The keyboard layout ID used by XKB. (ex. "us", "us(dvorak)", "ca", |
| # "handwriting-vk,jp"). See also: /usr/share/X11/xkb/symbols. |
| # 3) The language code (ex. "fr"). Only one format, ISO 639-1 compliant two- |
| # letter language code which can be recognized by ICU, is allowed. Do not use |
| # three-letter ones (ISO 639-2/T and 639-2/B) here. For "en", "pt", and "zh", |
| # two-letter upper-case country code should be added (ex. "en-US", "zh-TW"). |
| # See http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes for details. |
| # 4) [optional] The #if condition for the input method. |
| # (ex. "defined(A)", "!defined(A)||defined(B)") |
| # |
| # Notes: |
| # When adding a line to this list, please also add a mapping from the input |
| # method ID to the keyboard overlay ID to INPUT_METHOD_ID_TO_OVERLAY_ID in |
| # |
| # * tools/gen_keyboard_overlay_data/gen_keyboard_overlay_data.py |
| # |
| # and update the following files by running this script. |
| # |
| # * chrome/app/generated_resources.grd |
| # * chrome/browser/resources/chromeos/keyboard_overlay_data.js |
| # * chrome/browser/ui/webui/chromeos/keyboard_overlay_ui.cc |
| # |
| # If you add an XKB layout which depends on X11's Mod3Mask (e.g. Germany Neo2 |
| # XKB layout), you should also update IsMod3UsedByCurrentInputMethod() method |
| # in chrome/browser/ui/ash/event_rewriter.cc. Otherwise, Mod3Mask might be |
| # removed unexpectedly by the rewriter. |
| # |
| # If you add a new language such that some of its layouts can be used at |
| # signin screen (e.g. it is "Full Latin Keyboard Layout" therefore allowing |
| # input of gmail password), you should also update |
| # kHasLatinKeyboardLanguageList[] in |
| # chrome/browser/chromeos/input_method/input_method_manager_impl_ll.cc |
| # |
| # If you add a new keyboard layout for existing language, please ensure |
| # that information in kHasLatinKeyboardLanguageList[] is still correct. |
| |
| # U.S. English |
| xkb:us::eng us en-US |
| xkb:us:intl:eng us(intl) en-US |
| xkb:us:altgr-intl:eng us(altgr-intl) en-US |
| xkb:us:dvorak:eng us(dvorak) en-US |
| xkb:us:colemak:eng us(colemak) en-US |
| # U.S. English entiries have to be above the Dutch entry so that xkb:us:intl:eng |
| # will be selected as the default keyboard when the UI language is set to Dutch. |
| |
| # Dutch |
| xkb:be::nld be nl |
| # We don't support xkb:nl::nld. See b/4430951. |
| |
| # French |
| xkb:fr::fra fr fr |
| xkb:be::fra be fr |
| xkb:ca::fra ca fr |
| xkb:ch:fr:fra ch(fr) fr |
| xkb:ca:multix:fra ca(multix) fr |
| |
| # German |
| xkb:de::ger de de |
| xkb:de:neo:ger de(neo) de |
| xkb:be::ger be de |
| xkb:ch::ger ch de |
| |
| # Japanese |
| # |kMozcJaInputMethodIds| in ibus_ui_controller.cc should also be updated when |
| # a new Mozc Japanese IME for another keyboard layout is added. |
| xkb:jp::jpn jp ja |
| |
| # Russian |
| xkb:ru::rus ru ru |
| xkb:ru:phonetic:rus ru(phonetic) ru |
| |
| # Keyboard layouts. |
| xkb:br::por br pt-BR |
| xkb:bg::bul bg bg |
| xkb:bg:phonetic:bul bg(phonetic) bg |
| xkb:ca:eng:eng ca(eng) en-CA |
| xkb:cz::cze cz cs |
| xkb:cz:qwerty:cze cz(qwerty) cs |
| xkb:ee::est ee et |
| xkb:es::spa es es |
| xkb:es:cat:cat es(cat) ca |
| xkb:dk::dan dk da |
| xkb:gr::gre gr el |
| xkb:il::heb il he |
| xkb:latam::spa latam es |
| xkb:lt::lit lt lt |
| xkb:lv:apostrophe:lav lv(apostrophe) lv |
| xkb:hr::scr hr hr |
| xkb:gb:extd:eng gb(extd) en-GB |
| xkb:gb:dvorak:eng gb(dvorak) en-GB |
| xkb:fi::fin fi fi |
| xkb:hu::hun hu hu |
| xkb:it::ita it it |
| xkb:is::ice is is |
| xkb:no::nob no nb |
| xkb:pl::pol pl pl |
| xkb:pt::por pt pt-PT |
| xkb:ro::rum ro ro |
| xkb:se::swe se sv |
| xkb:sk::slo sk sk |
| xkb:si::slv si sl |
| xkb:rs::srp rs sr |
| xkb:tr::tur tr tr |
| xkb:ua::ukr ua uk |
| xkb:by::bel by be |
| xkb:am:phonetic:arm am hy |
| xkb:ge::geo ge ka |
| xkb:mn::mon mn mn |
| # TODO(yusukes): Support xkb:latam:deadtilde:spa and/or xkb:latam:nodeadkeys:spa |
| # if necessary. |