OLPC Khmer Keyboard
OLPC keyboard layouts
Changing the language of the keyboard is independent of changing the language currently displayed. The language currently displayed can be changed by using the Language section of the Sugar Control Panel.
Membrane keyboard layouts
English (US international); Spanish (Latin America); Portuguese (Brazilian); Amharic (Ethiopic); Arabic; Nigerian (Igbo, Hausa, Yoruba); French; Thai; Urdu; Cyrillic (Russian); Turkish; Nepali; Mongolian; Kazakh; Devanagari; Uzbek; Pashto; Dari; Armenian; Khmer; Pulaar; Italian; Kreyòl; German; Chinese (Simplified); OLPC AZERTY
Non-membrane keyboard layouts
Blank Keyboard Artwork
Artwork defining the inner dimensions of the membrane keyboard is available here: keyboard-blank.svg
- NB: Please be aware that changes to this keyboard are in discussion. See this localization list thread. cjl 04:15, 16 October 2008 (UTC). The proposed new keyboard is shown as well as the current keyboard. Kimquirk 01:46, 3 November 2008 (UTC)
Khmer keyboard layout proposal (new)
Khmer keyboard layout (current)
OLPC section of the XKB symbol file
A general description of how to change keyboard layouts is available here: Changing Keyboard Layouts
To use the Khmer layout along with the standard US layout, edit the /etc/sysconfig/keyboard file as follows:
The original contents of the file look like this:
XKBMODEL="olpc" XKBLAYOUT="us" XKBVARIANT="olpc"
Edit the file (eg with sudo gedit ...) so that it looks like this:
XKBMODEL="olpc" XKBLAYOUT="us,kh" XKBVARIANT="olpc2,olpc"
1. It is necessary to edit the file using sudo.
2. Do not edit the value of XKBMODEL which may be different to what is shown above.
Once you have edited and saved the file, restart the XO. Then, when using Sugar, to change the keyboard from US to Kh, press the "Multiply/Divide" key (far right, second row from bottom).
So if you are using the Write activity in Sugar, you can switch between the keyboard sets by pressing the "Multiply/Divide" key as you enter characters in the document.
Some keyboards do not have the "Multiply/Divide" key e.g. XO mechanical (non-membrane) keyboards and conventional USB keyboards. For these keyboards you can add an additional key combination to activate the toggle function.
If you edit the file as below, pressing both Shift keys will activate the toggle function.
XKBMODEL="olpc" XKBLAYOUT="us,kh" XKBVARIANT="olpc2,olpc" XKBOPTIONS="grp:shifts_toggle"
It may be convenient to use a script to set up dual keyboard operation when preparing a batch of XO laptops. The following snippet illustrates how this can be done:
echo " Set up the Khmer/English dual language keyboard" XKBMODEL=`cat /etc/sysconfig/keyboard | grep "XKBMODEL" ` mv /etc/sysconfig/keyboard /etc/sysconfig/keyboard.bak # Backup the file echo $XKBMODEL > /etc/sysconfig/keyboard echo 'XKBLAYOUT="us,kh"' >> /etc/sysconfig/keyboard echo 'XKBVARIANT="olpc2,olpc"' >> /etc/sysconfig/keyboard echo 'XKBOPTIONS="grp:shifts_toggle"' >> /etc/sysconfig/keyboard cp /etc/sysconfig/keyboard /etc/sysconfig/keyboard.new # Backup the file
NOTE: This section only applies for XO Software earlier than 13.2.7. It is not necessary to apply this workaround in 13.2.7 and higher versions.
For XO software prior to 13.2.7, in dual-language laptops, the toggle key(s) does not work in Gnome by default, because Gnome takes control of keyboard settings, overriding OLPC OS.
To use with Gnome desktop, see a workaround.
Workaround is to open Gnome Terminal, paste this command, and then restart Gnome"
gsettings set org.gnome.settings-daemon.plugins.keyboard active false
Note: It is important to enter the above command without using sudo.
- On XO laptops with mechanical keyboard, or external USB keyboards, there is no "Multiply/Divide" key, but another key combination can be set up as described above.
- On XO laptops running software versions earlier than 13.2.7 it is necessary to apply a workaround to get the keyboard toggle to work in Gnome.