OLPC Khmer Keyboard: Difference between revisions

From OLPC
Jump to navigation Jump to search
Line 20: Line 20:
// Contact Walter@laptop.org
// Contact Walter@laptop.org


// keys: `1234567890-=\
key <TLDE> { [ guillemotleft, guillemotright, 0x100200d, voidsymbol ] };
key <AE01> { [ 0x10017e1, 0x100200c, exclam, 0x10017f1 ] };
key <AE01> { [ 0x10017e1, 0x100200c, exclam, 0x10017f1 ] };
key <AE02> { [ 0x10017e2, 0x10017d7, at, 0x10017f2 ] };
key <AE03> { [ 0x10017e3, 0x10017d1, quotedbl, 0x10017f3 ] };
key <AE03> { [ 0x10017e3, 0x10017d1, quotedbl, 0x10017f3 ] };
key <AE04> { [ 0x10017e4, 0x10017db, dollar, 0x10017f4 ] };
key <AE05> { [ 0x10017e5, EuroSign, percent, 0x10017f5 ] };
key <AE05> { [ 0x10017e5, EuroSign, percent, 0x10017f5 ] };
key <AE06> { [ 0x10017e6, 0x10017cd, 0x10017d9, 0x10017f6 ] };
key <AE07> { [ 0x10017e7, 0x10017d0, 0x10017da, 0x10017f7 ] };
key <AE08> { [ 0x10017e8, 0x10017cf, asterisk, 0x10017f8 ] };
key <AE09> { [ 0x10017e9, parenleft, braceleft, 0x10017f9 ] };
key <AE10> { [ 0x10017e0, parenright, braceright, 0x10017f0 ] };
key <AE11> { [ 0x10017a5, 0x10017cc, x, voidsymbol ] };
key <AE12> { [ 0x10017b2, 0x10017ce, equal, voidsymbol ] };
key <AE12> { [ 0x10017b2, 0x10017ce, equal, voidsymbol ] };
key <BKSL> { [ 0x10017ae, 0x10017ad, backslash, voidsymbol ] };

// keys: qwertyuiop[]
key <AD01> { [ 0x1001786, 0x1001788, 0x10017dc, 0x10019e0 ] };
key <AD02> { [ 0x10017b9, 0x10017ba, 0x10017dd, 0x10019e1 ] };
key <AD03> { [ 0x10017c1, 0x10017c2, 0x10017af, 0x10019e2 ] };
key <AD04> { [ 0x100179a, 0x10017ac, 0x10017ab, 0x10019e3 ] };
key <AD05> { [ 0x100178f, 0x1001791, 0x10017a8, 0x10019e4 ] };
key <AD06> { [ 0x1001799, 0x10017bd, voidsymbol, 0x10019e5 ] };
key <AD07> { [ 0x10017bb, 0x10017bc, voidsymbol, 0x10019e6 ] };
key <AD08> { [ 0x10017b7, 0x10017b8, 0x10017a6, 0x10019e7 ] };
key <AD09> { [ 0x10017c4, 0x10017c5, 0x10017b1, 0x10019e8 ] };
key <AD10> { [ 0x1001795, 0x1001797, 0x10017b0, 0x10019e9 ] };
key <AD11> { [ 0x10017c0, 0x10017bf, 0x10017a9, 0x10019ea ] };
key <AD12> { [ 0x10017aa, 0x10017a7, 0x10017b3, 0x10019eb ] };

// keys: asdfghjkl;'
key <AC01> { [ 0x10017b6, 0x10017ff, voidsymbol, 0x10019ec ] }; // U17B6+U17C6
key <AC02> { [ 0x100179f, 0x10017c3, voidsymbol, 0x10019ed ] };
key <AC03> { [ 0x100178a, 0x100178c, voidsymbol, 0x10019ee ] };
key <AC04> { [ 0x1001790, 0x1001792, voidsymbol, 0x10019ef ] };
key <AC05> { [ 0x1001784, 0x10017a2, voidsymbol, 0x10019f0 ] };
key <AC06> { [ 0x10017a0, 0x10017c7, voidsymbol, 0x10019f1 ] };
key <AC07> { [ 0x10017d2, 0x1001789, voidsymbol, 0x10019f2 ] };
key <AC08> { [ 0x1001780, 0x1001782, 0x100179d, 0x10019f3 ] };
key <AC09> { [ 0x100179b, 0x10017a1, voidsymbol, 0x10019f4 ] };
key <AC10> { [ 0x10017be, 0x10017c8, 0x10017d6, 0x10019f5 ] };
key <AC10> { [ 0x10017be, 0x10017c8, 0x10017d6, 0x10019f5 ] };
key <AC11> { [ 0x10017cb, 0x10017c9, 0x10017c8, 0x10019f6 ] };

// keys: zxcvbnm,./
key <AB01> { [ 0x100178b, 0x100178d, voidsymbol, 0x10019f7 ] };
key <AB02> { [ 0x1001781, 0x1001783, voidsymbol, 0x10019f8 ] };
key <AB03> { [ 0x1001785, 0x1001787, voidsymbol, 0x10019f9 ] };
key <AB04> { [ 0x100179c, 0x10017fd, voidsymbol, 0x10019fa ] }; // U17C1+U17C7
key <AB05> { [ 0x1001794, 0x1001796, 0x100179e, 0x10019fb ] };
key <AB06> { [ 0x1001793, 0x100178e, voidsymbol, 0x10019fc ] };
key <AB07> { [ 0x1001798, 0x10017c6, voidsymbol, 0x10019fd ] };
key <AB08> { [ 0x10017fc, 0x10017fb, comma, 0x10019fe ] }; // U17BB+U17C6; U17BB+U17C7
key <AB09> { [ 0x10017d4, 0x10017d5, period, 0x10019ff ] };
key <AB10> { [ 0x10017ca, question, slash, voidsymbol ] };

key <SPCE> { [ 0x100200b, space, 0x10000a0, voidsymbol ] };


//language key
//language key

Revision as of 17:59, 25 January 2008

  This page is monitored by the OLPC team.


OLPC keyboard layouts

Instructions for setting up keyboard switching in Terminal are on the Customizing NAND images page. On bilingual XOs, the multiplication/division key is replaced with a keyboard switching key.

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

Starting with the XO-1.5 HS ("High School") edition, the XO laptop has a traditional (non-membrane) keyboard available as an option: English (US International); Spanish (Latin America);

Blank Keyboard Artwork

Artwork defining the inner dimensions of the membrane keyboard is available here: keyboard-blank.svg



Khmer keyboard layout

Khmer (first draft)

OLPC section of the XKB symbol file

To use the XKB Khmer layout along with US layout, you may need to edit /etc/X11/xorg.conf. This will make "us" the first and "kh" a second layout:

XkbLayout "us,kh"
XkbVariant "olpc2,olpc"
partial default alphanumeric_keys
xkb_symbols "olpc" {
    include "kh(basic)"
    
// Contact Walter@laptop.org

    key <AE01> { [ 0x10017e1,		0x100200c,		exclam, 	0x10017f1	] };
    key <AE03> { [ 0x10017e3,		0x10017d1,		quotedbl, 	0x10017f3	] };
    key <AE05> { [ 0x10017e5,		EuroSign,		percent, 	0x10017f5	] };
    key <AE12> { [ 0x10017b2,		0x10017ce,		equal, 	 	voidsymbol	] };
    key <AC10> { [ 0x10017be,		0x10017c8,		0x10017d6, 	0x10019f5	] };

   //language key
   key <I219> { [ ISO_Next_Group,  ISO_Prev_Group ] };
};